3

API の NetUserAdd および NetUserSetGroups を使用して、ユーザー アカウントを追加し、それをグループに関連付けてコンピューターに関連付けていました。System.DirectoryServicesしばらくして、名前空間とDirectoryEntryオブジェクトを使用して同じこと (ユーザーを追加し、ユーザーをグループに関連付ける) を実行できる例を見つけました。

次に、その新しいアカウントにポリシーを追加する必要がありますが、同様の問題に直面しています。LsaOpenPolicyおよびAPI を使用しLsaAddAccountRightsて および アカウントにポリシーを追加できますが、.NET オブジェクトおよびメソッドを使用したいと考えています。

私の質問は、ユーザー アカウント ポリシー設定を追加および/または変更するための .NET フレームワークにオブジェクト メソッドがありますか? もしそうなら、それらのオブジェクトまたはメソッドの名前は何ですか?

また、使用例をいただければ幸いです。

具体的には、"SeServiceLogonRight" (サービスとしてのログインとも呼ばれる) を新しいユーザー アカウントに追加しようとしています。

4

1 に答える 1

3

いいえ、現在の .net アセンブリがこれらのメソッドを実装しているとは思いません。これらは、Fx 2.0、3.0、および 3.5 アセンブリで DllImportAttribute と名前 /Lsa.+/ を持つ唯一のメソッドです。

[mscorlib] Microsoft.Win32.Win32Native.LsaNtStatusToWinError Microsoft.Win32.Win32Native.LsaDeregisterLogonProcess Microsoft.Win32.Win32Native.LsaClose Microsoft.Win32.Win32Native.LsaFreeReturnBuffer Microsoft.Win32.Win32Native.LsaLookupSid Microsoft.Win32.Win32Native.LsaFreeMemory Microsoft.Win32.Win32Native .LsaLookupNames Microsoft.Win32.Win32Native.LsaOpenPolicy Microsoft.Win32.Win32Native.LsaLogonUser Microsoft.Win32.Win32Native.LsaLookupAuthenticationPackage Microsoft.Win32.Win32Native.LsaRegisterLogonProcess Microsoft.Win32.Win32Native.LsaLookupNames2 Microsoft.Win32.Win32Native.LsaConnectUntrusted
Microsoft.Win32.Win32 LsaGetLogonSessionData

そうは言っても、誰かがこれらの関数のマネージ ラッパーを作成しました。 http://www.hightechtalks.com/csharp/lsa-functions-276626.html

Codeproject、LSA Functions - Privileges and Impersonation に関するすばらしい記事もあり ます http://www.codeproject.com/KB/cs/lsadotnet.aspx

于 2010-04-21T17:07:26.000 に答える