xsd-schema-validator не может проверить samlify xml - PullRequest
0 голосов
/ 18 сентября 2018

Я пытаюсь использовать samlify (библиотека узла js) для выполнения аутентификации sso.У меня есть и файлы idp и sp xml.В моем коде node.js после вызова функции

sp.parseLoginResponse(idp, 'post', req) .then((parseResult) => {}); samlify запускает дочерний процесс, используя xsd-schema-validator для проверки xml схемы.

Эта команда проверки не выполнена, и я понятия не имею, почему.Вот команда полностью и ответ

[root@kartik-centos-test server]# java -Dfile.encoding=UTF-8 -classpath /root/angular_project/Hub-MAC-Dashboard/server/node_modules/xsd-schema-validator:/root/angular_project/Hub-MAC-Dashboard/server/node_modules/samlify/build/schemas support.XMLValidator -stdin -schema=/root/angular_project/Hub-MAC-Dashboard/server/node_modules/samlify/build/schemas/saml-schema-protocol-2.0.xsd 

[fatal] src-resolve: Cannot resolve the name 'ds:Signature' to a(n) 'element declaration' component.
result=FATAL_ERROR

Не удается проверить файл схемы, предоставленный samlify.Я подозреваю, что это потому, что Java-программа не может выполнить http-запросы, потому что она находится за корпоративным прокси.Может ли это быть причиной?

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 25 сентября 2018

Проблема, как ни странно, заключалась в том, что виртуальный ящик, в котором я тестировал, использовал прокси для подключения к Интернету.Где-то внизу в коде библиотеки xsd есть класс java, который используется для проверки xml, и он выполняет http-вызов.Мне пришлось зайти в код javascript библиотеки xsd и изменить команду java, которая порождена для использования прокси-сервера https, чтобы команда была выполнена успешно.

Можно подумать, что библиотека java просто выдаст ошибку http... но не думаюВсегда проверяйте, подключены ли вы к интернету.

...