passport raven
1.0.0
โมดูลการรับรองความถูกต้อง Raven (มหาวิทยาลัยเคมบริดจ์) สำหรับหนังสือเดินทาง
สิ่งนี้ทำให้คุณสามารถตรวจสอบนักศึกษาของมหาวิทยาลัยเคมบริดจ์ได้
มันใช้ได้กับทั้งนักศึกษาปัจจุบันและอดีตและเจ้าหน้าที่
npm install passport passport-raven
ดู test/server.js
var RavenStrategy = require ( 'passport-raven' ) ;
passport . use ( new RavenStrategy ( {
desc : 'My Raven Application' ,
msg : 'we need to check you are a current student' ,
// use demonstration raven server in development
debug : process . env . NODE_ENV !== 'production'
} , function ( crsid , params , callback ) {
// You can skip this check if you want to support ex students and staff as well
if ( params . isCurrent ) {
callback ( null , { id : crsid } ) ;
} else {
callback ( new Error ( 'My Raven application is only for current students and staff' ) ) ;
}
} ) ) ;
ตัวเลือก:
desc
(สตริง) - คำอธิบายของเว็บไซต์ที่จะแสดงบนหน้าเข้าสู่ระบบอีกาmsg
(String) - คำอธิบายว่าทำไมจึงขอการรับรองความถูกต้องiact
(บูลีน) - ตั้งค่าเป็น true
เพื่อบังคับให้ผู้ใช้พิมพ์ชื่อผู้ใช้และรหัสผ่านแม้ว่าจะเข้าสู่ระบบแล้วก็ตาม ตั้งค่าเป็น false
เพื่อเข้าสู่ระบบเฉพาะเมื่อสามารถทำได้โดยไม่ต้องโต้ตอบกับผู้ใช้ ค่าเริ่มต้นเป็น null
audience
(สตริง) - ชื่อโดเมนแบบเต็มของเว็บไซต์ที่ขอการรับรองความถูกต้องpassReqToCallback
(บูลีน) - หากตั้งค่า ออบเจ็กต์คำขอจะถูกระบุเป็นอาร์กิวเมนต์แรกของฟังก์ชันตรวจสอบ การตรวจสอบการโทรกลับจึงสามารถใช้สถานะของคำขอเพื่อจัดการเพิ่มเติมได้ passport . use ( new RavenStrategy ( {
desc : 'My Raven Application' ,
msg : 'we need to check you are a current student' ,
// use demonstration raven server in development
debug : process . env . NODE_ENV !== 'production' ,
passReqToCallback : true
} , function ( req , crsid , params , callback ) {
// this function could be defined elsewhere eg in a Sails app services protocol
... .
}
} ) ;
`
พารามิเตอร์:
พารามิเตอร์รวมข้อมูลทั้งหมดที่ส่งคืนจากเซิร์ฟเวอร์ ต่อไปนี้เป็นสองตัวอย่าง:
นักศึกษาปัจจุบัน/บุคลากร:
{ ver: '3',
status: '200',
msg: '',
issue: '20141007T144208Z',
id: '1412692928-14998-17',
url: 'http://localhost:3000/login',
principal: 'test0001',
ptags: 'current',
auth: 'pwd',
sso: '',
life: '36000',
params: '',
kid: '901',
sig: 'qEK1GusOfnfh6D8BkmTi2iIsEXLmrfOd2TMEXStedOgaDXF7BQnN1nQvD8mudXhLO-rDLhp3JetrAded1XNeNaJPwdU5ZNIf5bJrvln2iqwbY280B4nGusvcOQjDoD1UJQ-J3hEpTDe7miDzGwSB-7zvdkpzt56qPgmUIIYHWs4_',
isCurrent: true }
นักศึกษา/เจ้าหน้าที่ที่ผ่านมา:
{ ver: '3',
status: '200',
msg: '',
issue: '20141007T144128Z',
id: '1412692886-14816-35',
url: 'http://localhost:3000/login',
principal: 'test0450',
ptags: '',
auth: '',
sso: 'pwd',
life: '35960',
params: '',
kid: '901',
sig: 'otTWl-KZbXbRUMLjwpkoiT.nu8J7GnoHu6V8JzXjAu.XPGBBxRAJXEzCEQfc05jcoFmGWdHWPLjmJgNgom2vnltCu-CZOlAd9105v-k.9.dZQJAc65ugIlHDvPPT2icXiT1zo9.wzkCA.5vwLeUrhA8oKAa-6cuxbbzkwH-.Cc8_',
isCurrent: false }
app . get ( '/auth/raven' , passport . authenticate ( 'raven' ) , function ( req , res ) {
// Successful authentication, redirect home.
res . redirect ( '/' ) ;
} ) ;
เอ็มไอที