問題タブ [kerberos-delegation]

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.

0 投票する
1 に答える
806 参照

c# - C#での「msDS-AllowedToActOnBehalfOfOtherIdentity」ADプロパティへのアクセス/解析

管理する必要があります(管理Kerberos Resource Based DelegationするC#方が簡単なのはわかっていPowershellますが、それは要件ではありません)。user/computer/serviceアカウントの属性は ですmsDS-AllowedToActOnBehalfOfOtherIdentityが、これは ではCOM処理できないオブジェクトのようですC#:

この後、a他のプロパティとは異なり、私ができることはあまりないようです。それは何らかのCOMオブジェクトであり、そこにあるアカウントを取得する必要があります。Powershellこのプロパティはオブジェクトを返すと報告されておりSystem.DirectoryServices.ActiveDirectorySecurity、このクラスには AD などに格納されているバイナリ形式をデコードするための便利なメソッドがあります。しかし、これは のプロパティ呼び出しからの戻り値の型ではないようですC#

0 投票する
1 に答える
4291 参照

c# - アプリ プールがドメイン アカウントで実行されている場合、IIS の偽装が機能しない

Windows イントラネット環境で ASP.net アプリケーションを実行しています。現在ログインしているユーザーとして特定のデータベース更新を実行する必要があります。

IIS/サーバー情報:

  • IIS バージョン 10
  • Windows サーバー 2019
  • ASP.net Web フォーム アプリケーション
  • .NET 4.7
  • Windows 認証が有効
  • 偽装匿名認証が無効になっています
  • アプリ プールは統合されたパイプラインを使用します
  • アプリ プールは、必要に応じて他のリソースにアクセスする権利を持つ、その ID の ドメイン サービス アカウントで実行されます。

その他の詳細:

  • すべてのデータベース接続文字列は、統合セキュリティ = true のように設定されています
  • Active Directory で、Web サーバーと SQL サーバー間の制約付き委任を構成し、MSSQLSvc : 1433およびMSSQLSvc (ポートなし)を許可する
  • ドメイン サービス アカウントは、Web サーバーのローカル管理者グループのメンバーです (テスト目的のみ)。

現在ログインしているユーザーとして実行する必要があるデータベースの更新を実行すると、次のように偽装します。

これは例外をスローします - System.Data.SqlClient.SqlException: Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'

AppPoolIdentity (デフォルトのアプリ プール ID)を使用するようにアプリ プール ID を変更すると 、偽装は正しく機能します。

この偽装がAppPoolIdentityでは機能するのに、ドメイン サービス アカウントでは機能しないのはなぜですか?