WebSSO Spring + Angular redirect-uri
WebSSO Spring + Angular redirect-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问题是如何解析 UI 的重定向 uri?
有 2 个应用程序:back(spring) 和 front(angular)
它与 redirect-uri 一起工作:{baseUrl}/login/oauth2/code/{registrationId}
但它仅适用于 REST-API 和后端应用程序。
事实上,我想打开 UI 页面 - 如果用户未被授权 - 使用返回重定向到 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()))
认证成功后需要定义redirect-uri到UI。它与 sso 配置中的重定向 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问题是如何解析 UI 的重定向 uri? 有 2 个应用程序:back(spring) 和 front(angular)
它与 redirect-uri 一起工作:{baseUrl}/login/oauth2/code/{registrationId}
但它仅适用于 REST-API 和后端应用程序。
事实上,我想打开 UI 页面 - 如果用户未被授权 - 使用返回重定向到 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()))
认证成功后需要定义redirect-uri到UI。它与 sso 配置中的重定向 uri 不同。