0

我们有两个 Intranet 应用程序都托管在同一个域上,都托管在 IIS 上,都使用 Windows 身份验证,但托管在不同的 windows 2008 服务器上。

我的目标是让 ASP.net Web 应用程序 A 调用服务 B。我还希望 A 将登录用户的身份验证信息传递给 B。

一件事,我想避免 Kerberos 委托,因为设置它的麻烦和安全问题。

你能推荐我实现目标的方法吗?

4

1 回答 1

1

我不确定您认为如何在不进行委托的情况下从 A安全地验证 B。

如果您不担心安全地执行此操作,您可以在请求中传递用户名并在远端模拟。

或者,您可以将经过身份验证的信息填充到令牌(JWT、SAML 等)中,使用共享密钥对其进行签名,并将其包含在请求中。然后服务器 B 可以使用共享密钥对其进行验证,并根据需要进行模拟。这确实意味着您需要确保两个服务器都知道秘密,并弄清楚如何生成令牌。

不过,委派是明智的选择。您不必弄清楚模拟或建立一种方法来铸造和验证令牌。它主要是配置驱动的。

于 2019-01-24T16:59:51.147 回答