zuul + okta +springboot - OKTA 重定向 uri 问题 404

Posted

技术标签:

【中文标题】zuul + okta +springboot - OKTA 重定向 uri 问题 404【英文标题】:zuul + okta +springboot - OKTA redirect uri issue 404 【发布时间】:2018-12-28 12:25:01 【问题描述】:

我在 8080 端口上运行 Zuul 服务器,在 8082 上运行服务,并且我在 OKTA 中配置了以下内容

Login redirect URIs 
http://localhost:8080/api/service-A/port    
Logout redirect URIs 
Login initiated by App Only
Initiate login URI http://localhost:8080/login

如果我在不启用 @EnableOAuth2Sso 的情况下访问它,则重定向 uri 有效 我也试过只做 localhost:8080 (但那没有映射)

我没有 UI,所以我指望 OKTA 的默认表单。

我还在我的 zuul app.prop 中添加了所有这些属性

security.oauth2.client.client-id=yourClientId
security.oauth2.client.client-secret=yourClientSecret
security.oauth2.client.access-token-uri=https://dev-187722.oktapreview.com/oauth2/default/v1/token
security.oauth2.client.user-authorization-uri=https://dev-187722.oktapreview.com/oauth2/default/v1/authorize
security.oauth2.client.scope=openid profile email
security.oauth2.resource.user-info-uri=https://dev-187722.oktapreview.com/oauth2/default/v1/userinfo
security.oauth2.resource.token-info-uri=https://dev-187722.oktapreview.com/oauth2/default/v1/introspect
security.oauth2.resource.prefer-token-info=false

但我仍然不断收到此错误消息:“redirect_uri”参数必须是客户端应用设置中列入白名单的绝对 URI。 我什至没有得到登录表单,只有 404

localhost:8080 被设置为可信来源(如下所示)

SpringOauth 144 http://localhost:8080/

资料来源:我非常遵循本指南https://developer.okta.com/blog/2018/02/13/secure-spring-microservices-with-oauth

【问题讨论】:

当您被重定向到 Okta 并看到无效的重定向 URI 错误时,它发送的 URI 将显示在您的地址栏中。此值需要在您的 Okta 应用程序中列入白名单。我猜这个值是localhost:8080/login。 【参考方案1】:

    能否请您仔细检查一下您的边缘服务 (zuul) 是否在 http://localhost:8080/ 上运行?

    在 okta 控制台上,您应该有: 登录重定向 URI:http://localhost:8080/login

希望对你有帮助

【讨论】:

以上是关于zuul + okta +springboot - OKTA 重定向 uri 问题 404的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot + 云 | Zuul 代理 |附加 URL/重写

身份验证后回调时出现 404 错误(Spring Boot + Angular + Okta)

覆盖/绕过 Spring Boot 默认登录页面到 okta OIDC 登录页面

Spring Boot + 云 | Zuul 代理 | 404 错误

Spring Boot + 云 | Zuul 代理 |集成测试

使用 Spring boot、Eureka、Zuul、Spring Oauth 创建 OAuth 安全微服务的问题