百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
P

passport-openidconnect

> 安全
开源

针对 Passport 和 Node.js 的 OpenID Connect 身份验证策略。

199 stars0 点赞1 次浏览
访问官网GitHub

工具介绍

针对 Passport 和 Node.js 的 OpenID Connect 身份验证策略。

passport-openidconnect

Passport strategy for authenticating with OpenID Connect.

This module lets you authenticate using OpenID Connect in your Node.js applications. By plugging into Passport, OpenID Connect-based sign in can be easily and unobtrusively integrated into any application or framework that supports Connect-style middleware, including Express.

Install

bash
$ npm install passport-openidconnect

Usage

Configure Strategy

The OpenID Connect authentication strategy authenticates users using their account at an OpenID Provider (OP). The strategy needs to be configured with the provider's endpoints, as well as a client ID and secret that has been issued by the provider to the app. Consult the provider's documentation for the locations of these endpoints and instructions on how to register a client.

The strategy takes a verify function as an argument, which accepts issuer and profile as arguments. issuer is set to an identifier for the OP. profile contains the user's profile information stored in their account at the OP. When authenticating a user, this strategy uses the OpenID Connect protocol to obtain this information via a sequence of redirects and back-channel HTTP requests to the OP.

The verify function is responsible for determining the user to which the account at the OP belongs. In cases where the account is logging in for the first time, a new user record is typically created automatically. On subsequent logins, the existing user record will be found via its relation to the OP account.

Because the verify function is supplied by the application, the app is free to use any database of its choosing. The example below illustrates usage of a SQL database.

…

Define Routes

Two routes are needed in order to allow users to log in with their account at an OP. The first route redirects the user to the OP, where they will authenticate:

javascript
app.get('/login', passport.authenticate('openidconnect'));

The second route processes the authentication response and logs the user in, when the OP redirects the user back to the app:

javascript
app.get('/cb',
  passport.authenticate('openidconnect', { failureRedirect: '/login', failureMessage: true }),
  function(req, res) {
    res.redirect('/');
  });

Examples

  • todos-express-openidconnect

    Illustrates how to use the OpenID Connect strategy within an Express application.

  • todos-express-auth0

    Illustrates how to use the OpenID Connect strategy to integrate with Auth0 in an Express application. For developers new to Passport and getting started, a tutorial is available.

License

The MIT License

Copyright (c) 2011-2022 Jared Hanson

Issues· 54 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

JavaScriptoauth2openid-connectpassport

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月18日
分类安全
定价开源

> 相关工具

O
OWASP ZAP
开源 Web 应用安全扫描器
O
owasp-wstg-tracker
Simple web app to track OWASP WSTG security testing progress
H
homebridge-mi-gateway-security
XiaoMi Gateway Security plugin for HomeBridge.