Nous avons récemment publié la dernière version de notre application intranet, qui utilise désormais l'authentification Windows en standard, et doit être capable de se connecter à un serveur SQL configuré avec les informations d'identification du domaine de l'utilisateur final. Dernièrement, nous avons constaté que sur certains déploiements de clients, bien que IIS puisse voir les informations d'identification de domaine de l'utilisateur, il ne les transmet pas au serveur SQL. Au lieu de cela, il semble utiliser le compte anonyme. Ceci en dépit de suivre toutes les étapes correctes (en changeant la sécurité du répertoire pour Win Auth, en mettant à jour Web.Config pour utiliser Win Auth et en refusant les utilisateurs anonymes). J'ai fait beaucoup de lectures qui suggèrent que nous devons nous assurer que Kerberos est en place, mais je ne suis pas sûr (a) à quel point cela est-il valide (c'est-à-dire est-ce vraiment une exigence?) Ou (b) comment faire pour enquêter si c'est mis en place ou comment s'y prendre?Comment configurer IIS afin que les informations d'identification de domaine de l'utilisateur soient utilisées lors de la connexion au serveur SQL?
Nous sommes dans une situation où nous devons pouvoir configurer IIS ou l'application pour qu'elle fonctionne pour le client, ou expliquer au client exactement ce qu'il doit faire pour que cela fonctionne.
Nous avons réussi à reproduire cela sur notre réseau interne avec un serveur SQL de test et la boîte IIS d'un développeur, donc nous allons déranger avec cette configuration et voir si nous pouvons trouver une solution, mais si quelqu'un a des idées brillantes, je serais très heureux de les entendre!
Je voudrais particulièrement entendre les pensées ou les conseils des gens en termes de Kerberos. Est-ce une exigence, et si c'est le cas, comment expliquer aux clients comment cela doit être configuré? Oh, et j'ai aussi vu quelques personnes parler de la «règle classique d'un seul bond» pour les domaines et le passage des identifiants des fenêtres, mais je ne sais pas quel poids cela représente réellement?
Merci!
Matt
Merci pour ce lien. On dirait une bonne lecture! J'y passerai demain. –
D'excellents articles .. merci! On dirait que nous sommes confrontés à trois solutions possibles: dire au client de déployer Kerberos, exécuter l'application Web en utilisant un compte de domaine fixe pour se connecter à SQL Server ou héberger l'application Web avec SQL Server. –
Pour tous ceux qui étaient intéressés, c'était le problème du «double saut», et notre solution finale était dans le composant logiciel enfichable MMC Utilisateurs et ordinateurs Active Directory. Nous avons examiné les propriétés du compte d'ordinateur (pour le serveur IIS) et l'onglet "Délégation" permettait la délégation à des services spécifiques. Nous avons ajouté le serveur SQL qui héberge les bases de données d'application à la liste des machines acceptant la délégation. Service MSSQLSvc. Cela garantit que le serveur IIS est approuvé uniquement pour transmettre des informations d'identification pour SQL Server et pas pour d'autres services. –