Я был воюем с этим всю ночь, и это действительно расстраивает. Я получил веб-страницу, чтобы показать, наконец, но по какой-то причине она не работает, что означает, что она возвращает меня на мою страницу с ошибкой и гласит: «Не удалось аутентифицировать пользователя, попробуйте снова!». Я не могу понять это, так как это отлично работает на моей локальной машине, на которой установлены визуальные студии.Asp.net WebPage с Windows Authentication aganst Active Directory
Пожалуйста, если кто-то может потратить время, чтобы помочь с этим, я сражался с ним весь день. БЛАГОДАРЯ
Class.cs
public bool IsUserInSetup(string groupName, UserPrincipal user)
{
PrincipalContext context = new PrincipalContext(ContextType.Domain, "DomainName");
GroupPrincipal group = GroupPrincipal.FindByIdentity(context, "GroupName");
if (user.IsMemberOf(group))
{
return true;
}
return false;
}
Authentication.aspx.cs
if (!IsPostBack)
{
if (Request.IsAuthenticated)
{
if (gv.IsUserInSetup("GroupName", user))
{
Session["userValue"] = UserPrincipal.Current;
Response.Redirect("Default.aspx");
}
else
{
lblInfo.Text = "Could Not Authenticate User Please Try Again!";
lblInfo.Text += "<br><b>Name: </b>" + User.Identity.Name;
lblInfo.Text += "<br><b>Authenticated With: </b>";
lblInfo.Text += User.Identity.AuthenticationType;
}
Спасибо за ответ. Я создал пул приложений и использовал учетные данные Domain \ Admin и все тот же рассказ. Я заметил, что если у меня нет олицетворения, я получаю следующую ошибку? Невозможно передать объект типа «System.DirectoryServices.AccountManagement.GroupPrincipal» для ввода «System.DirectoryServices.AccountManagement.UserPrincipal». – Henry