repoze.who.plugins.digestauth เป็นปลั๊กอิน repoze.who การใช้ HTTP สำคัญของการเข้าถึงการตรวจสอบตาม RFC-2617:
& nbsp; http: //tools.ietf.org/html/rfc2617
จะให้การสนับสนุนที่ดีสำหรับโปรโตคอลที่มันถูกใช้โดยทั่วไปในป่า:
- ทั้ง qop = "รับรองความถูกต้อง" และ qop = "รับรองความถูกต้อง-int" โหมด
- โหมดความเข้ากันได้สำหรับลูกค้ามรดก
- ลูกค้าตรวจสอบขณะปัจจุบันนับ
- รุ่นต่อไปขณะปัจจุบันผ่านการตรวจสอบส่วนหัว-Info
คุณสมบัติดังต่อไปของโปรโตคอลไม่ค่อยได้รับการสนับสนุนจากลูกค้า HTTP และจึงยังไม่ได้รับการดำเนินการ:
- MD5 เพศหรือวิธีกัญชาอื่น ๆ กว่า MD5 ใด ๆ
- ตรวจสอบร่วมกันผ่านการตรวจสอบส่วนหัว-Info
การตั้งค่า
การกำหนดค่าของปลั๊กอินย่อย-รับรองความถูกต้องสามารถทำได้จากไฟล์ config repoze.who มาตรฐานเช่นดังนั้น:
[ปลั๊กอิน: digestauth]
ใช้ = repoze.who.plugins.digestauth: make_plugin
ดินแดน = MyRealm
get_pwdhash = mymodule: get_pwdhash
ตั้งค่าตัวเลือกต่อไปนี้:
- ดินแดน: สตริงดินแดน; รวมคำต่อคำในส่วนหัวของความท้าทาย
- โดเมน: สตริงโดเมน; รวมคำต่อคำในส่วนหัวของความท้าทาย
- qop: คุณภาพที่พึงประสงค์ของการป้องกัน ("รับรองความถูกต้อง" หรือ "รับรองความถูกต้อง-int")
- get_password: จุดชื่อของการเรียกกลับที่จะได้รับรหัสผ่านของผู้ใช้
- get_pwdhash: จุดชื่อของการเรียกกลับที่จะได้รับกัญชารหัสผ่านของผู้ใช้
- nonce_manager: จุดชื่อของชั้นที่จะใช้สำหรับการจัดการขณะปัจจุบัน
การตรวจสอบ
ในการตรวจสอบผู้ใช้ผ่านทาง Digest Auth, ปลั๊กอินนี้ต้องการเข้าถึงทั้งรหัสผ่านดิบของพวกเขาหรือพวกเขา "แฮชรหัสผ่าน" ซึ่งเป็น MD5 ย่อยของชื่อผู้ใช้รหัสผ่านและขอบเขตการตรวจสอบ:
def calculate_pwdhash (ชื่อผู้ใช้รหัสผ่านดินแดน)
. & nbsp; กลับ md5 ("% s:% s:% s"% (ชื่อผู้ใช้ดินแดน, รหัสผ่าน)) hexdigest ()
คุณจะต้องให้ฟังก์ชันโทรกลับ "get_password" หรือ "get_pwdhash" เพื่อ DigestAuthPlugin
Nonce จัดการ
การรักษาความปลอดภัยของการเข้าถึงการตรวจสอบสำคัญขึ้นอย่างมากในรุ่นความปลอดภัยและการบริหารธุรกิจของขณะปัจจุบันการเข้ารหัสลับ เพื่อป้องกันไม่ให้แข่งใหม่โจมตีเซิร์ฟเวอร์จะต้องปฏิเสธการร้องขอที่มีขณะปัจจุบันซ้ำ
รายละเอียดของการจัดการขณะปัจจุบันได้รับการสกัดเป็นอินเตอร์เฟซที่แยกต่างหากที่กำหนดโดย repoze.who.plugins.digestauth.noncemanager: NonceManager ชั้น การเริ่มต้นใช้สัญญาณ HMAC ลงนามและแคชในหน่วยความจำของเห็นเมื่อเร็ว ๆ นับขณะปัจจุบัน หากคุณมีความต้องการที่เฉพาะเจาะจงมากขึ้นคุณอาจต้องการที่จะใช้รอง NonceManager ของคุณเอง
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- ใบอนุญาต Update เพื่อ MPL 2.0.
ต้องการ
- หลาม
ความคิดเห็นที่ไม่พบ