web-dev-qa-db-ja.com

msdeployがERROR_CERTIFICATE_VALIDATION_FAILEDを取得し、allowUntrustedが無視されます

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.

私が欠けているものはありますか?

10
VingInMedina

要するに、問題は宛先システムのユーザーのパスワードにありました。

別の投稿で、誰かが「-dest」エントリの前に「-allowUntrusted」フラグを移動したことがわかりました。私はそれを試しましたが、ERROR_USER_UNAUTHORIZEDメッセージが表示され始めました。入力されたパスワードはすべて正しいものでしたが、「*」文字で始まり、一重引用符も含まれていました。これらの特殊文字を使用しないユーザーの新しいパスワードを生成し、リモートシステムで変更しました。その後、すべてが正常に機能しました。

最初の投稿に示されているように、エラーなしでコマンドを実行できました。

したがって、ERROR_CERTIFICATE_VALIDATION_FAILEDまたはERROR_USER_UNAUTHORIZEDが発生し、すべてが正しく設定されている場合は、宛先システムのユーザーに割り当てられているパスワードを変更してみてください。一部のパスワードは機能しないようです。

3
VingInMedina

Pubxmlファイルに<AllowUntrustedCertificate>True</AllowUntrustedCertificate>を追加すると、最初は問題が解決したようです。

しかし、数日後に再公開すると、同じエラーが発生しました。 Publish Settingsに入り、パスワードを再入力し、公開に成功しました

私は今、<AllowUntrustedCertificate>True</AllowUntrustedCertificate>を追加するのではなく、パスワードを再入力することで最初の問題が解決したと考えています。

Publish Screen

15
spottedmahn

-allowUntrustedは私のために働きませんでした。

私はこれを使用しました:

/p:AllowUntrustedCertificate=True
10
Christian Rios

公開設定に移動し、下部にある[接続の検証]をクリックして、これを修正しました。その後、このエラーはなくなります。

3
ScottG

デプロイメントサーバーのIPアドレスを使用していることに気付きました。

-dest:iisApp="mycompany.com",ComputerName="https://<hostip>:8172/MsDeploy.axd"

これにより、SSL証明書がIPアドレスではなくドメイン名に対して発行されたため、証明書の検証エラーが発生しました。 IPアドレスではなくドメイン名に変更すると修正されました。

1
Doug

他の誰も私のために働いていないので、このソリューションを追加します...

プロファイルを公開するには、次の行を追加する必要がありました。

<UseMSDeployExe>True</UseMSDeployExe>
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

それらを追加した後も、公開は失敗しました。次に、公開プロファイル設定を開き、[接続の検証]をクリックして、保存しました。その後、公開は成功しました。

0
drewmerk

私の50セントと私のソリューションを追加して、他の誰かに役立つようにしたいだけです。私がこれを解決したのは、リモートデスクトップを使用してホストマシンに接続し、マシン証明書を受け入れるように求められたときに(ログインとパスワードを入力した後)、下部にこれを覚えておくとマークしました。これが誰かを助けることを願っています

0
Liran