Служба WCF с проверкой подлинности Active Directory - PullRequest
1 голос
/ 23 июня 2009

Я пишу службу WCF, которая разрешает доступ к операциям на основе группы пользователей AD. Если вошедший в систему пользователь является частью groupA, разрешите ему сделать operationA, но не operationB и так далее и так далее. Теперь для этого я должен передать NetworkCredentials на сервис, как

factory.Credentials.Windows.AllowedImpersonationLevel = 
                     TokenImpersonationLevel.Identification;
factory.Credentials.Windows.AllowNtlm = true;
factory.Credentials.Windows.ClientCredential.username = "username";
factory.Credentials.Windows.ClientCredential.password = "pwd";
factory.Credentials.Windows.ClientCredential.domain = "mycompany.com";

Я хочу, чтобы пользователю не нужно было вводить свои учетные данные для вызова службы. Это должно занять от Thread.CurrentPrincipal. Может ли кто-нибудь помочь мне в этом вопросе о том, как передать сетевые учетные данные.

1 Ответ

2 голосов
/ 23 июня 2009

Почему бы вам просто не указать режим безопасности, который будет "интегрированным в Windows", для вашей привязки? Это значение по умолчанию для привязок net.Tcp и wsHttp - учетные данные Windows текущего пользователя, вошедшего в систему, будут отправлены на сервер по проводам.

Нет необходимости явно устанавливать эти учетные данные снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...