如何在体系结构上使用JBoss API为AngularJS应用程序提供kerberos支持?

How do I architecturally Kerberize an AngularJS application with a JBoss API

本文关键字:应用程序 AngularJS 支持 kerberos API JBoss 结构上      更新时间:2023-09-26

我有一个漂亮的AngularJS应用程序,它使用JBoss (WildFly 8) RESTful API来检索数据。要将其集成到我的企业环境中,需要Kerberos身份验证。我看到了大量的文档和示例,甚至还有一些来自内部Java开发人员的定制建议。此时,我的问题是,在体系结构中可以/应该在哪里进行Kerberization ?

是在进入AngularJS应用程序时吗?意思是除非票被批准否则不允许?

或者我是否挑战每个API调用?如果是这种情况,那么如何将客户机Kerberos票据信息传递给API调用呢?

如果我的问题听起来不连贯,或天真,它是。这是我第一次与Kerberos交互。

感谢您的帮助。

我在使用Kerberos认证的Apache web服务器上使用PHP REST API时遇到了相同的问题/挑战。

由于Angular是纯客户端,每个请求在Kerberos术语中都是以"你"的身份发出的,所以你不必发送票据。当请求发出时,您的浏览器已经发送了票据。

我在PHP API中创建了一个登录(或check logged-in) API端点,它在Angular的每次locationChange之前都会被调用。如果login操作返回false或什么都没有,你会被重定向到一个access_denied.html页面,它位于index.html (Angular)的旁边。

登录操作REST端点返回一些用户数据和权限,以便您可以进行授权。

在我的情况下(也仍在搜索),我也有一些API级别的授权。

由于我的实现涉及一个企业web应用程序,我将在明天添加一些代码示例;)

使用jboss api,这意味着使用Java代码而不是PHP和HTTPD,您可以直接在jboss中完成,例如:

https://github.com/dstraub/spnego-wildfly

我们就是这样做的,它很有魅力,有一些tomcat, jboss和wildfly的例子(不同)…如果你有什么问题就告诉我……java