JanRain : Positive Assertionの検証

実際の処理はGenericConsumerのcomplete()が行います。

  complete()

  • "_complete_" + mode メソッドを動的にコールする。
  • Positive Assertionの場合は、_complete_id_res()

_complete_id_res

  • _checkSetupNeededでcheckid_setupをやらないといけないかどうかを判断。
  • self._doIdResで応答検証。

_doIdRes

  • self._checkReturnTo で戻りURLの検証
  • self._verifyDiscoveryResults でエンドポイント検証
  • self._idResCheckSignatureでメッセージの署名検証
  • self._idResCheckNonce でnonce検証
  • 正常の場合、SuccessResponseオブジェクトを返す。

_idResCheckSignature

  • アソシエーションハンドルをメッセージから戻す。
  • ハンドルがあったらそのオブジェクトでassoc.checkMessageSignature()で検証。
  • ハンドルが無かったら_checkAuthでOPに検証依頼を行う。

_checkAuth

  • もらったメッセージをもとに _createCheckAuthRequestでcheck_authenticationのメッセージを作る。
  • _makeKVPostでダイレクトリクエスト。
  • self._processCheckAuthResponseの結果を返して終了。

_createCheckAuthRequest

  • もらったメッセージをコピー(ディープコピー)
  • modeをcheck_authenticationに変える。
  • コピーしたメッセージを返して終了。
カテゴリー: 未分類 パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中