我正在尝试使用Angular作为前端来保护Spring Boot应用程序。因此,我使用keycloak-angular和keycloak-js。
在你能找到的每一个例子中,总是假设所有的路由都应该是安全的。我现在有一些可以公开访问的路由:
{
path: 'dashboard',
component: DashboardComponent,
resolve: {
data: LayoutResolver
}
},
{
path: 'add-news',
component: AddNewsComponent,
canActivate: [AdminAuthGuard]
},我的APP_INITIALIZER看起来像这样:
function initializeKeycloak(keycloak: KeycloakService) {
return () =>
keycloak.init({
config: {
url: environment.keycloakUrl,
realm: environment.keycloakRealm,
clientId: environment.keycloakClientId,
},
initOptions: {
onLoad: 'check-sso',
silentCheckSsoRedirectUri:
window.location.origin + '/assets/silent-check-sso.html',
}
});
}一切都很好。但是,当我在仪表板上重新加载页面时,我似乎失去了身份验证。keycloakService.isLoggedIn总是返回"false“。我做错了什么?在这种情况下,我希望仍然可以登录。
发布于 2021-11-25 13:00:32
我重新安装了keycloak服务器,一切都正常了。我一定是在重命名领域和客户端时破坏了它。
https://stackoverflow.com/questions/70110152
复制相似问题