【发布时间】:2018-09-23 22:30:54
【问题描述】:
我创建了一个 jhipster 单体应用程序(jhipster 版本 v4.14.2)。我还使用以下设置创建了一个 Okta Web 应用程序:
- 登录重定向 URI -> http://localhost:8080/login
- 启动登录 URI -> http://localhost:8080
- 为管理员和用户创建组,在默认授权服务器中设置声明,并将它们分配给应用程序和我的用户
我更新了我的 jhipster 应用程序的 application.yaml 如下:
security:
basic:
enabled: false
oauth2:
client:
access-token-uri: https://dev-779125.oktapreview.com/oauth2/default/v1/token
user-authorization-uri: https://dev-779125.oktapreview.com/oauth2/default/v1/authorize
client-id: ????????
client-secret: ????????
client-authentication-scheme: form
scope: openid profile email
resource:
filter-order: 3
user-info-uri: https://dev-779125.oktapreview.com/oauth2/default/v1/userinfo
token-info-uri: https://dev-779125.oktapreview.com/oauth2/default/v1/introspect
prefer-token-info: false
当我启动应用程序然后我尝试登录时。我确实获得了 Okta 登录页面,但是在添加我的凭据后,我总是收到以下错误:
Your request cannot be processed
Sorry, an error has occurred.
Status: Unauthorized (Unauthorized)
Message: Authentication Failed: Could not obtain access token
我按照 jhipster 安全文档中的说明进行操作,但无法正常工作。知道为什么我仍然会收到未经授权的错误吗?
【问题讨论】:
-
如果我查看 okta 授权服务器,我看不到 userinfo 端点。这正常吗?我找不到任何使它可用。
-
检查事项:1) 您的 Okta 租户中是否有默认授权服务器,以及 2) 您的服务器日志中是否有任何错误?
-
您应该能够在您的 OIDC 元数据中看到 userinfo 端点,该端点位于 dev-779125.oktapreview.com/oauth2/default/.well-known/…
-
感谢我查看的是授权服务器元数据而不是 openid-configuration 元数据。