1

私たちのアプリケーションでは、基本的に次のような「Create Session with Credentials」(非推奨とマークされています) を使用しています。

POST {{url}}/api/v1/sessions

本体付き:

{
"username": "{{username}}",
"password": "{{password}}"
}

これは、ユーザーが別のページにアクセスするたびに Validate Session 呼び出しで使用する ID を返します。

GET {{url}}/api/v1/sessions/{{sessionId}}

これは以前は機能していましたが、およそ 2015 年 12 月 15 日頃に機能しなくなりました。

今、私は次のようなエラーを受け取ります:

{
"errorCode": "E0000006",
"errorSummary": "You do not have permission to perform the requested action",
"errorLink": "E0000006",
"errorId": "oaee2frg7mCRGyp3TE9tgE0Gg",
"errorCauses": []
}

当初は MFA に関連していると考えていましたが、管理者が MFA を必要とする AD グループから私を削除しましたが、まだ問題が発生しています。

そのため、クレデンシャルでセッションを正常に作成します (パスワードが間違っている場合は失敗します) が、セッションの検証は失敗します。これを POSTMAN でテストしています。

何が変わったのですか?これを間違って使用していませんか?

4

1 に答える 1

2

I'm not able to reproduce the error.

That said, we are moving away from using /sessions for authentication (hence the deprecation as you have mentioned). You should use /authn (http://developer.okta.com/docs/api/resources/authn.html#authentication-operations) to authenticate the user with username/password. You won't get a session created right away like before with /sessions. Instead, you will receive a session token which you can then use to create a session with /sessions (http://developer.okta.com/docs/api/resources/sessions.html#create-session-with-session-token)

The good thing about this new flow (besides a better use of /authn and /sessions) is that you do not need an API key for this. Only a valid set of creds would get you a one-time and short-live session token - which is then immediately used to create the session.

于 2015-12-29T02:01:18.313 に答える