2

特に、主張されたIDの検証に興味があります。Googleの手順では、XRDSドキュメントへのリンクを含む要求されたIDのドメインからメタデータを取得する方法について説明しています。Googleアプリの場合、そのメタファイルは次の場所にあります。

http://example.com/.well-known/host-meta または https://www.google.com/accounts/o8/.well-known/host-meta?hd=example.com

私の質問は、これらのホストメタパスの両方が仕様へのグーグル拡張ですか、それとも後者だけですか?これを適切にサポートするために、標準のopen-idライブラリの1つを更新しようとしています。また、Googleの拡張機能をサポートするコードを適切に分離したままにしておきたいと考えています。

open-idスペックファイルに「.well-known/host-meta」への参照が見つからないようです。

4

1 に答える 1

1

プロトコル自体はほとんど標準です。たとえば、/。well-known/host-metaは検出用のLRDD仕様の一部です。Google Appsの問題は、独自の検出情報をホストしているドメインがあったとしてもごくわずかであるという事実に関係しているため、example.comのようなドメインのプロバイダーを検出しようとすると失敗します。そのため、Googleにはhost-metaファイルの代替の場所があります。これは、GoogleアプリをサポートするOpenIDRPが認識している必要があります。

さらに、これらの外部委託されたXRDSファイルの署名を検証する場合は、hosted-id.google.comを有効な署名者として許可する必要があります。通常、署名証明書の件名が検出対象のドメインと同じであることを確認しますが、Googleはターゲットドメインに代わって署名しているため、追加の確認が必要です。

関連するメモとして、Google Appsのサポートは、直接またはアドオンを介して、さまざまなライブラリにすでに追加されています。

PHP:php-openid + http://code.google.com/p/php-openid-apps-discovery/

Ruby:ruby-openid + http://code.google.com/p/ruby-openid-apps-discovery/

.NET:DotNetOpenAuth(組み込み)

Java:OpenID4Java + http://code.google.com/p/step2

Python:https ://github.com/adieu/python-openid

于 2011-12-16T22:46:08.483 に答える