Rails - การรับรองความถูกต้องรองด้วย Devise?

ฉันต้องทำชั้นการรับรองความถูกต้องรองสำหรับพื้นที่พิเศษในการเข้าถึง ดังนั้นหลังจากเข้าสู่ระบบแล้วผู้ใช้สามารถเข้าสู่ระบบได้อีกครั้งหลังจากนั้น ฉันใช้ Devise สำหรับการตรวจสอบสิทธิ์แบบปกติอยู่แล้ว ดังนั้นฉันจึงใช้ฟิลด์รหัสผ่านไม่ได้อีกต่อไป และฉันไม่สามารถใช้ฟีเจอร์ has_secure_password Rails bultin ได้เช่นกัน

มีทางเลือกอื่นนอกเหนือจากวิธีแบบแมนนวล 100% หรือไม่?

ฉันค้นคว้าและพบทางเลือกอื่นด้วย BCrypt แต่ฉันเห็นว่ามันต้องมีช่องเกลือรหัสผ่าน มีวิธีแก้ไขใดบ้างที่ไม่ต้องใช้นาเกลือ?


person Jirico    schedule 26.02.2013    source แหล่งที่มา
comment
ถามหน่อยว่าทำไมถึงไม่อยากใช้นาเกลือ?   -  person Catfish    schedule 26.02.2013
comment
เนื่องจากตารางผู้ใช้ของฉันมีหลายช่องอยู่แล้ว ฉันจะใช้รุ่นอื่นกับ Devise ตามที่ Edward แนะนำ ดูเหมือนว่าจะเป็นแนวทางที่ดีที่สุดสำหรับฉัน   -  person Jirico    schedule 27.02.2013


คำตอบ (1)


ทำไมไม่เพิ่มบทบาทให้กับโมเดลผู้ใช้ของคุณ - ตัวเลือก 2 ที่นี่ https://github.com/plataformatec/devise/wiki/How-To:-Add-an-Admin-Role

หากคุณต้องการการเข้าสู่ระบบ 2 ครั้งจริงๆ คุณสามารถมี 2 รุ่นอุปกรณ์ที่แตกต่างกันโดยสิ้นเชิง - ดูการกำหนดค่าหลายรุ่น ใน readme https://github.com/plataformatec/devise

person Edward    schedule 26.02.2013
comment
ผู้ใช้ทุกคนจะมีตัวเลือกนี้ คุ้มค่าไหมที่จะเพิ่มบทบาทให้กับทุกคน? - person Jirico; 26.02.2013
comment
การเพิ่มบทบาทนั้นง่ายกว่าการตรวจสอบสิทธิ์สองครั้ง - person Edward; 26.02.2013
comment
หากทุกคนสามารถทำได้ คุณแน่ใจหรือไม่ว่าจำเป็นต้องเพิ่มบทบาทหรือตรวจสอบสิทธิ์อีกครั้ง - person Edward; 26.02.2013
comment
ใช่ ใช้สำหรับตรวจสอบการเข้าถึงบัญชี ดังนั้นบทบาทเป็นแนวทางที่ดีที่สุดหรือไม่? - person Jirico; 26.02.2013
comment
ฉันคิดว่าตัวเลือกที่สอง การใช้อุปกรณ์หลายรุ่นจะพอดี ขอบคุณ! - person Jirico; 27.02.2013