Msdeployを使用して、Webサイトコードを4つの異なるサーバー(テストサーバーと本番サーバー)にプッシュしています。最初の3つは正常に機能しますが、4つ目はERROR_CERTIFICATE_VALIDATION_FAILEDエラーが発生します。 -allowUntrustedオプションを使用しています。
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -source:iisApp="E:\workspace\testDeploy\outproject\_PublishedWebsites\<webfolder>" -dest:iisApp="mycompany.com",ComputerName="https://<hostip>:8172/MsDeploy.axd",UserName="<userid>",Password="****",AuthType="Basic" -allowUntrusted -enableRule:AppOffline -skip:objectName=filePath,absolutePath="^.*<webfolder>\\web.*\.config$|^.*mycompany\.com\\web.*\.config"
Error Code: ERROR_CERTIFICATE_VALIDATION_FAILED
More Infenter code hereormation: Connected to the remote computer ("<hostip>") using the specified process ("Web Management Service"), but could not verify the server's certificate. If you trust the server, connect again and allow untrusted certificates. Learn more at: http://go.Microsoft.com/fwlink/?LinkId=221672#ERROR_CERTIFICATE_VALIDATION_FAILED.
Error: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
Error: The remote certificate is invalid according to the validation procedure.
私が欠けているものはありますか?
要するに、問題は宛先システムのユーザーのパスワードにありました。
別の投稿で、誰かが「-dest」エントリの前に「-allowUntrusted」フラグを移動したことがわかりました。私はそれを試しましたが、ERROR_USER_UNAUTHORIZEDメッセージが表示され始めました。入力されたパスワードはすべて正しいものでしたが、「*」文字で始まり、一重引用符も含まれていました。これらの特殊文字を使用しないユーザーの新しいパスワードを生成し、リモートシステムで変更しました。その後、すべてが正常に機能しました。
最初の投稿に示されているように、エラーなしでコマンドを実行できました。
したがって、ERROR_CERTIFICATE_VALIDATION_FAILEDまたはERROR_USER_UNAUTHORIZEDが発生し、すべてが正しく設定されている場合は、宛先システムのユーザーに割り当てられているパスワードを変更してみてください。一部のパスワードは機能しないようです。
-allowUntrustedは私のために働きませんでした。
私はこれを使用しました:
/p:AllowUntrustedCertificate=True
公開設定に移動し、下部にある[接続の検証]をクリックして、これを修正しました。その後、このエラーはなくなります。
デプロイメントサーバーのIPアドレスを使用していることに気付きました。
-dest:iisApp="mycompany.com",ComputerName="https://<hostip>:8172/MsDeploy.axd"
これにより、SSL証明書がIPアドレスではなくドメイン名に対して発行されたため、証明書の検証エラーが発生しました。 IPアドレスではなくドメイン名に変更すると修正されました。
他の誰も私のために働いていないので、このソリューションを追加します...
プロファイルを公開するには、次の行を追加する必要がありました。
<UseMSDeployExe>True</UseMSDeployExe>
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
それらを追加した後も、公開は失敗しました。次に、公開プロファイル設定を開き、[接続の検証]をクリックして、保存しました。その後、公開は成功しました。
私の50セントと私のソリューションを追加して、他の誰かに役立つようにしたいだけです。私がこれを解決したのは、リモートデスクトップを使用してホストマシンに接続し、マシン証明書を受け入れるように求められたときに(ログインとパスワードを入力した後)、下部にこれを覚えておくとマークしました。これが誰かを助けることを願っています