gpt4 book ai didi

c# - 如何从 Blazor 服务器端应用程序中的本地 Active Directory 实现身份验证?

转载 作者:行者123 更新时间:2023-12-04 13:34:26 25 4
gpt4 key购买 nike

我希望本地 Active Directory 中的所有人都能够登录到我们的 blazor 服务器端应用程序。在 MSDN 上,他们为我提供了各种身份验证选项。但这些都不是针对本地 Active Directory,只是针对 Azure 中的 Active Directory。
Windows 身份验证不是选项,因为我需要用户能够注销应用程序。有谁知道使用本地 Active Directory 进行身份验证的可靠方法?任何帮助表示赞赏。

最佳答案

先添加nutget包 System.DirectoryServices 然后在您的登录组件中

    @using System.DirectoryServices


<EditForm Model="@user" OnValidSubmit="@HandleValidSubmit">
<DataAnnotationsValidator />
<ValidationSummary />
<div class="row">
<div class="col-md-12">
<label>User Name :</label>
<InputText @bind-Value="user.UserName"></InputText>
</div>
<div class="col-md-12">
<label>Password</label>
<InputText @bind-Value="user.Password"></InputText>
</div>
<div class="col-md-12">
<button type="submit">Login</button>
</div>
</div>

</EditForm>

@code {

public UserData user { get; set; } = new UserData();
private void HandleValidSubmit()
{
DirectoryEntry entry = new DirectoryEntry();
entry = new DirectoryEntry("LDAP://Your Active directory IP");
entry.Username = user.UserName;
entry.Password = user.Password;

DirectorySearcher search = new DirectorySearcher(entry);
search.Filter = "(SAMAccountName=" + user.UserName + ")";

SearchResult result = search.FindOne();

if (result == null)
{
//return false;
}
else
{
// return true;
}


}

}

关于c# - 如何从 Blazor 服务器端应用程序中的本地 Active Directory 实现身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63057571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com