2016-01-27 2 views
0

Я разрабатываю схему аутентификации/авторизации на основе Oauth 2.0, используя Fiware Enablers: Keyrock IdM, Wilma Proxy и AuthZforce authorizaton server.Проблемы с созданием домена на сервере Authentication AuthZforce

Я установил и сконфигурировал Keyrock и Wilma, и они отлично работают вместе.

На той же машине я установил AuthZForce. Java OpenJDK 1.7.0_91 и Tomcat 7 установлены на Ubuntu 14.04 на этом компьютере.

Я следовал инструкциям по установке и установил AuthZforce с Gdebi, но я не могу на самом деле создать домен с завитком команды можно найти в руководстве:

локон --verbose --trace-ASCII - - запрос POST \ - header "Content-Type: application/xml; charset = UTF-8" --data '<? xml version = "1.0" encoding = "UTF-8"? > < Таз: domainProperties XMLNS: Таз = "http://authzforce.github.io/rest-api-model/xmlns/authz/4" > < имя > MyDomain </имя > < описание > Это мой домен. </описание > </Таз: domainProperties > ' --header "Accept: приложение/XML" HTTP: // $ {MYSERVERHOST}: $ {MYPORT}/authzforce-Ce/домены

я получил следующее ошибка:

<? xml version = "1.0" encoding = "UTF-8" standalone = "yes"? > < ns2: ошибка xmlns: ns2 = "http://authzforce.github.io/rest-api-model/xmlns/authz/4" xmlns: ns3 = "http://www.w3.org/2005/Atom msgstr " "> <message> Недопустимые параметры: cvc-complex-type.2.4.a: Недопустимый контент, начинающийся с " name ". Недействительный контент был найден, начиная с элемента " имя ". Ожидается элемент " {description, rootPolicyRef} ". </сообщение > </ns2: ошибка >

Это, как представляется, ошибка проверки XML. Я попытался получить доступ к API AuthZforce, но link в руководстве программиста дает ошибку 404.

Может кто подскажет, как исправить эту проблему?

Заранее спасибо. ~

ответ

0

Я понял, что мой первоначальный ответ был отклонен, поэтому я постараюсь предоставить лучший вариант. В то же время появились новые выпуски AuthzForce, поэтому я приведу здесь рабочий пример для последней версии AuthzForce v5.4.1. (Пожалуйста, обновите в случае необходимости). Для простоты, давайте напишем полезную нагрузку XML в файл domainProperties.xml и использовать его в локон команде:

$ cat domainProperties.xml 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<domainProperties xmlns="http://authzforce.github.io/rest-api-model/xmlns/authz/5" externalId="myOwnId"> 
    <description>This is my domain</description> 
</domainProperties> 

ExternalId не является обязательным, и вы можете установить его на любой псевдоним, который требуется использовать для нового домена.

Завиток команда идет:

$ curl --verbose --request "POST" --header "Content-Type: application/xml;charset=UTF-8" --data @domainProperties.xml --header "Accept: application/xml" http://localhost:8080/authzforce-ce/domains 

Заменить localhost если имя хоста и 8080 с порта сервера, если это необходимо. Ответ должен дать ссылку на новый домен ресурса с новым доменным ID:

... 
< HTTP/1.1 200 OK 
< Server: Authorization System 
< Date: Mon, 04 Aug 2016 13:00:12 GMT 
< Content-Type: application/xml 
< Transfer-Encoding: chunked 
< 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<link xmlns="http://www.w3.org/2005/Atom" rel="item" href="h_D23LsDEeWFwqVFFMDLTQ" title="h_D23LsDEeWFwqVFFMDLTQ"/> 

Больше информации в installation guide.

Вы также можете использовать ExternalId, чтобы получить обратно информацию домена:

$ curl --verbose --request "GET" --header "Accept: application/xml" http://localhost:8080/authzforce-ce/domains?externalId=myOwnId 

Больше информации в user guide.

Смежные вопросы