管理者以外のユーザーが IIS6 で仮想ディレクトリを作成できるようにするアプリケーションを作成しようとしています。管理者アカウントになりすますさまざまな方法を試しましたが、仮想ディレクトリを作成する方法がうまくいかないようです。
ここに私が試したことのいくつかがあります:
dim sDirPath as string = "IIS://remotehost/W3svc/1/root"
Dim de As DirectoryEntry = New DirectoryEntry()
de.Path = sDirPath
de.AuthenticationType = AuthenticationTypes.Secure
de.Username = tbxUsername.Text
de.Password = tbxPassword.Text
''Fails here
virtualId = CType(de.Invoke("Create", "IIsWebVirtualDir", dirName), DirectoryEntry)
ここから AccountAlias クラスを使用します。
aa.BeginImpersonation()
Try
dim sDirPath as string = "IIS://remotehost/W3svc/1/root"
Dim de As DirectoryEntry = New DirectoryEntry()
de.Path = sDirPath
de.AuthenticationType = AuthenticationTypes.Secure
''Fails Here
virtualId = CType(de.Invoke("Create", "IIsWebVirtualDir", dirName), DirectoryEntry)
Finally
aa.EndImpersonation()
End Try
アプリケーションを実行しているユーザーがWebサーバーの管理者になることなく仮想ディレクトリを作成できるようにする、winformsアプリケーションで別のユーザーになりすます正しい方法は何ですか? これができることはわかっています.IISマネージャーでは、「接続」チェックボックスを使用して実行できます。