Вопрос

Я разработчик SharePoint/MS и не слишком знаком с Livelink. В любом случае, я вижу, что у них есть сервис .NET WCF. Я пытаюсь выполнить аутентификацию, используя эту веб -службу, и, насколько я могу читать из документов API, это не должно быть слишком сложно.

Согласно документам, мне нужно первоначально автонить с пользователем администратора, и это работает нормально. Тогда я могу выдать себя за себя, используя в настоящее время зарегистрированные на пользователе.

Все работает нормально, пока я не доберусь до части ImpersonateUser, которая не стерла с очень общими «недостаточными разрешениями для выполнения этого действия». ошибка. Это проблема на стороне клиента? или ll сторона? Возможно, Kerberos не настраивает или вообще или вообще?

Herwith код:

 private string ImpersonateUser(string adminToken)
 {
                string userToken = string.Empty;

                llAuthentication.OTAuthentication fLLAuthentication = new llAuthentication.OTAuthentication();
                fLLAuthentication.AuthenticationToken = adminToken;

                fAuthServiceUser = new AuthenticationClient();
                fAuthServiceUser.Endpoint.Address = new EndpointAddress(this.ServiceRoot + "Authentication.svc");
                fAuthServiceUser.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;         

                userToken = fAuthServiceUser.ImpersonateUser(fLLAuthentication, WindowsIdentity.GetCurrent().Name.ToString());

                return userToken;
}
Это было полезно?

Решение

Это не имеет ничего общего с аутентификацией Windows. Это просто означает, что пользователь Livelink, которого вы изначально используете для входа в систему, не имеет права выдавать себя за других пользователей Livelink. Попросите своего администратора Livelink предоставить это право (я не знаю точного прямо вне рук, извините)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top