問題タブ [directoryentry]
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# - なりすましとDirectoryEntry
ユーザーアカウントを正常に偽装していますが、偽装されたアカウントを使用してADにバインドし、をプルダウンすることができませんDirectoryEntry。
以下のコード出力:
- なりすましの前に私は:DOMAIN \ user
- なりすましの後、私は次のようになります:DOMAIN \ admin
- エラー:C:\ Users \ user \ ADSI_Impersonation \ bin \ Debug \ ADSI_Impersonation.exe samaccountname:
私の問題は次のように見えます:
ASP.NETでSystem.DirectoryServices名前空間を使用する方法
プライマリトークンを取得しています。リモートコンピューターで偽装されたトークンを使用するには、委任を使用する必要があることを理解しています。アカウントに「アカウントは機密情報であり、委任できません」というフラグがチェックされていないことを確認しました。また、ローカルグループポリシーとドメイングループポリシーが委任を妨げていないことも確認しました。
コンピューターの構成\Windowsの設定\セキュリティの設定\ローカルポリシー\ユーザー権利の割り当て\
私は何が欠けていますか?
ありがとう!
c# - 空の文字列またはnullをDirectoryEntryコンストラクターに渡す
今日、奇妙なことに気づきました。私が取り組んでいるプロジェクトには、次のようなコードがあります。
これはクラスライブラリの一部です。別のプロジェクトからこのライブラリを使用したとき、アプリケーション/サイトの.configファイルでこれらのキーを定義するのを忘れましたが、それでも機能しました。
私の疑惑は、このコンストラクターはPrincipalContextコンストラクターhttp://msdn.microsoft.com/en-us/library/bb298328.aspxと同様に機能し、nullを渡すと現在のユーザーの資格情報を使用するということですが、MSDNのドキュメントではそれについては何も言わないでください。
誰かがこれを確認または拒否できますか?
c# - WinNT は常にローカル ユーザーを True に認証します (NativeObject は決して失敗しません)
以下のコードは、WinNT に対してユーザーを認証する方法であると読みました。ローカル マシンでユーザーを認証しようとしています。何らかの理由でroot.NativeObject、ローカルユーザーのパスワードまたはユーザー名が正しいかどうかに関係なく、例外をスローすることはありません。何が問題なのですか?
directoryentry - Windows ユーザーを検証する方法は?
次のコードを使用して、会社のドメインに属するユーザーを検証します。これはうまくいきます。
実際の問題は、ラップトップ (MYINSTANCE) で LDAP インスタンスを作成する必要があり、プログラムでユーザーを作成する必要があることです。ユーザーを作成し、それらを反復処理できます。
そのようなユーザーの場合、ユーザー名とパスワードを検証できません。
私が行った変更は以下の通りです。
c# - DirectoryEntryObjectSecuritynull参照例外
このコードでWindowsアカウントを有効にしようとしましたが、この行のObjectSecurity(Null参照)に例外がありますActiveDirectorySecurity userSecurity = user.ObjectSecurity;
.net - DirectoryEntry文字列はリテラルとして機能しますが、フォーマットされた文字列としては機能しませんか?
さて、Active DirectoryからDirectoryUserオブジェクトにユーザーをプルしようとしています。このように入力すると、正常に機能します。
しかし、値を変更できるようにする必要があるので、フォーマットされた文字列を試しました。
しかし、これは「サーバー上にそのようなオブジェクトはありません」というエラーを引き起こします
コンストラクターは文字列を受け取り、文字通りに書いたときに使用していたのとまったく同じ値を渡しますが、なぜ一方の方法で機能し、もう一方の方法では機能しないのですか?!
編集:ビルドされた文字列がハードコードされた文字列と同じであるかどうかを確認するために、いくつかの異なる方法でダブルチェックしたことを追加したかっただけです。デバッガーを実行し、user.path値をチェックして、文字列がまったく同じように格納されていることを確認しました。これまでのところすべてが同じですが、一方は機能し、もう一方は機能しません。
更新:文字列変数に直接ハードコーディングすると、次のことに気付きました。
これは問題なく機能します。これは、文字列「type」に問題がある可能性があると私に信じさせます。構築された文字列をプリミティブ文字列(または値型と参照型)に戻すことができれば、うまくいくでしょうか?しかし、私にはそれを行う方法がわかりません。何か案は?
更新:セマンティックテストを実行しました。これが私が使用したコードです:
そしてここに結果がありました:

binding - DirectoryEntry が突然機能しなくなったのはなぜですか?
私は DirectoryServices 名前空間で DirectoryEntry オブジェクトを操作してきましたが、非常にうまくいっています。しかし、LDAP クラスの 1 つに変更を加えたところ、突然、プログラムの 32 ビット ビルドで動作しなくなりました。
ADSI オブジェクトを適切な型に変換するために、ActiveDs 参照をプロジェクトにインポートしました。しかし、それ以来、私のプロジェクトは DirectoryEntry オブジェクトのインスタンスを作成するときに正しくバインドできません。
LDAP および WinNT プロバイダーとバインドしようとしましたが、役に立ちませんでした。バインドしようとすると、0x80005000 の不明なエラーが表示されます。
この単純なコードでさえ失敗します (バインドは重要な部分であるため、これは驚くべきことではありません!)
これが突然機能しなくなる理由はありますか? 参照によって、32 ビット マシン上の既存の DLL が破損する可能性はありますか?
注:
VBS スクリプトを使用して LDAP のクエリも試みましたが、ハングするだけです。
Daro の提案の結果:
コード
ログ ファイルは次を生成します:
System.DirectoryServices.DirectoryEntry.Bind
(Boolean throwIfFail)
で
不明なエラー (0x80005000
) C:\Users\#username#\Documents\Visual Studio 2010\Projects\#project#\Test\Program.cs:20 行目
c# - すべてのコンピューターのリストを取得し、ADにログインしているかどうかも確認します
AD内のすべてのコンピューターと、現在ログインしているコンピューターを受信しようとしています。「lastLogonStamp」をチェックしてこれを実行しようとしましたが、サーバーが8日前にADにログインしたため、間違った値が返されます。 。サーバーを再起動しても同じように表示されます。ここで別の質問からコードを取得しました:
c# - DirectorySearcher から 6000 件中 2000 件のレコードを取得する
を使用して 1000 またはすべての結果を取得するコードがありますDirectorySearcher。
しかし、6000 件の結果のうち 2000 件だけを取得したいのです。
ここに6000の結果を得るコードがありますが、私は2000だけが欲しいです
助けてください。
ありがとう
私の調査によると、PageSize = 0 では 1000 の結果のみが得られ、Pagesize = 1000 ではすべての結果が得られます。
これを機能させるには、さらに助けが必要です。
c# - C# でのローカル グループへのローカル ユーザーの追加
ユーザーを完全に追加できますが、ローカル グループに追加できません。このエラーが発生します:-
メンバーが存在しないため、ローカル グループにメンバーを追加または削除できませんでした。
これが私が使用しているコードです。私が間違っていることは何ですか?それは単なるローカル マシンです。私には間違いなくそれを実行する権利があり、グループは間違いなく存在します。