Php 在Onelogin Openid重定向中的MFA后获取未经授权的错误

Php 在Onelogin Openid重定向中的MFA后获取未经授权的错误,php,openid,openid-connect,onelogin,Php,Openid,Openid Connect,Onelogin,我正在使用php测试概念验证,没有框架。我想使用Onelogin和OpenID连接流来确认现有用户(已在Onelogin上设置)的身份,然后重定向到我的登录页面以完成此过程。我找不到类似的问题的答案,所以我在这里 使用 我设置了第一个api调用,将OpenId Connect(OIDC)->SSO->Application Type设置为Web,将令牌端点设置为POST。 有了这个,我可以在成功返回到我的测试系统登录时通过这个流程。但这不会传回任何用户可识别信息,因此我无法在db系统上确认用户

我正在使用php测试概念验证,没有框架。我想使用Onelogin和OpenID连接流来确认现有用户(已在Onelogin上设置)的身份,然后重定向到我的登录页面以完成此过程。我找不到类似的问题的答案,所以我在这里

使用 我设置了第一个api调用,将OpenId Connect(OIDC)->SSO->Application Type设置为Web,将令牌端点设置为POST。 有了这个,我可以在成功返回到我的测试系统登录时通过这个流程。但这不会传回任何用户可识别信息,因此我无法在db系统上确认用户

据我所知,在这里的所有示例中,我登录到Onelogin并使用MFA OK。我的手机上有谷歌认证。一切看起来都很好。然后,我可以确认我已在测试用户下登录到Onelogin

测试用户没有权限,因为我的最终用户将仅使用Onelogin在我的最终系统上确认身份

因此,我想如果有人不关心确认启动系统上的用户,这是很好的。但我确实需要这样做,除非我错过了一些我不能用这种方式(网络)的东西

此外,我似乎能够登录,并重定向回我的测试系统登录一次使用这个,但如果我再次尝试后不久,我得到UnauthorizedError。这让我想到先将用户从Onelogin注销,但不,在两者之间注销用户没有任何效果

因此,我尝试将应用程序类型设置为Native,希望我们可以重定向回我在应用程序中设置的重定向URL,但在MFA之后,我会不断收到未经授权的错误,即使在检查角色、策略和应用程序设置后,我似乎也无法通过这一点

我已尝试将令牌端点指向所有选项,但在MFA或我登录到Onelogin后仍会收到未经授权的错误消息,但我没有重定向到应用程序设置中设置的测试登录url

现在不知所措,需要帮助


编辑添加-用户已添加到应用,我可以通过应用和用户确认。我还可以看到,在我的用户的活动中,我可以看到它写着“登录到Openid连接(OIDC)”。因此,似乎我正在登录,但仍然收到未经授权的错误401。

首先执行身份验证,然后执行授权。因此,如果您正在对Onelogin进行身份验证,并且收到“未经授权”错误,则在所有条件相同的情况下,您在Onelogin中配置的OIDC应用不会直接或通过Onelogin角色为您分配用户


所以,检查你的应用程序。转到“访问”选项卡。查看应用分配给谁。确认您的测试用户已分配给该角色。或者转到“用户”选项卡,检查您的用户是否已分配。

首先执行身份验证,然后执行授权。因此,如果您正在对Onelogin进行身份验证,并且收到“未经授权”错误,则在所有条件相同的情况下,您在Onelogin中配置的OIDC应用不会直接或通过Onelogin角色为您分配用户


所以,检查你的应用程序。转到“访问”选项卡。查看应用分配给谁。确认您的测试用户已分配给该角色。或者转到“用户”选项卡,检查您的用户是否已分配。

来自@nial\u atlasidentity的评论是正确的。这里最可能的答案是您的用户没有被分配到您的OIDC应用程序

分配用户后,您将能够完成并从返回的
id\u令牌
中获取用户信息。您还可以使用返回的
access\u令牌
,从中获取用户详细信息


如果您想测试流并检查返回的令牌的内容,我建议使用。

来自@nial\u atlasidentity的注释是正确的。这里最可能的答案是您的用户没有被分配到您的OIDC应用程序

分配用户后,您将能够完成并从返回的
id\u令牌
中获取用户信息。您还可以使用返回的
access\u令牌
,从中获取用户详细信息


如果要测试流并检查返回的令牌的内容,我建议使用。

将用户分配给应用程序正在使用的角色。我检查用户,用户告诉我他们已经是会员了。我已经检查了两个地方,它们都说了同样的话。如果我的评论不清楚角色已经设置好了,我仍然会得到错误。还有其他地方会给我同样的错误吗?用户被分配到应用程序正在使用的角色。我检查用户,用户告诉我他们已经是会员了。我已经检查了两个地方,它们都说了同样的话。如果我的评论不清楚角色已经设置好了,我仍然会得到错误。还有其他地方会给我同样的错误吗?嗨,里奇。用户已被分配到应用程序。我已经通过用户和应用程序对此进行了检查,但仍然得到了错误。是否有其他设置会影响此操作?@santosvella请使用OneLogin打开支持票证。如果您在票据中提供您的客户id,我们可以对此进行进一步调查。谢谢你,里奇。我想这应该是OIDC应用程序客户端id而不是API客户端id?是的,是OIDC应用程序客户端id。谢谢。嗨,Rich。用户已被分配到应用程序。我已经通过用户和应用程序对此进行了检查,但仍然得到了错误。是否有其他设置会影响此操作?@santosvella请使用OneLogin打开支持票证。如果您在票据中提供您的客户id,我们可以对此进行进一步调查。谢谢你,里奇。我想这应该是OIDC应用程序客户端id而不是API客户端id?是的,是OIDC应用程序客户端id。谢谢。