Fiware pep-прокси и проблема связи IDM
Я хотел соединить pep-proxy с idm.. поэтому я следовал за установкой pep по этой ссылке.. https://github.com/ging/fiware-pep-proxy, собрав его из исходного кода. Это был файл конфигурации, который я должен был редактировать
// Credentials obtained when registering PEP Proxy in app_id in Account Portal
config.pep = {
app_id: '',
username: '',
password: '',
trusted_apps : []
}
я также хотел узнать, как я могу получить параметры app_id и trust_apps, и меня также смущает значение app_id, независимо от того, является ли это идентификатором клиента или нет.
Это была первая часть моей проблемы.
Когда я помещаю идентификатор клиента с идентификатором приложения и помещаю имя пользователя и пароль для pep-прокси, которые я получил, когда я зарегистрировал его на idm, я получил сообщение об ошибке keystone
Когда я отредактировал параметр хоста idm, добавив в начале "http", я не получил токен и получил сообщение "token undefined". Также, когда я редактировал имя пользователя и пароль, помещая учетные записи idm, каждый раз, когда я получал новый токен. Поэтому я хотел бы узнать, как лучше создать pep-прокси fiware и сделать так, чтобы он без проблем взаимодействовал с idm.
Затем я попытался следовать командам установки из файла Docker. При создании pep-прокси с этими командами я получил новый конфигурационный файл, который есть в fiware academia.
Этот файл конфигурации отличается от первого, над которым я работал. Когда я следовал инструкциям в этом видео https://www.youtube.com/watch?v=dtKsjGbJ7Xc&index=10&list=PLARS-yIy9nOoBIOJS05Rpkvu1pZiNTgPT и настроил имя пользователя и пароль, поместив те из pep-proxy, я получил эту ошибку.
При добавлении "http" перед параметром keystone следующим образом
config.keystone_host = 'http://cloud.lab.fiware.org';
я получил это сообщение
Но при вводе имени пользователя и пароля idm в конфигурации, как показано ниже
config.username = 'idm_user_mail;
config.password = 'password';
Я всегда получаю новый токен.
Теперь я хочу знать, как лучше настроить pep-прокси и idm для совместной работы, поскольку я все еще пытаюсь заставить их общаться должным образом.
РЕДАКТИРОВАТЬ: я развернул обе из последних версий pep-прокси и IDM из этих ссылок. https://github.com/ging/fiware-pep-proxy, https://github.com/ging/fiware-idm. Я также настроил pep-прокси следующим образом
```
// Set this var to undefined if you don't want the server to listen on HTTPS
config.https = {
enabled: false,
cert_file: 'cert/cert.crt',
key_file: 'cert/key.key',
port: 443
};
config.idm = {
host: 'localhost',
port: 3000,
ssl: false
}
config.app = {
host: 'www.google.com',
port: '80',
ssl: false // Use true if the app server listens in https
}
// Credentials obtained when registering PEP Proxy in app_id in Account Portal
config.pep = {
app_id: 'XXXXXXXXX',
username: 'XXXXXXXX',
password: 'XXXXXXXX,
trusted_apps : []
}
// in seconds
config.cache_time = 300;
```
и при запуске idm и pep-proxy я получаю токен, как показано в следующем журнале
и это журнал IDM
и когда я проверяю pep-прокси с idm, отправляя запрос с предоставленным токеном, я получаю пустой ответ от сервера следующим образом
это также логи pep-прокси после отправки запроса.
Изменить: Я думаю, теперь мой токен не был успешно создан, или я использую устаревший API, так как я использую Oauth2-клиент, упомянутый в fiware Academy, для генерации токена https://github.com/ging/oauth2-example-client?files=1
и токен успешно сгенерирован как показано
Когда я нажимаю кнопку "Получить информацию о пользователе", появляется та же ошибка, что и при попытке использовать этот токен в pep proxsy появляются в Oauth2-клиенте, и клиент останавливается. Я пытался использовать другой способ создания токена, и как использовать этот токен, я имею в виду последнюю и стабильную версию документа, которая описывает, как играть с idm, но не нашла его, поэтому я спрашиваю о том, как создать валидный токен, и если есть документ совместим с последней версией IDM, пожалуйста, укажите это извините за неудобства
Обновление: я следовал этому документу " https://www.slideshare.net/mobile/daltoncezane/integrating-fiware-orion-keyrock-and-wilma ", чтобы установить связь между IDM и pep прокси и, в частности, этот код для генерации токена из IDM отправить его с помощью почтальона
POST to "http://idm_ip:8000/oauth2/token"
Payload:
grant_type=password&username=YOUR_USERNAME&password=YOUR_PASSWORD&cli
ent_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET
но не может сгенерировать токен Это ответ почтальона
DOCTYPE html> Ошибка
SyntaxError: неожиданный токенв JSON в позиции 0
в JSON.parse (<аноним>)
в createStrictSyntaxError(/Home/ubuntu/fiware-idm/node_modules/body-parser/lib/types/json.js:157:10)
при разборе (/home/ubuntu/fiware-idm/node_modules/body-parser/lib/types/json.js:83:15)
по адресу /home/ubuntu/fiware-idm/node_modules/body-parser/lib/read.js:121:18
по адресу invokeCallback (/home/ubuntu/fiware-idm/node_modules/raw-body/index.js:224:16)
сделано (/home/ubuntu/fiware-idm/node_modules/raw-body/index.js:213:7)
на IncomingMessage.onEnd (/home/ubuntu/fiware-idm/node_modules/raw-body/index.js:273:7)
на emitNone (events.js:106:13)
на IncomingMessage.emit (events.js:208:7)
в endReadableNT (_stream_readable.js:1064:12)
в _combinedTickCallback (внутренняя / process / next_tick.js: 138: 11)
at process._tickCallback (internal / process / next_tick.js: 180: 9)
а это логи idm после отправки запроса
POST /oauth2/token 400 1.679 ms - 1164
SyntaxError: Unexpected token # in JSON at position 0
at JSON.parse (<anonymous>)
at createStrictSyntaxError (/home/ubuntu/fiware-idm/node_modules/body-par
ser/lib/types/json.js:157:10)
at parse (/home/ubuntu/fiware-idm/node_modules/body-parser/lib/types/json
.js:83:15)
at /home/ubuntu/fiware-idm/node_modules/body-parser/lib/read.js:121:18
at invokeCallback (/home/ubuntu/fiware-idm/node_modules/raw-body/index.js
:224:16)
at done (/home/ubuntu/fiware-idm/node_modules/raw-body/index.js:213:7)
at IncomingMessage.onEnd (/home/ubuntu/fiware-idm/node_modules/raw-body/i
ndex.js:273:7)
at emitNone (events.js:106:13)
at IncomingMessage.emit (events.js:208:7)
at endReadableNT (_stream_readable.js:1064:12)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickCallback (internal/process/next_tick.js:180:9)
надежда намного яснее и что есть решение