какова функция токена доступа в mobilefirst 8 - PullRequest
0 голосов
/ 12 сентября 2018

Сначала я ожидал, что токен доступа будет необходим при общении с ресурсом WL.

Ожидаемый поток :
1. WLAuthorizationManager.login(this.securityCheck ,{'username':username, 'password':password, rememberMe: true}).then(
2. WLAuthorizationManager.obtainAccessToken(this.securityCheck).then(
3. let resourceRequest = new WLResourceRequest('someURL', WLResourceRequest.GET)
resourceRequest.addHeader("Authorization", "Bearer " + accessToken);
4. resourceRequest.send().then(
где 1 = логин, 2 = получить токен доступа, 3 = добавить токен доступа в заголовок, 4 = ресурс доступа

Однако , я считаю, что без 2, 3 , я могу все еще получить доступ к ресурсу.
Меня беспокоит смысл значения obtainAccessToken и добавьте заголовок Authorization.

Есть ли токен, автоматически связанный с WLResourceRequest после login?
Есть ли другой способ войти без использования WLAuthorizationManager.login?
Если все в порядке, как сообщить серверу, что пользователь вошел в систему, используя WLAuthorizationManager.login?
Если вышеприведенное верно, после пользовательского входа можно получить токен доступа?

1 Ответ

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

Вот некоторые сведения об этих методах и их работе:

WLAuthorizatonManager.login (securityCheck, credentials) регистрирует указанную проверку безопасности.Этот метод не создает токен OAuth.

Подробнее о WLAuthorizatonManager.login (securityCheck, учетные данные) .

WLAuthorizationManager.obtainAccessToken (scope) возвращает токен OAuth, содержащий указанную область. Если область сопоставлена ​​с проверкой безопасности, она вызовет соответствующую задачу, которую клиент должен будет обработать для получения токена.Если receiveAccessToken (scope) вызывается после успешного вызова входа в систему (securitycheck) и если область сопоставлена ​​с той же проверкой безопасности, то вы не увидите проблем.Токен OAuth будет предоставлен.

Подробнее о receiveAccessToken () .

WLResourceRequest объект используется для отправки запроса любому защищенному илинезащищенный ресурс с использованием абсолютного или относительного URL.Объект WLResourceRequest автоматически обрабатывает протокол модели безопасности на основе OAuth MobileFirst и вызывает необходимые вызовы.

Подробная информация о WLResourceRequest .

Чтобы ответить на ваши вопросы:

  • Существует ли токен, автоматически привязанный к WLResourceRequest после входа в систему?

    Как упоминалось ранее, WLResourceRequest автоматически согласовывает токен OAuth с сервером MFP, содержащим область, защищающую конечную точку, к которой он обращается,Это может включать в себя несколько раундов согласования OAuth, а также вызывать обработчики вызовов для обработки вызовов, исходящих с сервера.Как только нужный токен получен, API автоматически добавляет токен в запрос в заголовке «Авторизация».

  • Есть ли другой способ входа без использования WLAuthorizationManager.login?

    Вместо WLAuthorizatonManager.login (securityCheck, учетные данные), если к защищенному ресурсу обращаются через WLResourceRequest илиесли WLAuthorizationManager.obtainAccessToken (scope) вызывается для области, сопоставленной с проверкой безопасности, это вызовет цикл ответа на вызов, который завершится идентификацией пользователя и токеном.

  • Если все в порядке, как сообщить серверу, что пользователь вошел в систему, например, с использованием WLAuthorizationManager.login (securityCheck, credentials)?

    Среда выполнения MFP позаботится об этом - независимо отесли идентификатор пользователя установлен с помощью WLAuthorizatonManager.login () или если WLResourceRequest / WLAuthorizationManager.obtainAccessToken (scope) запускает цикл ответа на вызов, который проходит через securitychecl.

  • Если вышеприведенное вернопосле пользовательского входа можно получить токен доступа?

    Не уверен, что вы подразумеваете под «пользовательским входом в систему», но вы всегда можете получить токен OAuth с помощью WLAuthorizationManager.obtainAccessToken (scope) или WLResourceRequest.Разница в том, что getAccessToken () получит вам токен для указанной вами области, а WLResourceRequest вызовет конечную точку, получив токен OAuth, автоматически охватывающий все необходимые области.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...