rs/auth-onekey

phpCAS Laravel 封装 OneKey,IQVIA 为医疗专业人员提供的身份验证系统。

v1.2.0 2024-04-30 15:49 UTC

This package is auto-updated.

Last update: 2024-08-30 16:32:01 UTC


README

#Auth/OneKey

phpCAS Laravel 封装 OneKey,IQVIA 为医疗专业人员提供的身份验证系统

Latest Version on Packagist GitHub Tests Action Status Total Downloads

此仓库可用于提供与 [OneKey](https://www.iqvia.com/locations/united-states/solutions/life-sciences/information-solutions/essential-information/onekey-reference-assets/onekey-web)的 SSO 身份验证。

安装

您可以通过 composer 安装此包

composer require rs/auth-onekey

但是,默认情况下,包设置为 debug = falselive = true 模式。后者确定客户端被重定向到的提供者 URL(live = true - 'www.owa-secure.com', live = false - 'www.rowa-secure.com')。如果您想覆盖它,请发布配置文件

php artisan vendor:publish --tag=onekey-config

一旦 onekey.php 配置文件被发布,请更新您的 .env 文件

//.env

ONE_KEY_DEBUG=<boolean>
ONE_KEY_LIVE=<boolean>

使用方法

注册您的路由

//web.php

Route::get('onekey/callback', [OneKeyLoginController::class, 'handleProviderCallback']);

然后,在您的控制器中实现 handleProviderCallback() 方法。例如

//Http\Controllers\OneKeyLoginController.php

use RedSnapper\OneKey\OneKeyProvider;

//..//

public function handleProviderCallback(OneKeyProvider $provider)
{   // Get OneKey user from the provider
    $providerUser = $provider->user();
    
    //Map the one-key user with your User model, save in DB
    // or perform any other action
    $user = new User([
        'id' => $providerUser->getId(),
        'name' => $providerUser->getFullName(),
        'email' => $providerUser->getEmail(),
        'guard' => 'web'
    ]);
    
    session()->put($user->guard, $user->toArray());
    auth($user->guard)->login($user);

    return redirect()->intended();
}

###获取用户数据的所有可用方法

$user = $provider->user();

$user->getId(); //?string 
$user->getEmail(); //?string 
$user->getFirstName(); //?string 
$user->getLastName(); //?string 
$user->getFullName(); //?string 
$user->getCity(); //?string 
$user->getProfession(); //?string 
$user->getPhone(); //?string
$user->isHCP(); //bool
$user->trustLevel(); //int

$user->getRaw(); //array

测试

vendor/bin/phpunit

composer test

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

贡献

有关详细信息,请参阅 CONTRIBUTING

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件