สิทธิ์โฟลเดอร์ IIS7 สำหรับเว็บแอปพลิเคชัน


91

ฉันใช้การรับรองความถูกต้องของ windows โดยไม่มีการแอบอ้างบุคคลอื่นในเว็บไซต์อินทราเน็ตของ บริษัท ของฉันด้วย IIS7

ภายใต้ IIS7 บัญชีใดใช้เพื่อเข้าถึงโฟลเดอร์ที่มีเว็บแอปของฉันโดยใช้การตั้งค่าเหล่านี้

จะเป็น IIS_IUSRS หรือไม่ หรือ NETWORK SERVICE? หรืออื่นที่ฉันไม่รู้?


คำตอบ:


130

ใน IIS 7 (ไม่ใช่ IIS 7.5) ไซต์จะเข้าถึงไฟล์และโฟลเดอร์ตามบัญชีที่ตั้งค่าบนแอปพลิเคชันพูลสำหรับไซต์ โดยค่าเริ่มต้นใน IIS7 NETWORK SERVICEบัญชีนี้คือ

ระบุข้อมูลประจำตัวสำหรับกลุ่มแอปพลิเคชัน (IIS 7)

ใน IIS 7.5 (Windows 2008 R2 และ Windows 7) พูลแอปพลิเคชันจะทำงานภายใต้ ApplicationPoolIdentity ซึ่งสร้างขึ้นเมื่อพูลแอปพลิเคชันเริ่มทำงาน หากคุณต้องการตั้ง ACLS สำหรับบัญชีนี้คุณจะต้องเลือกแทนIIS AppPool\ApplicationPoolNameNT Authority\Network Service


35
โปรดทราบว่ามันไม่ได้เป็นตัวอักษรแต่IIS AppPool\ApplicationPoolName IIS AppPool\<yourpoolname>
Jeff S

21
ใน IIS 7.5 Identity เริ่มต้นสำหรับ Application Pool คือ ApplicationPoolIdentity ApplicationPoolIdentity แสดงถึงบัญชีผู้ใช้ Windows ที่เรียกว่า "IIS APPPOOL \ AppPoolName" ซึ่งสร้างขึ้นเมื่อมีการสร้าง Application Pool โดยที่ AppPoolName เป็นชื่อของ Application Pool ผู้ใช้ "IIS APPPOOL \ [AppPoolName]" โดยค่าเริ่มต้นจะเป็นสมาชิกของกลุ่ม IIS_IUSRS ดังนั้นคุณต้องให้สิทธิ์การเข้าถึงเพื่อเขียนในกลุ่ม IIS_IUSRS
Be.St.

คนในรุ่นล่าสุดของ Windows อาจพบบทความนี้มีประโยชน์สำหรับการกำหนดค่าบัญชี 'AppPool \ DefaultAppPool' ถ้าพวกเขามีปัญหาที่คล้ายกัน: iis.net/learn/manage/configuring-security/... นอกจากนี้ยังช่วยหลีกเลี่ยงข้อผิดพลาดที่ได้รับหลังจากอัปเดตจาก Windows 8 เป็น 8.1 โดยมีข้อความว่า: "เกิดข้อผิดพลาดขณะโหลดไฟล์การกำหนดค่า: ไม่สามารถเริ่มการตรวจสอบการเปลี่ยนแปลง [เส้นทางไฟล์แบบเต็ม] ได้เนื่องจากการเข้าถึงถูกปฏิเสธ"
Matty J

ฉันได้ให้สิทธิ์เต็มใน Application Pool .. แต่ยังคงได้รับการปฏิเสธการเข้าถึง
Yousi

26

http://forums.iis.net/t/1187650.aspx มีคำตอบ การตั้งค่าการพิสูจน์ตัวตน iis เป็นเอกลักษณ์พูลแอปพลิเคชันจะช่วยแก้ปัญหานี้ได้

ในการตรวจสอบความถูกต้อง IIS การรับรองความถูกต้องแบบไม่ระบุชื่อถูกตั้งค่าเป็น "ผู้ใช้เฉพาะ" เมื่อฉันเปลี่ยนเป็น Application Pool ฉันสามารถเข้าถึงไซต์ได้

