first push
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
namespace app\common\utils;
|
||||
|
||||
class OauthClients
|
||||
{
|
||||
|
||||
/**
|
||||
* 生成 OAuth2 client 凭证
|
||||
*
|
||||
* @param int $idBytes 用于生成 client_id 的随机字节长度(最终 hex 长度 = $idBytes * 2)
|
||||
* @param int $secretBytes 用于生成 client_secret 的随机字节长度(最终 hex 长度 = $secretBytes * 2)
|
||||
* @return array ['client_id' => string, 'client_secret' => string]
|
||||
*/
|
||||
public function generateClientCredentials(int $idBytes = 16, int $secretBytes = 32): array
|
||||
{
|
||||
// 生成随机字节,并转为十六进制字符串
|
||||
$clientId = bin2hex(random_bytes($idBytes));
|
||||
$clientSecret = bin2hex(random_bytes($secretBytes));
|
||||
|
||||
return [
|
||||
'client_id' => $clientId,
|
||||
'client_secret' => $clientSecret,
|
||||
];
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user