問題タブ [userprincipal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ユーザー Sid の取得
私はサービスを書いていて、ログインしているユーザーの sid を取得しようとしていますが、何らかの理由で機能していません。{S-1-5-18} のみを返します。それでも、簡単なコンソール アプリケーションを作成すると、問題なく動作します。
私は2つの方法を試しました:
としても:
どちらも私のサービスに同じ影響を与えます。どちらも {S-1-5-18} のみを返します。ただし、コンソール アプリでは、どちらも完全なユーザー sid を返します。
何が原因でしょうか?
c# - UserPrincipal に読み込まれる Active Directory プロパティを追加できますか?
DirectorySearcher を使用して、AD で検索するときにロードできるプロパティを指定できます。
msDS-PrincipalNameプロパティの読み込みに興味があります。これは可能ですか?
c# - UserPrincipal からアカウント名を取得するにはどうすればよいですか?
Winforms アプリケーションの 1 つで Active Directory ログインを使用しています。オブジェクトを取得しましたUserPrincipal
が、このオブジェクトから適切なアカウント名を取得する方法がわかりません。アカウント名と同じ がありSamAccountName
ますが、これは古いバージョンの Windows 用であることが示されています。では、古い Windows システムでも新しい Windows システムでも、適切なアカウント名を取得するにはどうすればよいでしょうか。
これは、オブジェクトを取得するために使用するコードです
c# - UserPrincipal と WindowsIdentity を比較するにはどうすればよいですか?
ユーザーを Windows アカウントにバインドするときは、この投稿に従って UserPrincipal SamAccountName を使用します (バインドはデータベースに保存されます)。次に、ログインを行うときに、このバインドされたユーザー (データベースから) をログインしている Windows アカウントに対してチェックする必要があります。これは、WindowsIdentity オブジェクトを使用して行われます。
問題は、WindowsClient.Name が単に SamAccount ではなく Group\SamAccountName を示すことですか? グループを使用するのは良いことですが、UserPrincipal はこれを返さないようですか?
では、どのように一致させる必要がありますか?WindowsClient.Name の Group を削除するだけですか、それとも UserPrincipal に追加する方法はありますか?
vb.net - Active Directory 検索 (PrincipalSearcher) 末尾のワイルドカードが非常に遅い
ドメイン Active Directory 内を検索していますが、末尾にワイルドカードを使用すると非常に遅くなります。
これを効率的に行う良い方法はありますか?最後のワイルドカードはほぼ瞬時に機能します。
サンプルコードは次のとおりです。
助けてくれてありがとう。
c# - ユーザーがメンバーになっているすべての Active Directory グループを取得する
特定のユーザーがメンバーであるすべての Active Directory グループを取得する簡単な方法を探しています。 には 2 つの方法がありますがUserPrincipal
、どちらもこの要件に一致しません。
- GetGroups() : すべてのグループを返しますが、再帰的ではありません:
このメソッドは、プリンシパルが直接メンバーになっているグループのみを返します。再帰的な検索は実行されません。
- GetAuthorizationGroups() : 再帰的に動作しますが、セキュリティ グループのみを返します (配布グループは返しません)。
この関数は、セキュリティ グループであるグループのみを返します。配布グループは返されません。
残念ながら、GetAllGroups()
またはのようなものを見つけることができませんGetDistributionGroups()
。セキュリティ グループと配布グループを再帰的に取得する簡単な解決策はありますか?
c# - 新しく作成されたユーザーのレジストリ値の編集
次のような新しいローカル ユーザーを作成する .NET アプリケーションがあります。
次に、そのユーザーのいくつかのレジストリ値を設定します。そのためには、ユーザーの SID が必要です。
新しいサブキーを作成します。
ただし、CreateSubKey の呼び出しで、パラメーターが無効であることを示す IOException が発生します。これは、ユーザーが初めてログインするまで、そのユーザーのサブキーがまだ存在しないために発生します。新しいユーザーとしてログインする前に (管理者権限で) regedit を確認すると、HKEY_Users の下に SID が存在しないことがわかります。新しいユーザーとしてログインし、ログアウトして元のユーザーとして再度ログインし、regedit を更新すると、新しい SID が存在します。
私の質問は、まだログインしていないユーザーにサブキーを追加する方法はありますか? 新しいユーザーとしてログインし、プロセスの途中で元に戻す必要はありません。