我已经设置了azure AD,以使用其laravel应用程序进行身份验证。 错误: Microsoft身份验证:invalid_request:输入参数'redirect_uri'的提供的值无效。期望值是一个与为此客户端应用程序注册的重定向URI匹配的URI。
但是,我遇到以下问题。 在Azure中,我已将重定向URL设置为例如google.com或https://mydomainn.com/mydirectory,但它始终告诉我相同的错误。 也许它的代码相关? 如果是这样,这是我唯一的一段代码
@php
session_start();
$config = [
'authentication' => [
'ad' => [
'client_id' => 'REMOVED FOR THIS POST',
'client_secret' => 'REMOVED FOR THIS POST',
'enabled' => 'yes',
]
]
];
$request = new \Zend\Http\PhpEnvironment\Request();
$ad = new \Magium\ActiveDirectory\ActiveDirectory(
new \Magium\Configuration\Config\Repository\ArrayConfigurationRepository($config),
Zend\Psr7Bridge\Psr7ServerRequest::fromZend(new \Zend\Http\PhpEnvironment\Request())
);
$entity = $ad->authenticate();
echo $entity->getName() . '<Br />';
echo $entity->getPreferredUsername() . '<Br />';
@endphp
基本上发现了here和here这块小魔法 只是通过composer安装它,然后从仓库中复制粘贴此代码,它应该可以工作,但是,嗯……有人知道如何解决该错误吗?
edit:我不断重定向到的url是一个错误,我的索引页位于uri参数中。连我指定的那个都没有 编辑: 如果我在浏览器中手动编辑重定向URL,它将起作用。所以可以说我去了mydomain.com,它将我重定向到
https://login.live.com/oauth20_authorize.srf?client_id=clientidhere&scope=profile+openid+email+offline_access+User.Read&redirect_uri=https%3a%2f%2fwww.mydomain.de%2fdirectory%2ffolder%2fpublic%2f&response_type=code&state=...
然后它不起作用,如果我将%2fwww.mydomain.de%2fdirectory%2ffolder%2fpublic更改为https://www.mydomain.de/directory/folder/public,则它可以工作。我只能在地址栏中直接这样做。