coddin-web/oidc-client-laravel-wrapper

jumbojett的OpenID Connect客户端的Laravel包装器

1.5.0 2024-07-15 12:01 UTC

This package is auto-updated.

Last update: 2024-09-15 12:36:35 UTC


README

build License: MIT codecov

OpenID Connect客户端 - Laravel包装器

这是一个基于jumbojett的OpenID Connect客户端(jumbojett/openid-connect-php)的Laravel包装器。

此包将设置一个中间件组,可用于使用OpenID Connect验证保护Web路由和使用令牌验证保护API路由。

使此库正常工作需要以下几件事

  • 您的IDP应支持OpenID Connect与OAuth 2(.1)
  • 您的IDP已注册了您的客户端
  • 实现此包的应用程序应与您的IDP具有相同的私钥
    • 这是验证/解析JWT所需

当此包完成验证令牌为合法时,将触发一个事件供目标应用程序消费。此事件应执行例如 Auth::login($user),以便让Laravel完全了解此包已处理授权。

UserAuthorizedEvent将广播用户Uuid、用户名和用户电子邮件,您的应用程序应通过这些值之一(最好是UUID)了解用户。

注销(包括IDP)尚未完全实现。要本地执行它,只需要终止会话。

您可以使用laravel/passport设置IDP或使用例如与steverhoades/oauth2-openid-connect-server结合的Symfony应用程序自行设置。

或者更好的是使用我们的IDP包,它是一个可直接使用的Symfony bundle,具有清晰简洁的README以及完全实现了上述库。 OpenIDConnect IDP Symfony bundle