การสร้างงานการปรับใช้เว็บล้มเหลว


86

สถานการณ์:

ฉันตั้งค่างาน TFS2010 webdeploy สำหรับโซลูชันเรียบร้อยแล้ว ทุกอย่างทำงานได้ดีจนกระทั่งมีบางอย่างผิดพลาดในงานการปรับใช้

โซลูชันมีโครงการเว็บ 2 โครงการซึ่งได้รับการกำหนดค่าให้ปรับใช้ในการสร้างและเผยแพร่ไปยังเซิร์ฟเวอร์ผู้พัฒนา

ใครมีความรู้ว่ามีอะไรผิดพลาดในการสร้าง (ข้อมูลด้านล่าง)?

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets
(3847): Web deployment task failed.
((4.8.2011 11:01:10) An error occurred when the request was processed on the remote computer.)
(4.8.2011 11:01:10) An error occurred when the request was processed on the remote computer. Unable to perform the operation. Please contact your server administrator to check authorization and delegation settings.

ฉันสามารถให้ข้อมูลเพิ่มเติมได้หากมีใครต้องการ


1
หากคุณพบคำถามนี้เมื่อเร็ว ๆ นี้โปรดดูคำตอบล่าสุด
เศรษฐี

คำตอบ:


210

ฉันพบปัญหาเดียวกันเมื่อสร้างผ่าน TFS เมื่อฉันพยายามนำเข้าเว็บไซต์ด้วยตนเองฉันได้รับข้อผิดพลาดเพิ่มเติม: "ไม่สามารถเข้าสู่ระบบผู้ใช้ \ WDeployConfigWriter"

ปรากฎว่าเมื่อคุณติดตั้ง web deploy จะตั้งค่าบัญชีภายในสองบัญชี WDeployConfigWriter และ WDeployAdmin รหัสผ่านของบัญชีเหล่านี้ถูกกำหนดให้หมดอายุ ดังนั้นให้รีเซ็ตรหัสผ่านบนเว็บเซิร์ฟเวอร์และตั้งค่าเป็น "ไม่มีวันหมดอายุ" จากนั้นไปที่ Management Service Delegation ใน IIS กฎที่นำเสนอแต่ละข้อมีฟิลด์ชื่อผู้ใช้ โดยที่ WDeployAdmin หรือ WDeployConfigWriter คลิกขวาและอัปเดตข้อมูลรับรองเป็นรหัสผ่านใหม่

สามารถดูคำอธิบายแบบเต็มพร้อมภาพหน้าจอได้ที่นี่: http://workinghardinit.wordpress.com/2011/07/18/wdeployconfigwriter-account-issues-trouble-shooting-web-deploy-2-0-with-lessons-learned/


21
หากไม่มีการเปลี่ยนรหัสผ่านคุณสามารถตั้งค่าบัญชี WDeployConfigWriter และ WDeployAdmin เป็น "ผู้ใช้ไม่สามารถเปลี่ยนรหัสผ่าน" และ "รหัสผ่านไม่มีวันหมดอายุ" ในกรณีของเรา "รหัสผ่านของบัญชีที่ระบุหมดอายุ" อยู่ในบันทึกการรักษาความปลอดภัยในการติดตั้งเซิร์ฟเวอร์ใหม่
GoClimbColorado

2
ดี. นี่เป็นปัญหาในกรณีของฉัน ฉันตั้งรหัสผ่านของผู้ใช้ WDeployConfigWriter ไม่ให้หมดอายุและวิธีนี้ช่วยแก้ปัญหาได้
สแตน DBA

2
ฉันพบข้อผิดพลาดที่คล้ายกันในตัวแสดงเหตุการณ์ (บน Server 2012 ในแอปพลิเคชันและบันทึกบริการ >> Microsoft Web Deploy) ข้อผิดพลาดแสดงในรายละเอียด:Microsoft.Web.Delegation.DeploymentAuthorizationException: Not able to log on the user '.\WDeployConfigWriter'. ---> System.Runtime.InteropServices.COMException: The password for this account has expired.
Jon Egerton

เมื่อถึงเดือนกุมภาพันธ์ 2559 ฉันพบปัญหาแปลก ๆ นี้บน windows server 2008R2 และโซลูชันของคุณใช้ได้ผลสำหรับฉัน
Ehsan Mirsaeedi

