La compréhension de la WCF de l'Authentification Windows

J'ai un service à l'authentification windows. En utilisant le code suivant, je peux obtenir les Fenêtres de l'Identité de l'utilisateur (en utilisant le client utilise le service.

String currentUser = OperationContext.Current.ServiceSecurityContext.WindowsIdentity.Name;

La configuration du serveur est:

<binding name="messageSecurity">
<security mode="Message">
<message clientCredentialType="Windows"/>
</security>
</binding>

J'ai aussi lu que dans le serveur, c'est à l'aide de Kerberos pour que cela fonctionne.

Maintenant, j'essaie de comprendre son importance dans notre réseau d'entreprise. Dans le bureau, les utilisateurs se connectant à leurs postes de travail à l'aide de leurs informations d'identification active directory. Notre service est hébergé dans un serveur windows nommé “SERV1” .

  1. Est seulement les utilisateurs qui ont accès (login) pour “SERV1” peuvent accéder à ce service? Ou à tous les utilisateurs qui sont en mesure de vous connecter au réseau de bureau (de poursuivre des informations d'identification active directory) sera en mesure de consommer le service?

  2. Est-il un moyen de s'assurer que seuls les CIO a approuvé des demandes sera l'accès au service, en gardant le service windows authentifié?

  3. Est-ce à cocher authentification de se produire pour chaque opération de service d'appels ou uniquement pour le premier appel?

  4. Est-il possible que le service sera en mesure de connaître les informations d'identification windows de l'utilisateur?

Remarque: Ce que je comprends, c'est WindowsAuthentication peut être comparé à un fournisseur d'appartenances - fournissant un nom d'utilisateur et le mot de passe à partir d'un emplacement centralisé. Il peut être comparé à ASP.Net Fournisseur d'appartenances ou de l'Active Directory du Fournisseur d'appartenances.

Pour en savoir plus:

  1. ASP.NET Active Directory Fournisseur d'appartenances et SQL Profil Fournisseur

  2. wcf data contrats d'autorisation

  3. http://www.theserverside.net/tt/articles/showarticle.tss?id=ClaimsBasedSecurityModel

Voici un très joli post qui montre comment vous pouvez utiliser des Groupes d'ANNONCES afin de restreindre l'accès au service: stackoverflow.com/a/5136551/29407
Merci. J'espère que le lien est pour ma deuxième question. Pourriez-vous svp répondre à d'autres questions? Aussi (pour la question #2), je ne cherche pas à restreindre l'accès en fonction de leur rôle; mais le client.

OriginalL'auteur Lijo | 2012-03-06