/ / Active Directoryのアクセス許可とグループのように動作するC#ライブラリはありますか? - c#、アクセス権、アクティブディレクトリ、認証、ユーザグループ

Active Directoryのパーミッションとグループのように動作するC#ライブラリはありますか? - c#、アクセス権、アクティブディレクトリ、認証、ユーザグループ

私はアクセス許可とグループがActive Directoryで動作する方法が気に入っていますが、私はADでアプリケーションを実際に結びつけるつもりはありません。

そこには既存のライブラリがありますか?ADには同じ種類の機能が含まれていますか?特に、グループの作成、ユーザーのグループへの割り当て、グループへのアクセス許可の追加、ユーザーまたはグループの適用されたアクセス許可の表示は可能ですか?

回答:

回答№1は1

ActiveDirectoryMembershipProviderクラスはMembershipProviderを継承します。

つまり、アプリケーション自体をADに結びつける必要はなく、MembershipProviderモデルに結び付ける必要があります。このモデルは.netで使用され、組み込みのコントロールやクラスでうまく機能します。

ここにサンプルがあります

//Any of these will work
ActiveDirectoryMembershipProvider provider = new ActiveDirectoryMembershipProvider();
//SqlMembershipProvider provider = new SqlMembershipProvider();
//MyCustomMemebershipProvider provider = new MyCustomMemebershipProvider();

MembershipProvider membershipProvider = provider;

if (membershipProvider.ValidateUser("username", "password"))
{
MembershipUser user = membershipProvider.GetUser("username", true);
}
else
{
//Do something
}

私はこのモデルの専門家ではありませんが、MembershipProviderをサブクラス化し、IPrincipal、IIdentityなどを実装することができます。これは本当に柔軟性があり、一貫したアーキテクチャを維持します。


回答№2の場合は0

無料のLDAPサーバーを設定できます。 OpenLDAP、および使用 ディレクトリサービス それにアクセスするには、 ツール LDAPディレクトリを管理します。いくつかの設定が必要です!

標準ディレクトリを使用する利点膨大な管理ツールと数多くのアプリケーションをサポートする機能を備えています。欠点は、ディレクトリの管理とクエリの学習にあります。あなたがADを使いたくない特別な理由はありますか?あなたがWindowsで働いているなら、私は強く反対意見を強く推奨します。


回答№3の場合は0

ADがあまりにも重すぎる場合、軽いADであるADAMを使用することができます。これはADSI Editで提供されるADSI Editで構成できます。がここにあります 良い文書 提供され、c設定に関する質問 SO。

さらに、同じ種類の.NET APIを使用してADAMをブラウズすることもできます(System.DirectoryServices.AccountManagement 例えば)。


回答№4の場合は0

あなたが使うことができるかもしれない MicrosoftのAzMan認可マネージャー Active Directoryのラッパーとして。

アクセス許可を求めるためにプログラムするAPIが含まれています

ロールを定義し、権限をマップしてxmlファイルに格納できるgui(azman.msc)があります。

Active Directoryに対して構成できます。


回答№5の場合は0

2つのこと。

最初 :

あなたが持っているディレクトリと対話したいのであればLDAP APIのトップにプログラムすることができます。限り、私はundestand ADSIは、LDAPの上で動作しているが、それはActive Directoryのように独立していないようです。私はノベルが モノプロジェクト もっと編集する LDAPの上にある独立したC#ライブラリ.

二番目:

パーミッション、アクセスコントロールリスト(ACL)非標準機能です。アクセス許可がActive Directoryで実装される方法は、方法とは異なります それらはSunのe-Directory(特殊属性)に実装されています。たとえば、OpenLDAPのアクセス許可は一種のアクセスフィルタに組み込まれています。

私は間違っている(希望する)かもしれませんが、Directoriesの許可を連合する図書館について聞いたことはありません。


答え№6の場合は0

私が読んだ1つの図書館は Rhinoのセキュリティ。それは認証だけでなく、ビジネス操作の承認を処理するように見え、おそらく一見価値があります。私は実際にそれを実装していないので、私はそれがどのくらいうまく動作するのか分かりません。


回答№7は0

Windows Serverの一部であるAuthorization Manager(AzMan)を使用することができます。 Enterprize Library 5には.NETからの統合のために、使用できるクラスライブラリタイプが用意されています。