2
ฉันยืนยันได้ว่าคุณไม่จำเป็นต้องเปลี่ยนรหัสผ่าน การตั้งค่า "รหัสผ่านไม่มีวันหมดอายุ" ก็เพียงพอที่จะแก้ไขปัญหาได้โดยไม่ต้องมีขั้นตอนเพิ่มเติมตามความคิดเห็นของ @ GoClimbColorado
NickG

41

สิ่งที่คุณต้องทำคือเรียกใช้สคริปต์ "AddDelegationRules.ps1" ที่อยู่ใน "C: \ Program Files \ IIS \ Microsoft Web Deploy V3 \ Scripts \" อีกครั้ง

นี่คือสคริปต์ที่รันเมื่อติดตั้งการปรับใช้เว็บครั้งแรก จะสร้างการมอบหมายที่ขาดหายไปใหม่ตั้งรหัสผ่านใหม่สำหรับทั้ง WebDeployAdmin และ WebDeployConfigWriter และเพิ่ม WebDeployAdmin กลับไปที่กลุ่มผู้ดูแลระบบ

คุณยังคงต้องตั้งรหัสผ่านสำหรับแต่ละบัญชีไม่ให้หมดอายุหลังจากเรียกใช้สคริปต์อีกครั้ง


คำแนะนำของคุณช่วยฉันได้มาก ฉันพบและเรียกใช้สคริปต์นี้ "AddDelegationRules.ps1" ด้วย "poverShell" ฉันใช้เซิร์ฟเวอร์ 2012 r2 win และ VS2017
Roberto Gata

12

เรามีปัญหาเดียวกัน - ในกรณีของเราเราใช้เฉพาะMSDeploy (ไม่มีTFS ) รีเซ็ตรหัสผ่านสำหรับผู้ที่ 2 บัญชีท้องถิ่น ( WDeployConfigWriterและWDeployAdmin ) แก้ปัญหาของพวกเขาเป็นรหัสผ่านที่หมดอายุ เราพยายามเปลี่ยนนโยบายรหัสผ่านเพื่อไม่ให้หมดอายุ แต่มีเพียงผู้ดูแลระบบเท่านั้นที่สามารถทำได้


2
เพิ่งใช้คำตอบนี้เพื่อแก้ปัญหานี้ด้วยตัวเอง มีขั้นตอนหนึ่งที่มากขึ้นสำหรับผมก็คือว่า ... เมื่อคุณรีเซ็ตข้อมูลประจำตัวที่คุณต้องการที่จะเข้าไปในIIS> การบริหารการบริการคณะผู้แทนจากนั้นเลือกกฎและกดแต่ละแก้ไข หากกฎใช้บัญชีWDeployConfigWriterให้กดปุ่มSet ...แล้วป้อนข้อมูลรับรองใหม่ที่คุณเพิ่งอัปเดตอีกครั้ง
EvilDr

3
นี่เป็นคำตอบเพียงครึ่งเดียวเท่านั้น ... เพื่อป้องกันไม่ให้รหัสผ่านหมดอายุให้เปิดตัวจัดการกลุ่มภายใน (เรียกใช้lusrmgr.msc) ผู้ใช้ (ในแถบด้านข้าง) ดับเบิลคลิกที่ชื่อบัญชีและทำเครื่องหมายที่ "รหัสผ่านไม่หมดอายุ"
กาด

ฉันสามารถแก้ไขปัญหานี้ได้โดยเพียงแค่ยกเลิกการเลือกUser must change password at next loginและไม่ได้เปลี่ยนรหัสผ่านทางกายภาพ
Chris Schaller

4

เรียกใช้คำสั่งนี้ lusrmgr.msc ดับเบิ้ลคลิกที่ผู้ใช้และดับเบิลคลิกที่ชื่อบัญชีและเลือก "รหัสผ่านไม่หมดอายุ" ป้อนคำอธิบายภาพที่นี่

ป้อนคำอธิบายภาพที่นี่ เสร็จแล้ว


ฉันตรวจสอบแล้ว แต่มีปัญหาในการปรับใช้
Piotrek
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.