อะไรคือข้อเสียของการใช้ / writting a. Net Custom Membership Provider


12

เมื่อเร็ว ๆ นี้ฉันโพสต์คำถามต่อไปนี้ใน SO: /programming/7197337/using-asp-net-membership-provider-with-an-existing-user-database

ดังที่คุณอาจสังเกตเห็นว่าฉันสิ้นสุดการตอบคำถามของฉันเองโดยระบุว่าดูเหมือนว่าการเขียน / ใช้ "ผู้ให้บริการสมาชิกที่กำหนดเอง" เป็นหนทางที่จะไป

ตามตัวอักษรไม่กี่นาทีต่อมาฉันเจอคำถามนี้: /programming/7222306/simple-login-attempt-counter-using-mvc-3-and-ajax/7222407#7222407

ฉันพยายามที่จะตอบและรับความคิดเห็นกลับว่าผู้ให้บริการสมาชิก. Net "แย่มากในหลาย ๆ ระดับ" ฉันจะยอมรับนี่เป็นครั้งแรกที่ฉันใช้ผู้ให้บริการสมาชิก แต่แน่ใจว่ามันเนียนสำหรับฉัน

ฉันไม่ได้เห็นอะไรเลยที่สนับสนุนการอ้างสิทธิ์ "แย่มาก" ดังนั้นก่อนที่ฉันจะนำสิ่งที่ "น่ากลัว" มาใช้ฉันหวังว่าจะได้รับคำติชมจากชุมชน


หวังว่าจะได้คำตอบ +1 ..
Pankaj Upadhyay

คำตอบ:


1

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

จากประสบการณ์ของฉันผู้ให้บริการสมาชิกซื้อคุณ ...

  • ลงชื่อสมัครใช้ที่สร้างไว้แล้วสำหรับแอป MVC
  • แก้ไขบัญชี
  • ลืมรหัสผ่านเป็นเรื่องง่าย
  • ตรวจสอบวิธีการของผู้ใช้

ฉันแน่ใจว่ามีอย่างอื่นที่ฉันหายไป แต่ฉันคิดว่านั่นเป็นเรื่องใหญ่ ตอนนี้เมื่อคุณต้องการการจัดการรหัสผ่านที่กำหนดเองการรับรองความถูกต้องสองระดับเพื่อทำงานกับโมเดลข้อมูลที่มีอยู่หรือโฮสต์ทั้งหมดของสิ่งอื่น ๆ ที่คุณเริ่มสูญเสีย รหัสที่คุณเขียนไว้แล้วพร้อมกับข้อเสนอการเป็นสมาชิกควรใช้เวลาในการสั่งทำซ้ำสองสามวันถ้าคุณรู้ว่าคุณกำลังทำอะไรอยู่


1

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

@ Travis กล่าวถึงการใช้แบบจำลองข้อมูลที่มีอยู่ แต่ตัวเลือกของฐานข้อมูลสามารถเป็นข้อ จำกัด เช่นกัน: Oracle?

ฉันไม่ทราบว่าใช้งานได้กับระบบการตรวจสอบบุคคลที่สามเช่น Facebook หรือ Google


1

พวกเขาไม่ได้ยืดหยุ่นเหมือนที่หลาย ๆ คนคิดในการอ่านเอกสารอย่างรวดเร็ว แต่มีที่ของพวกเขา

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

หากคุณต้องการแก้ไขมากกว่าที่คุณมักจะดีกว่าแทนที่ httpmodule ที่เรียกใช้หนึ่งในผู้ให้บริการรับรองความถูกต้องแล้วคุณจะได้รับการควบคุมทั้งหมด คนส่วนใหญ่ที่ฉันได้พบกับการทำลายสิ่งต่าง ๆ กับผู้ให้บริการทำให้ตัวเลือกที่ผิดสำหรับสถานการณ์ของพวกเขาในระดับนี้

วิธีใดก็ตามที่คุณจะได้รับ context.user ที่มีประชากรที่เหมาะสมซึ่งช่วยให้คุณสามารถใช้ฟังก์ชั่นผู้ใช้ที่ใช้ asp.net ได้เป็นส่วนใหญ่


1

คำถามนี้เก่า แต่ฉันได้รับเหรียญเนื่องจากเป็นที่นิยมดังนั้นฉันคิดว่าคุ้มค่าที่จะให้คำตอบที่อัปเดต

ผู้ให้บริการสมาชิก "เรียบง่าย" ของ Microsoft ในที่สุดก็ทำให้ถูกต้องตามความเห็นของฉัน หากคุณกำลังเขียนสิ่งใหม่ ๆ หรือแม้กระทั่งแนบกับฐานข้อมูลดั้งเดิมด้วยแอปพลิเคชันใหม่ ใช้ผู้ให้บริการสมาชิกที่เรียบง่าย วิธีง่ายและสะอาดในการนำไปใช้ ติดตั้งตารางสองสามตารางและชี้ผู้ให้บริการไปยังรายการผู้ใช้ของคุณและคุณทำเสร็จแล้ว

ลิงค์นี้จะช่วยให้คุณเริ่มต้นได้หรือเพียงแค่ google: http://www.mattjcowan.com/funcoding/2012/11/10/simplemembershipprovider-in-mvc4-for-mysql-oracle-and-more-with-llblgen/


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