部署时的Active Directory身份验证方案?

时间:2011-11-01 15:22:43

标签: c# asp.net active-directory

我有一个应该部署在客户端的Intranet Web应用程序,我不知道客户端的用户和角色。现在我能够在我的本地vs2008的开发环境中与Active Directory通信system.I能够在我的开发环境中对特定用户进行身份验证。

我在理解实际部署方案如何与Active目录一起工作时我很困惑。我确实有sqlserver DB的经验,超级用户可以在其中添加用户然后为他们分配角色。(这就是我的应用程序如何工作)

但在实时场景中,部署后如何进行活动目录身份验证,因为我没有访问客户端位置来部署Intranet应用程序。我完全不知道活动目录中的用户或他们的角色或组?

是否有可以处理的一般情况,以便我可以实现活动目录方案?

1 个答案:

答案 0 :(得分:2)

看到这是一个Intranet应用程序,您应该使用Windows身份验证。 在托管应用程序的IIS中,应将Windows身份验证设置为启用,IIS将使用活动目录对用户进行身份验证。

调用此代码

IPrincipal credentials = (IPrincipal)HttpContext.Current.User;
bool isAuthenticated = false;
if (credentials != null)
{
    WindowsIdentity identity = (WindowsIdentity)credentials.Identity;
    isAuthenticated = identity.IsAuthenticated;
}
if (isAuthenticated != null)
{ //do what needs to be done }

当您需要对用户进行身份验证时,他将看到一个窗口日志,他可以在其中输入他的活动目录控制帐户凭据。

祝你好运