2

AOL openid を使用しようとしていますが、「AOL はこの Web サイトを確認できません」というメッセージが表示されます

このエラーを回避する手順を誰か教えてもらえますか?

サンプルコードがある場合は共有してください - 事前に感謝します

AOL openid で Web サイトを確認できません

よろしく、

ナビン


ジョージは答えてくれてありがとう、しかし私はそれを機能させるのに問題があります、私のxrdsファイルは次のとおりです

<?php
header('Content-type: application/xrds+xml');
$xrdstext = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
    $xrdstext =$xrdstext . "<xrds:XRDS";
    $xrdstext =$xrdstext ." xmlns:xrds=\"xri://$xrds\"";
    $xrdstext =$xrdstext ." xmlns:openid=\"http://openid.net/xmlns/1.0\"";
    $xrdstext =$xrdstext ." xmlns=\"xri://$xrd*($v*2.0)\">\n";
    $xrdstext =$xrdstext ."<XRD>\n";
    $xrdstext =$xrdstext ."<Service xmlns=\"xri://$xrd*($v*2.0)\">\n";
    $xrdstext =$xrdstext ."<Type>http://specs.openid.net/auth/2.0/return_to</Type>\n";
    $xrdstext =$xrdstext ."<URI>http://localhost:56709/myproject/socialoauth.aspx</URI>\n";
    $xrdstext =$xrdstext ."</Service>\n";
    $xrdstext =$xrdstext ."</XRD>\n";
    $xrdstext =$xrdstext ."</xrds:XRDS>";
echo $xrdstext;
?>  

私のリクエストURLは

https://api.screenname.aol.com/auth/openidServer?openid.claimed_id=http://openid.aol.com/navinleon&openid.identity=http://openid.aol.com/navinleon&openid.return_to=http: //localhost:56709/myproject/socialoauth.aspx&openid.realm=http://mydomain.com/xrds/&openid.mode=checkid_setup&openid.assoc_handle=f457ae42e94c11e0811b002655277584&openid.ns=http://specs.openid.net/auth/2.0&openid .ns.alias3=http://openid.net/srv/ax/1.0&openid.alias3.if_available=alias5&openid.alias3.required=alias1,alias2,alias3,alias4,alias6,alias7&openid.alias3.mode=fetch_request&openid.alias3. type.alias1=http://axschema.org/namePerson/friendly&openid.alias3.count.alias1=1&openid.alias3.type.alias2=http://axschema.org/namePerson/first&openid.alias3.count.alias2=1&openid. alias3.type.alias3=http://axschema.org/namePerson/last&openid.alias3.count.alias3=1&openid.alias3.type.alias4=http://axschema.org/contact/country/home&openid.alias3.count.alias4=1&openid.alias3.type.alias5=http: //axschema.org/pref/language&openid.alias3.count.alias5=1&openid.alias3.type.alias6=http://axschema.org/contact/email&openid.alias3.count.alias6=1&openid.alias3.type.alias7= http://axschema.org/birthDate&openid.alias3.count.alias7=1エイリアス7=1エイリアス7=1

何が間違っているのかわかりません
助けてください...

4

1 に答える 1

6

したがって、このエラーの理由は、AOL が Rely Party return_to URL を検証できないことです (OpenID 2 仕様 [ http://openid.net/specs/openid-authentication-2_0.html#rp_discovery]のセクション 13 による)。このステップは、指定されたレルムが return_to URL と一致しない攻撃からユーザーを保護するために実行されます。

このエラーを取り除くには、指定されたレルム文字列を介して XRDS 検出をサポートする必要があります。スクリーンショットに基づくと、これは localhost で実行されているサーバーにサポートを追加することを意味します。

基本的に、application/xrds+xml の Accept HTTP ヘッダーを持つhttp://localhost:56709への HTTP 要求は、X-XRDS-Location の応答 HTTP ヘッダーと XRDS ファイルの場所を指定する値を返す必要があります。 XRDS ドキュメントを直接返すことができます。

XRDS ドキュメントは次のようになります...

<?xml version="1.0" encoding="UTF-8"?>
<xrds:XRDS
  xmlns:xrds="xri://$xrds"
  xmlns:openid="http://openid.net/xmlns/1.0"
  xmlns="xri://$xrd*($v*2.0)">
  <XRD>

  <Service xmlns="xri://$xrd*($v*2.0)">
    <Type>http://specs.openid.net/auth/2.0/return_to</Type>
    <URI>http://localhost:56709/return_to/url/path</URI>
  </Service>

  </XRD>
</xrds:XRDS>

注: localhost への HTTP リクエストは、そのサイトに到達できないため失敗します。警告は、XRDS ドキュメントが到達可能なサイトに展開されるまで続きます。

于 2011-09-23T13:20:57.243 に答える