小编Gra*_*are的帖子

UserPrincipal.FindByIdentity(System.DirectoryServices.AccountManagement)中的.NET 4.5错误

在.NET 4.5下测试我们的.NET 4.0应用程序时,我们遇到了FindByIdentity方法的问题UserPrincipal.以下代码在.NET 4.0运行时运行时有效,但在.NET 4.5下失败:

[Test]
public void TestIsAccountLockedOut()
{
    const string activeDirectoryServer = "MyActiveDirectoryServer";
    const string activeDirectoryLogin = "MyADAccount@MyDomain";
    const string activeDirectoryPassword = "MyADAccountPassword";
    const string userAccountToTest = "TestUser@MyDomain";
    const string userPasswordToTest = "WRONGPASSWORD";

    var principalContext = new PrincipalContext(ContextType.Domain, activeDirectoryServer, activeDirectoryLogin, activeDirectoryPassword);

    var isAccountLockedOut = false;
    var isAuthenticated = principalContext.ValidateCredentials(userAccountToTest, userPasswordToTest, principalContext.Options);
    if (!isAuthenticated)
    {
        // System.DirectoryServices.AccountManagement.PrincipalOperationException : Information about the domain could not be retrieved (1355).
        using (var user = UserPrincipal.FindByIdentity(principalContext, IdentityType.UserPrincipalName, userAccountToTest))
        { …
Run Code Online (Sandbox Code Playgroud)

.net c# authentication active-directory .net-4.5

29
推荐指数
2
解决办法
2万
查看次数

标签 统计

.net ×1

.net-4.5 ×1

active-directory ×1

authentication ×1

c# ×1