web-dev-qa-db-ja.com

WebDeploy(401)不正なエラー

移行先サーバーのローカル管理者ではないWindowsユーザーを使用してアプリケーションをリモートで展開しようとすると、NTLM認証を使用してMsDeployから不正なエラーが発生します。すべてのプロバイダーがチェックされている宛先ボックスの管理サービス委任にセットアップルールがあります。このルールの下で、許可権限を持つ2人のユーザー(「*」、およびリモートデプロイを実行しているWindowsユーザー)を追加しました。さらに、展開しようとしているサイトでWindowsユーザーにアクセス許可を与えました。 Windowsユーザーを宛先ボックスのローカル管理者にし、「管理者にルールのバイパスを許可する」を設定すると、デプロイは正常に機能します。 Windowsユーザーがローカル管理者でない場合、次のエラーが表示されます。

Web展開タスクが失敗しました。(リモートエージェント(URL http:// xxxxxxxx/MSDEPLOYAGENTSERVICE )に接続できませんでした。リモートエージェントサービスがターゲットコンピューターにインストールされ、開始されていることを確認してください。)名前、ユーザー名、およびパスワードが正しい。問題が解決しない場合は、ローカルまたはサーバーの管理者に連絡してください。エラーの詳細:リモートエージェント(URL http:// xxxxx/MSDEPLOYAGENTSERVICE )に接続できませんでした。ターゲットコンピュータにリモートエージェントサービスがインストールされ、開始されていることを確認してください。サポートされていない応答を受信しました。応答ヘッダー 'MSDeploy.Response'は 'V1'でしたが、 'v1'が予期されていました。リモートサーバーがエラーを返しました:(401)Unauthorized。 Microsoft.Web.Publishing.targets(3588、5)

29
cfbarbero

「管理者にルールのバイパスを許可する」ように委任を構成し、msdeployコマンドが成功した場合、WMSvcを通過し、許可されます。それ以外の場合、応答から、WMSvcがあなたを拒否し、Web Deloyエージェントにフォールバックしているようです。

次のreg値をWMSvc regキーに設定/追加します。

reg add HKLM\Software\Microsoft\WebManagement\Server /v WindowsAuthenticationEnabled /t REG_DWORD /d 1

WMSvcのリサイクル:

net stop wmsvc & net start wmsvc

再試行。成功しない場合は、msdeployコマンドラインを投稿できます。

51
kateroh

ビルドプロセスの一部として展開しているマシンがあります。明白な理由はありませんが、デプロイが機能しなくなり、管理共有(C $、ADMIN $など)にリモートでアクセスできなくなりました。展開の問題も修正する管理共有の修正を発見しました。

このKB記事の手順に従って、管理共有を再度有効にしました(なぜ突然機能しなくなったのかはまだわかりません)。

http://support.Microsoft.com/kb/947232

それを行った後、msdeployが突然再び機能し始めました。 msdeployが管理共有を使用するとは思わなかった。私はこの2つがまったく関連しているとさえ確信していませんが、他の人の問題が解決した場合に備えて、それを捨てると思いました。

5
Jon Turner

最終的に、NTLMを使用して自動ビルドとデプロイを実行することができました。誰にも役立つ場合に備えて、それを実現するために必要なことを要約したかっただけです。これはIIS 7.5でのものです。

  1. レジストリ設定を設定し、Web管理サービス(WMSVC)を再起動します。

    reg add HKLM\Software\Microsoft\WebManagement\Server/v WindowsAuthenticationEnabled/t REG_DWORD/d 1

  2. TFSビルドサービスを実行しているユーザーに、Webサイトディレクトリでアクセス許可を与えます。

  3. ここに私が使用したMSBuild引数があります。さまざまな名前を自分の名前に置き換えます。 DEVとAny CPUを使用していました。信頼できない証明書も許可する必要がありました。

    / m/p:PublishProfile = DEV/p:Configuration = DEV/p:Platform = "Any CPU"/p:DeployOnBuild = true/p:AllowUntrustedCertificate = true/p:authType = NTLM

  4. 宛先Webサイトが選択されたIIS Managerで、IIS Managerのアクセス許可を開き、TFSビルドサービスを実行しているユーザーを許可します。

トレースは、問題の診断に非常に役立ちました。 IIS Managerの管理サービス委任でトレースをオンにできます。最初は、IIS Managerに管理サービスの委任が表示されませんでした。表示するには、管理プログラムの委任がインストールされるように、[プログラムの追加]から[Web配置]を「変更」する必要がありました。インストールされているように見えましたが、ドロップダウンをリセットしてコンピューターにインストールし、インストールを完了しました。その後、IIS Managerに表示されました。

4
EricksonG

正確な原因は定かではありませんが、あなたの道を見つける手助けをすることができるかもしれません。

WebDeployは、リモートサーバーの構成、つまりIIS6またはIIS7の実行に基づいて2つのエントリポイントを使用します。

IIS 7はIIS展開ハンドラーを使用します。これはWeb管理サービスによって管理され、msdeployがIISを直接プロビジョニングできるようにします。すべての「管理サービスの委任」などの設定は、このセットアップに関連しています。

ただし、IIS 6にはWeb管理サービスがないため、ハンドラーは機能しません。 IIS6ターゲットの場合、MS Deploy Agent Serviceと呼ばれるサービスが使用されます。

奇妙なのは、セットアップがIIS 7であり、削除設定などを設定できたためです。ただし、そのURL「/ MSDEPLOYAGENTSERVICE」は、マシンが使用しようとしていることを示しています。サービス... IIS 6.と考えているかのように。サービスには管理者アクセスが必要です。そのため、このエラーが発生します。

エラーに基づいて、おそらくVisual Studioから直接、MSbuildからこれを呼び出しているようです。与えられた設定を調べて、そこに何かがこのパスやサーバーの選択を引き起こしていないかどうかを確認したい場合があります。

また、Web管理サービスがリモートマシンで実行されていることを確認してください。

基本的に、ハンドラーを適切に呼び出すために、異なるURL、http:// <> /msdeploy.axd(正しく覚えている場合)にdeploy呼び出しを行うことを望んでいます。

3
Taylor Bird

これは私の時間の多くの時間を使い果たしました。他のサイトで既にWeb Deployが機能していました。サーバーに新しいWebサイトを追加することにし、そのサーバーにデプロイしようとしました(ただし、コピーと貼り付けのエラーが原因で誤って同じ "Site/application"の名前を残しました)。公開は成功しましたが、(新しいサイトではなく)間違ったサイトに公開したことに気付いたとき、サイト名を変更して再デプロイを試みましたが、このエラーが発生し続けました。 IIS事の終わり。すべてを試しました。最後に、Visual Studio 2010インスタンスを完全にシャットダウンしました。それを開いて、再度パブリッシュして、動作しました!

疑わしい場合は、「電源をオフにしてから再びオンにしてみましたか?」と自問してください。
このアドバイスは、このあいまいなエラーを抱えている人には役に立たないことを認識しています。

2
MikeTeeVee

ユーザーが管理者であるにもかかわらず、

ERROR_USER_IS_NOT_ADMIN

完全修飾ユーザー名を使用していることを確認してください。

MyMachineName\MyWebDeployUser

1
Dann

昨日はうまくデプロイできましたが、今日はまったく同じエラーメッセージが表示されました。 1〜2時間のトラブルシューティングを行った後、ユーザー名からドメインを削除しました。 DOMAIN\usernameになる前に、[username]に変更しましたが、見たところ、再び動作を開始しました。私はこれが素晴らしい答えではないことを知っていますが、たぶんそれは他の誰かに出くわすのに役立つでしょう。

1
Ken Johnson

私の問題は、ネットワークサービスがWeb Deploy Agent Serviceのログオンアカウントであり、そのアカウントに変更または読み取りを行うための十分な権限がないことでしたIISファイル...

問題を解決するには、次の手順を実行してください。

サービスパネル(services.msc)を開きます
Web Deploy Agent Serviceを見つけ、ダブルクリックしてWeb Deploy Agent Serviceプロパティを開きます... [ログオン]タブで[ログオン]を変更します管理者アカウントへ...

0
Ricardo Almeida

昨日のいずれかで MS15-025 および MS15-027 のパッチをインストールした後、現在のWindowsユーザーのIDを使用すると(明示的な資格情報を使用して)Web配置が機能しなくなりましたWindows Server 2003を実行しているドメインコントローラー。

Web配置に関するすべての推奨事項を確認しましたが、HTTP 401.2エラーを解決できませんでした。

現在、マイクロソフトはWindows Server 2003専用の両方のセキュリティ情報(KB3033395-v2およびKB3002657-v2)のパッチを再発行しました。更新されたパッチをインストールし、ドメインコントローラを起動すると、すぐに再び機能しました。 Webサーバー上のサービスを再起動する必要さえありませんでした。

これを指すイベントログエントリはありませんでしたが、それは一時的な関係のために明らかになりました。

0

別の可能性があります。Webデプロイでデプロイしようとする試みの失敗が多すぎるため、アカウントがロックアウトされています。アカウントをリセットするか、システム管理者に依頼してください。とてもイライラします。

0
saille