J'essaie de sécuriser un service WCF en utilisant des comptes Windows. Le service devrait fonctionner sur de nombreux systèmes avec des langues différentes. Comment puis-je définir une PrincipalPermission avec des noms de rôles indépendants de la langue?Comment définir un nom de rôle PrincipalPermission multilingue?
J'ai trouvé des solutions de contournement moche comme celui-ci. Je ne pense pas que ce soit une bonne solution, est-il possible de rendre ce langage indépendant? Est-il possible d'utiliser le compte SID au lieu d'une chaîne?
Non cela ne fonctionne pas, la logique principale est dans la méthode WindowsPrincipal.IsInRole (chaîne). J'ai regardé avec un réflecteur et n'ai trouvé aucune "traduction" des noms de rôle. essayez-le vous-même: WindowsPrincipal principal = new WindowsPrincipal (WindowsIdentity.GetCurrent()); bool anglais = principal.IsInRole ("Builtin \\ Administrators"); bool german = principal.IsInRole ("Vordefiniert \\ Administratoren"); J'étais aussi surpris que vous l'êtes, peut-être qu'il me manque quelque chose ... –
Je suis étonné et abasourdi ..... sowas deppertes auch! Die Spinnen, die Microsofties :-) –
@marc_s: D'accord, dans le passé, cela m'a également surpris - lors de la synchronisation LDAP et l'écriture des installateurs. –