spring - Angular 2 和 Spring Kerberos

标签 spring angular spring-security kerberos

是否可以在 Angular 2 应用程序中使用 Kerberos?我们正在使用 Spring 托管我们的 REST 服务,并使用 Kerberos 保护 Angular 2 资源。我们想要添加 Angular 色并定义 Angular2 应用程序中的哪些功能可用于某些 Angular 色。关于如何执行此操作的信息似乎很少,因为大多数人似乎已经使用 JWT 或 OAuth。

是否可以使用 Kerberos 进行初始身份验证,然后生成发送回浏览器的 JWT?

目前我正在考虑设置一个 REST 端点/user,它返回有关当前登录用户的所有信息,包括他/她的权限。在 Angular 中,我可以读取这些权限并相应地操作 UI 和路由。来自服务器的数据已经受到 Kerberos 和 Spring 的保护。所以如果用户仍然可以改变他们的本地 Angular 来访问一些 protected 路由,他们将看不到任何数据。

最佳答案

你说的完全正确。您可能希望通过后端处理身份验证,无论是 Kerberos、OAuth 还是其他任何方式。成功登录后,后端将返回一个元数据响应,允许 UI 适本地配置自己。由于后端是 protected 资源所在的位置,因此 UI 并不需要真正受到“保护”,而更需要“动态配置”以适合给定用户。

你必须决定你想怎么做,以及你想在哪里写你的大部分逻辑。例如,后端可以返回像 Angular 色或体验标识符这样简单的东西(例如管理员、用户、访客)。从那里,UI 将知道应该/可以执行哪些事件,哪些资源可用等。例如,UI 将知道 guest 不能添加新用户,但是,因为 guest 先生可能会好奇,最重要的事情是后端确实不允许他修改用户帐户。

关于spring - Angular 2 和 Spring Kerberos,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42111908/

相关文章:

java - Spring REST 中的 SSE 实现

java - spring boot Eureka微服务发现和注册在docker中失败

css - Angular 2 组件标签破坏了布局样式

angular - Jasmine 测试中的模板解析错误,但不是实际的应用程序

angular - 异常 : Uncaught (in promise): Error: Cannot find module 'app/home/home.module'

java - 如何扩展 Spring Web 服务?

java - Spring Security - 访问被拒绝(用户不是匿名的)spring-security-core-4.0.3.RELEASE

tomcat - 在 spring security (3.0.x) 中指定变量上下文路径

java - 如何在 Spring security 中编辑定时注销

java - 在 Spring 中将请求参数/路径变量映射到 GET 请求中的 Dto