为了账号安全,请及时绑定邮箱和手机立即绑定

尝试连接到 Microsoft Graph 时出现“权限不足,无法完成操作”

尝试连接到 Microsoft Graph 时出现“权限不足,无法完成操作”

PHP
守候你守候我 2021-09-18 13:53:39
我想将我的 Symfony4 应用程序配置为使用msgraph-sdk-php库读取和发送电子邮件。我的应用程序将从单个帐户读取和发送电子邮件,我不想将其密码暴露给我的应用程序用户。因此,我不会使用 OAuth 进行登录。我的第一次体验是这段代码(用于检索邮箱用户配置文件):<?phpnamespace App\Graph;use Microsoft\Graph\Exception\GraphException;use Microsoft\Graph\Graph;use Microsoft\Graph\Model\User;class GraphService{    function sentTestMessage() {        $userId = "************************************";        $tenantId = "************************************";        $clientId = "************************************";        $clientSecret = "***************************";        $guzzle = new \GuzzleHttp\Client();        $url = 'https://login.microsoftonline.com/' . $tenantId . '/oauth2/token?api-version=1.0';        $token = json_decode($guzzle->post($url, [            'form_params' => [                'client_id' => $clientId,                'client_secret' => $clientSecret,                'resource' => 'https://graph.microsoft.com/',                'grant_type' => 'client_credentials',            ],        ])->getBody()->getContents());        $accessToken = $token->access_token;        $graph = new Graph();        $graph->setAccessToken($accessToken);        $user=new \stdClass();        try {            $user = $graph->createRequest("GET", "/users/".$userId)                ->setReturnType(User::class)                ->execute();        } catch (GraphException $e) {            $user->getGivenName=$e->getMessage();        }        return "Hello, I am $user->getGivenName() ";    }}但是随后 Symfony 向我显示了一个带有此消息的异常页面:客户端错误:GET https://graph.microsoft.com/v1.0/users/...导致403 Forbidden响应:{“错误”: {"code": "Authorization_RequestDenied","message": "权限不足,无法完成操作(已截断...)现在,在同一用户登录的https://developer.microsoft.com/en-us/graph/graph-explorer 中运行时,相同的查询有效。这些是我给应用程序的权限:我应该怎么做才能克服上述问题?
查看完整描述

1 回答

?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

您使用客户端凭据流在代码中获取访问令牌,因此您需要应用程序权限而不是委派权限。

//img1.sycdn.imooc.com//61457f130001bd7b13910373.jpg


查看完整回答
反对 回复 2021-09-18
  • 1 回答
  • 0 关注
  • 292 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信