Nous commençons à concevoir toute une série de nouveaux services à créer (WCF, ADO.NET Data Services, éventuellement dans le nuage à un moment donné) et l'une des questions qui se posent est de savoir quel schéma d'authentification et d'autorisation utiliser - il y en a plusieurs !
Nous devons essentiellement être en mesure d'identifier les utilisateurs (personnes réelles et utilisateurs "virtuels" d'applications/services) sur une grande variété de protocoles - HTTP, HTTPS, TCP - et nous devons leur attribuer au moins un ensemble de rôles/permissions de voir certaines données et/ou d'effectuer certaines opérations.
Nous ne pouvons absolument pas nous contenter d'utiliser l'appartenance à un groupe Windows - nous avons beaucoup de consommateurs externes de nos services et nous ne voulons pas avoir à configurer un compte de domaine dans notre domaine interne pour chacun d'entre eux.
Il y a donc principalement trois options, je pense :
- Utilisation du système d'adhésion ASP.NET - créer des utilisateurs et leur attribuer des rôles
- utiliser AzMan (Authorization manager) qui semble être un système plus granulaire, plus mature, plus élaboré (avec des utilisateurs, des tâches, des groupes - trois niveaux, pas seulement utilisateur + rôles)
- Roulez nos propres
Tout d'abord, laquelle de ces trois options recommandez-vous ? Et pourquoi ?
Deuxièmement, y a-t-il d'autres options qui me manquent ?
Merci pour tous les conseils, les pointeurs, les opinions !
Marc
PS : en voyant les réponses jusqu'à présent, je suis étonné par le nombre de personnes qui ont voté pour l'option 3. J'aurais pensé que MS serait capable de concevoir quelque chose de réutilisable qui pourrait gérer toutes ces exigences.....