我目前正在使用NASA的EarthData登录名为论坛实现OAuth插件。我使用来自phpbb的OAuth教程(特别是该比特文件),以及NASA自己的SSO和php教程(在这里:https://developer.earthdata.nasa.gov/urs/urs-integration/implementing-earthdata-login-sso/sso-with-php)将OAuth文件拼凑在一起
不幸的是,该论坛的当前行为如下:
1-我按登录,然后论坛将我重定向到EarthData登录
2-我使用EarthData凭据登录
3-EarthData网站使我返回论坛,但我仍未经身份验证。
似乎包含登录信息的json字符串在浏览器的url中,但没有被下拉以验证用户身份。我在某处错过了一步吗?请参阅下面的最终身份验证代码片段:
public function perform_token_auth()
{
// Check the token exchange response status
if( $status != 200 )
{
header("HTTP/1.1 403 Forbidden");
exit(0);
}
$json = json_decode($result, true);
if( !isset($json['access_token']) )
{
header("HTTP/1.1 403 Forbidden");
exit(0);
}
$token = $json['access_token'];