我想知道如何实现Keycloak保护的Angular应用程序,这种方式只能保护一些资源.
例如.:
>未经授权的用户访问http://localhost:8000/#/public – >用户不是重定向
>未经授权的用户访问http://localhost:8000/#/private – > user是redirrect to keycloak登录页面
最佳答案 您可以使用Angular ngRouter或uiRouter执行此操作.这两个都在其路由/状态定义中具有解析功能.
每次点击URL时,如果路径安全,您可以使用令牌验证后端(Keycloak),并相应地路由用户.
您可以使用拦截器为每个请求添加身份验证令牌等
$httpProvider.interceptors.push('authInterceptor');
This是使用Angular和JWT的Auth的一个很好的教程,并且可以为任何auth机制扩展概念,无论是oAuth还是Keycloak