我使用Okta的API将Okta与我自己的IdP服务器相集成。Okta:无法通过API调用获取授权代码
我按照以下步骤执行授权码流:
在我自己的服务器上,使用
/api/v1/authn
端点得到sessionToken。使用sessionToken通过调用这个端点获得授权:
/oauth2/v1/authorize?client_id=" + clientId + "&sessionToken=" + sessionToken + "&response_type=code&response_mode=query&scope=openid&redirect_uri=" + redirectUrl + "&state=evanyang&nonce="
它应该返回的状态代码:302
并用含有重定向URL的Location
头还有code
值的响应。
但是,我不断收到状态代码为200
且没有Location
标题的回复,其中html正文称“您正在使用不支持的浏览器”。和“JavaScript在浏览器上被禁用”。
根据API文档:http://developer.okta.com/docs/api/resources/oidc.html#authentication-request,该sessionToken
参数足以做到这一点:An Okta one-time sessionToken. This allows an API-based user login flow (rather than Okta login UI).
我失去了通过API获取授权码任何额外的要求吗?请帮忙。
感谢提前:)