passport raven
1.0.0
Raven(University of Cambridge) 여권 인증 모듈.
이를 통해 캠브리지 대학교의 학생을 인증할 수 있습니다.
이는 현재 및 과거 학생과 교직원 모두에게 적용됩니다.
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
(문자열) - Raven 로그인 페이지에 표시될 웹사이트에 대한 설명msg
(문자열) - 인증이 요청되는 이유에 대한 설명iact
(부울) - 사용자가 이미 로그인한 경우에도 사용자 이름과 비밀번호를 입력하도록 강제하려면 true
로 설정합니다. 사용자 상호 작용 없이 로그인할 수 있는 경우에만 로그인하려면 false
로 설정합니다. 기본값은 null
입니다.audience
(문자열) - 인증을 요청하는 웹사이트의 정규화된 도메인 이름입니다.passReqToCallback
(Boolean) - 설정된 경우 요청 개체가 확인 기능의 첫 번째 인수로 제공됩니다. 따라서 확인 콜백은 요청 상태를 사용하여 추가 처리를 조정할 수 있습니다. 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 ( '/' ) ;
} ) ;
MIT