2

次のコードを使用してアプリケーション プールを作成しています。

var appPool = serverManager.ApplicationPools.Add(Name);
appPool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser;
appPool.ProcessModel.UserName = UserName;
appPool.ProcessModel.Password = Password;
serverManager.CommitChanges();

しかし、どういうわけかパスワードに問題が発生し、何が原因かわかりません。applicationHost.config を調べると、生成された xml は次のようになります。

<processModel 
  identityType="SpecificUser" 
  userName="domain1\user1" 
  password="[enc:IISWASOnlyAesProvider:6RqsTbCqVXXnr37jLOrOjg==:enc]" />

IIS マネージャーで同じユーザー (domain1\user1) を手動で追加すると、xml は次のようになります。

<processModel 
  identityType="SpecificUser" 
  userName="domain1\user1"
  password="[enc:IISWASOnlyAesProvider:OCkfPehXB3p8ahXXtaoW3vLTpFY/EbW5IFo39h5iVE2azpJXXvkArbeeuwI5bvBG:enc]" />

コードで作成した場合、パスワードは別の方法で暗号化されるようですが、それに関するトピックは Web で見つかりませんでした。

私が間違っていること、またはコードを機能させるために何をする必要がありますか?

4

2 に答える 2

1

私はそれを再現しようとしましたが、常に機能しました。次の質問で申し訳ありませんが、それは私自身に数回起こりました:

正しいパスワードを指定したと確信していますか?

于 2013-09-23T12:25:47.803 に答える
0

you can create app pool with username and password like this

using (ServerManager serverManager = new ServerManager())
           {
              
                   ApplicationPool newPool = serverManager.ApplicationPools.Add("Poolnam1");
                   newPool.ManagedRuntimeVersion = "v4.0";
                   newPool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser;
                   newPool.ProcessModel.UserName = accountUserName;
                   newPool.ProcessModel.Password = accountPassword;
                   serverManager.CommitChanges();

           
           }
于 2021-08-09T08:14:03.170 に答える