philwilliammee / samlserviceprovider
一个用于 SAML 2.0 服务提供者(SP)认证的 Laravel 包
dev-main
2022-04-18 16:23 UTC
Requires
- illuminate/support: ~8|~9
Requires (Dev)
- orchestra/testbench: ~9
- phpunit/phpunit: ~9.0
This package is auto-updated.
Last update: 2024-09-18 21:25:29 UTC
README
SAML2.0 服务提供者 Laravel 包,使用此包通过 SAML2.0 登录到 IDP。请随时为此包做出贡献。此包的测试量最少,不提供安全保证。自行承担风险。
安装
通过 Composer
composer require philwilliammee/samlserviceprovider
用法
运行迁移
php artisan migrate
使用以下命令发布配置和视图
php artisan vendor:publish --provider="PhilWilliammee\SamlServiceProvider\SamlServiceProviderServiceProvider"
编辑 config/samlserviceprovider.php
配置文件,以满足您的需求。
此包附带一些 blade 模板,可以帮助您开始使用。您可以在 resources/views/vendor/philwilliammee
中查看它们。
示例用法
<x-samlserviceprovider::login redirect="/user"> Login </x-samlserviceprovider::login> <x-samlserviceprovider::logout> Logout </x-samlserviceprovider::logout>
然后在用户控制器中调用
$session_id = session()->getId(); $user_attributes = SamlServiceProvider::getAttributes($session_id);
您可能想要使用 Laravel 登录用户,如下所示
$email = $user_attributes['mail'][0]; $name = $user_attributes['displayName'][0]; $user = User::where('email', $email)->first(); if (!$user) { $user = User::create([ 'email' => $email, 'name' => $name, ]); } Auth::login($user);
变更日志
有关最近更改的更多信息,请参阅变更日志。
测试
composer test
贡献
请参阅contributing.md 以获取详细信息和一个待办事项列表。
安全
如果您发现任何与安全相关的问题,请通过电子邮件philwilliammee@gmail.com 而不是使用问题跟踪器。
致谢
许可证
MIT。有关更多信息,请参阅许可证文件。