0

私のasp.net Webサイトでは、web.configでActiveDirectoryRoleProviderを使用しています。サイト内の (グループ名、グループの説明など) Active Directory ユーザー グループのプロパティを取得したいと考えています。web.config を使用してこれを解決できる方法はありますか?

どんな助けでも大歓迎です。

ありがとう !!

4

1 に答える 1

0

「web.config の設定でこの情報を取得できるかどうかはわかりませんが、System.DirectoryServices.AccountManagement 名前空間からこの情報を取得できます。(ユーザーごとに探している場合)

ドメイン名を web.config の appsettings に保存して、次のようにすることができます...

private static PrincipalContext _ctx = new PrincipalContext(ContextType.Domain, System.Configuration.ConfigurationManager.AppSettings["DomainName"]);

  public List<string> UserGroups(string userName)
  {
    List<string> ret = new List<string>();
    using (UserPrincipal user = UserPrincipal.FindByIdentity(_ctx, userName))
    {
      if (user != null)
      {
        foreach (Principal p in user.GetAuthorizationGroups())
        { 
          ret.Add(p.Name);
        }
      }
    }
    return ret;
  }

上記は、ユーザーが属するグループのリストを提供します。さらに深く掘り下げてより多くの情報を取得できますが、それがあなたが達成しようとしていることだと思います.

于 2013-06-12T14:47:09.310 に答える