Birçok deneme yanılma yapılandırmasından sonra, msdeploy.exe aracına şu anda komut satırı ile IIS 7.5 çalıştıran uzak bir sunucuya Visual Studio 2010'da yerleşik bir paketi dağıtmak için komut dosyası yazabiliyorum:
Temel kimlik doğrulama komutu:
msdeploy -source:package="project.zip" -dest:auto,computerName='https://webserver:8172/MsDeploy.axd',authtype='Basic',username='DOMAIN\myuser',password='xxx',includeAcls='False' -verb:sync -setParamFile:"SetParameters.xml" -allowUntrusted
Doğrudan kimlik doğrulamasını etkinleştirerek komut satırında parola sağlama ihtiyacını ortadan kaldırabilir miyim? Web Dağıtımı dokümanlar AuthType parametresini söz yerine Temel, 'NTLM' belirtebilirsiniz. Bununla birlikte, bunu denediğimde (aşağıdaki örneğe bakın), 401'i gösteren bir hata alıyorum. WMSvc web günlüğü 401.2 gösteriyor ve bu kimlik girişinde kullanıcı kimliği doldurulmuyor, Temel kimlik doğrulamayı kullanan önceki denemelerin aksine DOMAIN \ myuser web günlüğünde. İstemci veya sunucunun olay görüntüleyicisinde başka yararlı bilgi bulunamadı.
Not: Hedef web sunucusu başka bir etki alanında, bu yüzden net use \\webserver /u:DOMAIN\myuser
bir belirteç oluşturmak için bir yapmak .
Doğrudan kimlik doğrulama komutu girişimi:
msdeploy -source:package="project.zip" -dest:auto,computerName='https://webserver:8172/MsDeploy.axd',authtype='NTLM',includeAcls='False' -verb:sync -setParamFile:"SetParameters.xml" -allowUntrusted
Görünüşe göre msdeploy.exe HTTP düzeyinde IIS ile doğrulanmıyor. Ne yanlış olabilir?
İstemci Windows XP, Sunucu Win2008R2. Her ikisi de msdeploy.exe 7.1.618.0 sürümünü çalıştırıyor. Her ikisinde de .NET 2.0, 3.5 ve 4.0 yüklü.