J'utilise Windows Identity Framework pour l'authentification dans mon application Web déployée sur Azure. Quand je lance l'application localement, je peux utiliser PrincipalContext pour voir si l'utilisateur est dans un groupe:Déterminez si un utilisateur connecté est membre d'un groupe AD, dans une application Web déployée sur Azure
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "DOMAIN");
// find a user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, username);
// find the group in question
GroupPrincipal group = GroupPrincipal.FindByIdentity(ctx, "GROUP-NAME");
if (user != null)
{
// check if user is member of that group
return user.IsMemberOf(group);
}
Cela fonctionne localement, mais ne fonctionne pas dans l'application déployée à Azure. Je ne suis pas sûr de savoir comment vérifier cette information maintenant. J'ai vu que le protocole LDAP n'est pas pris en charge dans Azure, c'est pourquoi cela ne fonctionne pas, mais je ne suis pas sûr de la bonne façon d'y parvenir maintenant. J'ai lu un peu à propos des réclamations de groupe, des rôles d'application et de l'API Azure Graph, mais elles semblent soit trop lourdes, soit pas la direction que je devrais prendre. De l'aide?