gcgov/framework-service-auth-oauth-server 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gcgov/framework-service-auth-oauth-server

最新稳定版本:v2.0.0

Composer 安装命令:

composer require gcgov/framework-service-auth-oauth-server

包简介

Plugin enables a full fledged oauth server generating access and refresh tokens. Authentication can be provided as username/password or via third party Oauth providers.

README 文档

README

Service to extend gcgov/framework

Primary purpose

  • Implement a full Oauth service for authenticating to app. Provides functionality to authenticate users via third party Oauth providers or username/password database.

Impact to application

  • Router:
    • Adds routes:
      • Adds route /.well-known/jwks.json - provides endpoint to enable front end validation of tokens generated by the app
      • Adds route /.well-known/openid-configuration - provides public oauth configuration endpoint
      • Adds route /auth/fileToken - create a short lived access token that can be used in the url for supported routes
      • Adds route /auth/out - kills refresh token for user and removes any session and cookie data
      • Adds route /auth/authorize - GET and POST for authenticating user and generating access and refresh tokens
      • Adds route /auth/hybridauth/{provider} - Return endpoint for third party Oauth providers
      • Adds route /auth/verifyMfaSecret - used to configure user by validating MFA code and saving MFA secret for user
      • Adds route /auth/verifyMfaCode - for validating an MFA code for a user with MFA already configured
    • Adds authentication guard:
      • All routes in application with authentication=true must pass this guard. Checks the HTTP Authorization header, or url parameter fileAccessToken for routes with allowShort.

Installation:

Configuration

Allowed Users

By default, users attempting to sign in who not already present in the user database collection will be prevented from signing in. To enable sign in for any user who passes the third party Oauth provider authentication, set config variable blockNewUsers=false. When blockNewUsers=false, any user successfully authenticated by the third party Oauth provider will be automatically added to the database user config

$oauthConfig = oauthConfig::getInstance();
$oauthConfig->setBlockNewUsers( false );

New User Default Roles

When blockNewUsers=false, new users will be automatically added to the user database collection. To set the default roles that a new user should be assigned at creation, provide the roles to the setBlockNewUsers method.

$oauthConfig = oauthConfig::getInstance();
$oauthConfig->setBlockNewUsers( false, [ 'Role1.Read', 'Role2.Read', 'Role2.Write' ] );

统计信息

  • 总下载量: 81
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-08-07