3

Je cherche le meilleur moyen de fournir l'autorisation, l'authentification et l'audit aux services Web. J'utiliserai une appliance de passerelle de service Web déployée sur la zone démilitarisée et une instance LDAP en tant que magasin d'utilisateurs derrière le pare-feu. Comment devrait-il être construit?Quel est le moyen le plus élégant et efficace pour fournir AAA aux services Web utilisant une passerelle WS et LDAP?

Vive

KA

Mise à jour Comme indiqué dans une réponse ci-dessous, LDAP n'est pas idéal pour l'audit. Nous examinons maintenant un appel à notre système CRM pour cette fonction car nous pouvons vérifier l'utilisation par le client.

Répondre

4

L'authentification est assez standard. Lorsque vous essayez de vérifier un nom d'utilisateur et un mot de passe, commencez par vous lier en tant qu'utilisateur avec le privilège de voir tous les utilisateurs et recherchez une entrée avec le nom d'utilisateur fourni dans le champ approprié (probablement "uid"). Une fois que vous avez trouvé l'entrée, obtenez son nom distinctif et essayez de lier cette entrée en utilisant le mot de passe fourni. L'autorisation est généralement gérée avec des "groupes dynamiques", où vous avez un attribut à valeurs multiples dans chaque objet utilisateur indiquant quels sont les privilèges de l'utilisateur ou utilisant des "groupes statiques" où vous avez des objets d'une classe ressemblant à " groupOfNames "et placez les DN de tous les membres dans l'attribut" member ".

Faites de l'audit comme bon vous semble. LDAP n'est probablement pas le meilleur moyen de sauvegarder les données d'audit. Vous pouvez le coller dans une base de données si vous le souhaitez, ou simplement utiliser syslog.

+0

Cool, super info. Merci! Comment sont traités les appels ultérieurs? Grâce à un jeton? –

+0

Cela dépend du programmeur. Vous pouvez revenir à LDAP à chaque fois (si vous avez des volumes LDAP/serveurs puissants suffisants), ou vous pouvez mettre en cache les résultats. Vous pouvez mettre en cache dans des sessions ou vous pouvez avoir un cache d'autorisations global. Le mieux dépendra du reste de votre application. – Glomek