問題タブ [advapi32]

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 に答える
712 参照

c# - PowerShellでWindows API AuditEnumerateCategories関数を使用するには?

PowerShell を使用して、現在の高度なセキュリティ監査ポリシーを取得したいと考えています。を使用できますauditpol.exeが、その出力は OS 言語ごとに異なるため、解析が困難です。

設定は、のREG_NONE 値に格納されますHKEY_Local_Machine\Security\Policy\PolAdtEvその非公式の構造テーブルを使用して、値を解析しようとすることができました。ただし、私が好むアプローチは、.NET の Windows API 関数を使用することAuditQuerySystemPolicyですadvapi32.dll

この記事の大きな助けを借りて、次のように PowerShell で Type を作成しました。

タイプは正常に作成されましたが、すべての監査カテゴリの GUID を取得する最初のステップで失敗しました。さまざまなタイプの問題があります。私は例えば

AuditEnumerateCategoriesまた、定義出力を からIntPtrに変更しようとしましたGuid。の出力ppAuditCategoriesArray

GUID 構造体へのポインターの配列と構造体自体の両方を含む単一のバッファーへのポインター。

残念ながら、PowerShell でそれを処理する方法がわかりません。

0 投票する
0 に答える
540 参照

kerberos - Java と Kerberos を使用して別のユーザーとしてプロセスを作成する

私は Java サーバー アプリケーション (サービスとして Windows で実行) に取り組んでおり、次のシナリオを実現したいと考えています。

  • ユーザーがサーバーに POST 要求を発行します。ユーザーは Kerberos (SPNEGO、エンタープライズ環境の SSO) で認証されます。
  • サービスは新しい Java プロセスを作成します。プロセスは、サービス ユーザー (偽装/委任) ではなく、認証されたユーザーとして実行する必要があります。
  • 新しいプロセスは、ユーザーのセキュリティ コンテキストで実行する必要があります。Kerberos 認証を必要とする他のリモート システム (ファイル共有、他の Web サービスなど) と通信する必要があります。

実用的な概念実証:

  • Kerberos 認証用のWaffleを使用した Spring Boot アプリケーション。
  • 認証済みユーザーの新しいプロセスを作成します。JNAと Windows ネイティブ関数CreateProcessAsUserを使用します。
  • プロセスは、認証されたユーザーとして作成されます。これは、Process Explorer ユーティリティで確認できます。

不足しているものと機能していないもの:

  • プロセスは他の Kerberos チケットを要求できません (たとえば、InitializeSecurityContext() を呼び出して)。
  • プロセスはネットワーク共有にアクセスできません。
  • このプロセスは、Kerberos 認証を必要とする他の Web サービスと通信できません。

私の質問:

  • コードに何が欠けているか、または何が間違っている可能性がありますか?
  • 私が達成したいことを実装することさえ可能ですか?

サーバー - 認証 (短縮、Waffle から抽出):

サーバー - CreateProcessAsUser: