Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php openid连接获取令牌_Php_Token_Jwt_Openid Connect - Fatal编程技术网

php openid连接获取令牌

php openid连接获取令牌,php,token,jwt,openid-connect,Php,Token,Jwt,Openid Connect,我尝试使用php和openid库。我建立了连接,但得到了秘密id和客户端,但当我想得到令牌时,我不知道如何获得 在小型文档中,下一个示例是: $oidc = new OpenIDConnectClient('https://id.provider.com', 'ClientIDHere', 'ClientSecretHere'); $oidc->providerC

我尝试使用php和openid库。我建立了连接,但得到了秘密id和客户端,但当我想得到令牌时,我不知道如何获得

在小型文档中,下一个示例是:

$oidc = new OpenIDConnectClient('https://id.provider.com',
                                'ClientIDHere',
                                'ClientSecretHere');
$oidc->providerConfigParam(array('token_endpoint'=>'https://id.provider.com/connect/token'));
$oidc->addScope('my_scope');

// this assumes success (to validate check if the access_token property is there and a valid JWT) :
$clientCredentialsToken = $oidc->requestClientCredentialsToken()->access_token;
但函数
requestClientCredentialsToken()
在库中不存在。是否有人知道如何获取令牌,或者推荐另一个php库,在这里我可以定义作用域、重定向uri、从开放服务器获取客户机机密和id,当然也可以获取令牌


提前感谢

有一个公共函数
getAccessToken()
。 您应该修改上面的代码,如下所示:

$oidc = new OpenIDConnectClient('https://id.provider.com',
                            'ClientIDHere',
                            'ClientSecretHere');
$oidc->providerConfigParam(array('token_endpoint'=>'https://id.provider.com/connect/token'));
$oidc->addScope('my_scope');

$oicd->authenticate();
$mytoken=$oidc->getAccessToken();

同样,当我使用$this->oidc->authenticate()时;我从auth服务获得登录页面,当我登录并转到重定向uri时,我有太多的重定向,我的应用程序就会死掉。有人知道这个问题的解决方案吗?您可能应该有两段代码——一段创建身份验证URL并发送重定向响应,另一段处理来自OAuth2服务器的重定向。您不能同步请求令牌。