ユーザー名とパスワードを使用してsessionTokenを取得できました。しかし、その後、AngularJSのPOSTコールを使用してセッションを作成します。角度(全ウェブアプリ)はAWS S3でホストされます。oktaでSessionTokenを使用してセッションを作成できませんPOST /セッションAPIコール
var session_data = { 'sessionToken' : My_session_Token};
$http({
method: 'POST',
url: 'https://myorg.okta.com/api/v1/sessions',
data: session_data,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
}
}).then(function(response) {
console.log(response);
});
私は取得していますエラーが
XMLHttpRequest cannot load https://myorg.okta.com/api/v1/sessions. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://s3.amazonaws.com' is therefore not allowed access.
である私はすでにCORSがOktaの原点ヘッダだけでなく、S3バケットを許可する追加されました。私は
curl -v -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"sessionToken": "my_session_Token"
}' "https://myorg.okta.com/api/v1/sessions"
初めて端子を介して、次のやってみてください
はsessionTokenの唯一の私は、エラー
{"errorCode":"E0000004","errorSummary":"Authentication failed","errorLink":"E0000004","errorId":"oaeI-KKSO-iRGSR1gmyUjBS8g","errorCauses":[]}MAC-S01
次取得1回の使用であるので、私は、
{"errorCode":"E0000005","errorSummary":"Invalid session","errorLink":"E0000005","errorId":"oaefADOnPONTDidUZYyrVc5rQ","errorCauses":[]}MAC-S014568:~
秒の時間を取得します
問題はCORSヘッダー(A私はすでに原点を追加しています)。 また、私のアプリケーションは角度があり、apiトークンを公開するのは危険なので、SSWS {api_TOKEN}を使用することはできません。 ヘルプは非常に高く評価されます
実際に私はクッキーを設定しようとしているが、していないです現在のユーザーIDとユーザーの役割を取得します。これはPOST http https://myorg.okta.com/api/v1/sessionsのレスポンスで取得します。 SSWS APIトークンを公開せずにユーザーIDと役割を取得する他の方法はありません –
Cookieを設定したら、myorg.okta.com/api/v1/users/meでGETリクエストを作成して現在のユーザーIDを取得できます。ただし、CORSをサポートしていないため、myorg.okta.com/users/me/rolesを呼び出すことはできません。 http://developer.okta.com/docs/api/resources/roles.html#list-roles-assigned-to-userにCORSタグがありません – kevlened
ありがとうKevlened私もCORSエラーが発生しています私のsessionTokenを投稿する....私たち自身のサーバー側ではできないことは奇妙に思えます。 – AKMorris