intracto/fas-open-id-bundle

使用Fas Open Id进行身份验证的简单包

安装数量: 1,539

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 0

开放问题: 5

类型:symfony-bundle

1.1.4 2022-10-25 12:53 UTC

README

使用此包,您的应用用户可以使用联邦身份验证服务(FAS)通过OpenId登录到应用。

安装

使用Symfony Flex的应用

打开命令行,进入您的项目目录,并执行以下命令

$ composer require intracto/fas-open-id-bundle

不使用Symfony Flex的应用

步骤 1: 下载包

打开命令行,进入您的项目目录,并执行以下命令以下载此包的最新稳定版本

$ composer require intracto/fas-open-id-bundle

此命令需要您已全局安装Composer,如Composer文档中的安装章节中所述。

步骤 2: 启用包

然后,通过将其添加到项目config/bundles.php文件中注册的包列表来启用此包

// config/bundles.php

return [
    // ...
    Intracto\FasOpenIdBundle\IntractoFasOpenIdBundle::class => ['all' => true],
];

步骤 3: 注册包路由

在您的应用中加载包的路由

intracto_fas_open_id:
    resource: "@IntractoFasOpenIdBundle/Resources/config/routing.xml"

步骤 4: 配置

包配置

(如果未通过Flex执行,请在您的config/packages文件夹中创建一个intracto_fas_open_id.yaml文件)。

运行此包所需配置参数

  • client_id: 您注册应用的客户端ID
  • client_secret: 您注册应用的客户端密钥
  • scope: 此应用将使用的范围列表。可能的值包括profile、egovnrn、certificateInfo、citizen、enterprise和roles。openid角色将自动使用
  • auth_path: FasOpenIdAuthenticator将检查以进行用户验证的路由名称。此参数的默认值为intracto_fas_open_id.auth
  • target_path: 用户成功验证后将重定向到的路由名称
  • login_path: 用户需要登录时将重定向到的路由名称
  • user_class: 您的用户类的全称,这是可选的。请确保您的用户扩展了此包的用户类

防火墙配置

然后,您需要告诉应用防火墙(s)应使用哪个认证器。在防火墙(s)的guard参数下,您需要在认证器参数中追加intracto.fas_open_id.authenticator

security:
    providers:
        intracto_fas_open_id_user_provider:
            id: intracto.fas_open_id.user_provider
    ...
    my_firewall:
        ...
        guard:
            ...
            authenticators:
                - intracto.fas_open_id.authenticator
            provider: intracto_fas_open_id_user_provider

如果您想从FAS注销,请将intracto.fas_open_id.logout_handler添加到您的防火墙注销处理器中。