angular - WebSSO Spring + Angular 重定向-uri
问题描述
有spring-web(安全应用程序)。
这是配置:
security:
oauth2:
client:
registration:
*auth:
provider: *auth
client-name: Login with the Identity Server
client-id: ${app.auth-client.client-id}
client-secret: ${app.auth-client.client-secret}
authorization-grant-type: authorization_code
redirect-uri: ?????
provider:
*auth:
token-uri: ${app.auth-client.server-url}/${app.auth-client.realm}/${app.auth-client.server-url-postfix}/token
authorization-uri: ${app.auth-client.server-url}/${app.auth-client.realm}/${app.auth-client.server-url-postfix}/auth
user-info-uri: ${app.auth-client.server-url}/${app.auth-client.realm}/${app.auth-client.server-url-postfix}/userinfo
jwk-set-uri: ${app.auth-client.server-url}/${app.auth-client.realm}/${app.auth-client.server-url-postfix}/certs
主要问题是如何为 UI 解析重定向 uri?有 2 种应用:后部(弹簧)和前部(角度)
它适用于重定向 uri:{baseUrl}/login/oauth2/code/{registrationId}
但它仅适用于 REST-API 和后端应用程序。
事实上,我想打开 UI 页面 - 如果用户没有被 auntificated - 使用 back 重定向到 auth-server。登录后 - 使用凭据重定向回(redirect-ui ???)到 UI 页面。
经典方式。但它不适用于单独的 UI。对于测试,我使用 keycloak。
解决方案
有诀窍:
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
...
@Override
protected void configure(HttpSecurity http) throws Exception {
http
...
.oauth2Login()
.successHandler((request, response, authentication) -> response.sendRedirect(clientProperties.getRedirectUriSuccess()))
验证成功后需要定义重定向uri到UI。它与 sso 配置中的重定向 uri 不同。
推荐阅读
- .net-core - 在 MySQL 上调用存储过程时,EF Core 上的转换错误(使用 Pomelo)
- php - PhpStorm 中的 Xdebug
- c# - 如何添加新数据并保留旧的现有数据
- postgresql - 如何将 postgresql 与 graphql 连接起来
- python - 如何使用openpyxl在正常模式下保存excel工作簿?
- java - 从 SVN 中删除文档时出现问题
- c++ - CMake 为 boost 标头选择了错误的库
- sql - sql server 对执行计划不采取最严格的条件
- layout - 如何将 pageView 添加到我的颤振 main.dart 代码中?
- java - Oreo - 闪烁通知 LED