ในการตั้งค่าให้คลิกที่เว็บไซต์ของคุณใน IIS แล้วดับเบิลคลิกที่ "Authentication" คลิกขวาที่ "Anonymous Authentication" แล้วคลิก "Edit ... " เปลี่ยนจาก "ผู้ใช้เฉพาะ" เป็น "เอกลักษณ์พูลแอปพลิเคชัน" ตอนนี้คุณควรจะสามารถตั้งค่าการอนุญาตไฟล์และโฟลเดอร์โดยใช้ IIS AppPool \ {Your App Pool Name}


3
สิ่งนี้ช่วยได้อย่างมาก หากคุณไม่เปลี่ยนการรับรองความถูกต้องแบบไม่ระบุชื่อจาก "ผู้ใช้เฉพาะ" เป็น "เอกลักษณ์พูลแอปพลิเคชัน" การเปลี่ยนแปลงสิทธิ์ของคุณจะไม่สะท้อนให้เห็นเมื่อตั้งค่าสิทธิ์ IIS AppPool \ {Your App Pool Name}
เดวิด

โอ้พระเจ้า. ดูเหมือนจะไม่มีใครมารับเรื่องนี้ นี่เพิ่งแก้ปัญหาการขุดได้หลายชั่วโมง
Joe Swindell

19

เรียกใช้ IIS 7.5 ผมก็มีสิทธิ์โชคเพิ่มสำหรับผู้ใช้คอมพิวเตอร์ท้องถิ่นIUSR ผู้ใช้แอปพูลไม่ทำงาน


18

หากต้องการความช่วยเหลือใด ๆ ให้กับกลุ่ม "IIS_IUSRS"

โปรดทราบว่าหากคุณไม่พบ "IIS_IUSRS" ให้ลองเติมชื่อเซิร์ฟเวอร์ของคุณไว้ล่วงหน้าเช่น "MySexyServer \ IIS_IUSRS"


สิ่งนี้ทำเพื่อฉัน ฉันไม่มีชื่อเซิร์ฟเวอร์และยังไม่เห็นใครพูดถึงเลย
drichardson

เพื่อที่คุณจะสามารถใช้สัญกรณ์ท้องถิ่น ". \ IIS_IUSRS"
Bernhard

3

ทำงานให้ฉันใน 30 วินาทีสั้นและหวาน:

  1. ในตัวจัดการ IIS (เรียกใช้ inetmgr)
  2. ไปที่ ApplicationPool -> การตั้งค่าขั้นสูง
  3. ตั้งค่า ApplicationPoolIdentity เป็น NetworkService
  4. ไปที่ไฟล์คลิกคุณสมบัติคลิกขวาไปที่ความปลอดภัยคลิกแก้ไขคลิกเพิ่มเข้าสู่บริการเครือข่าย (ด้วยช่องว่างจากนั้นคลิก 'ตรวจสอบชื่อ') และให้การควบคุมทั้งหมด (หรือเพียงแค่สิทธิ์ใด ๆ ก็ตามที่คุณต้องการ)

นั่นมัน! ขอบคุณ
Yazan Khalaileh

1
  1. ทำงานบน IIS 7.5 และ Windows 7 ฉันไม่สามารถให้สิทธิ์ APPPOOL / Mypool ได้
  2. สิทธิ์ IUSR และ IIS_IUSRS ไม่ทำงานสำหรับฉัน
  3. ฉันประสบปัญหาด้วยวิธีนี้:

    - แอปพลิเคชันคอนโซลที่สร้างขึ้นด้วย C #
    - แอปพลิเคชันนี้ใช้ createeventsource เช่นนี้

    ถ้า (! System.Diagnostics.EventLog.SourceExists (sourceName)) System.Diagnostics.EventLog.CreateEventSource (sourceName, logName);

    - สร้างโซลูชันและรับไฟล์. exe

    - เรียกใช้ exe เป็นผู้ดูแลระบบนี้สร้างไฟล์บันทึก

หมายเหตุ: อย่าจำ Event viewer ต้องรีเฟรชเพื่อดูบันทึก

ฉันหวังว่าโซลูชันนี้จะช่วยใครบางคน :)

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