クラス: Mongo::Auth::Gs sapi::Concern Private

継承:
SaslConversionBase すべて表示
定義:
lib/mongo/auth/glaspi/convert.rb

Overview

このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。

クライアントとサーバー間の単一の Kerberos 通信に関する動作を定義します。

以来

  • 2.0.0

定数の概要の削減

START_MESSAGE =

この定数は、プライベート API の一部です。 この定数は将来削除または変更される可能性があるため、可能な限り使用しないでください。

基本クライアントの最初のメッセージ。

以来

  • 2.0.0

{ saslStart: 1, autoAuthorize: 1 }.freeze
CONTINU_MESSAGE =

この定数は、プライベート API の一部です。 この定数は将来削除または変更される可能性があるため、可能な限り使用しないでください。

基本クライアントの続行メッセージ。

以来

  • 2.0.0

{ saslContinue: 1 }.freeze

SaslConversionBaseから継承された定数

SaslConversionBase::CLIENT_CONTINUE_MESSAGESaslConversionBase::CLIENT_FIRST_MESSAGE

インスタンス属性の概要を折りたたむ

ConversionBaseから継承された属性

# connection #user

インスタンス メソッドの概要を折りたたむ

SaslConversionBaseから継承されたメソッド

#start

ConversionBaseから継承されたメソッド

ビルド_メッセージ 、推測的_auth_document# validate_external_auth_source

コンストラクターの詳細

#初期化(ユーザー、接続、** ops )= 変換

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

新しい交換を作成します。

例:

新しい交換を作成します。

Conversation.new(user, 'test.example.com')

パラメーター:

  • user 認証::ユーザー

    変換するユーザー。

  • 接続 Mongo::Connection

    認証する接続。

以来

  • 2.0.0



41
42
43
44
45
46
47
48
49
50
51
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、41 行を

デフォルト 初期化(user, 接続, **ops)
  スーパー
  ホスト = 接続.address.ホスト
  が必要 'mongo_kerberos' ただし、 定義済み?(mongo::GsaapiNative)
  @authenticator = mongo::GsaapiNative::認証子.新着情報(
    user.name,
    ホスト,
    user.auth_mech_properties[:service_name] || 'mongodb',
    user.auth_mech_properties[:canonicalize_host_name] || false
  )
end

インスタンス属性の詳細

#認証プロバイダー→ 認証子(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

認証子 ネイティブ SASL 認証子を返します。

次の値を返します。

  • 認証子

    authenticator ネイティブ SASL 認証システム。

以来

  • 2.0.0



54
55
56
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、54 行を

デフォルト 認証子
  @authenticator
end

ID整数(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

交信の ID を取得します。

次の値を返します。

  • (整数)

    スレッド ID。

以来

  • 2.0.0



59
60
61
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、59 行を

デフォルト id
  @id
end

インスタンス メソッドの詳細

# client_first_document =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

以来

  • 2.0.0



61
62
63
64
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、61 行を

デフォルト client_first_document
  start_token = 認証子.initialize_challenge
  START_MESSAGE.merge(メカニズム: Gssapi::メカニズム, ペイロード: start_token)
end

#continue(reply_document, connection) ⇒ Protocol::Message

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

ディスカッションを続行します。

パラメーター:

  • response_document BSON::Document

    前のメッセージの応答ドキュメント。

次の値を返します。

以来

  • 2.0.0



72
73
74
75
76
77
78
79
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、72 行を

デフォルト 続行(response_document, 接続)
  @id = response_document[' searchId ']
  ペイロード = response_document['ペイロード']

  continue_token = 認証子.Estimated_challenge(ペイロード)
  セレクター = CONTINU_MESSAGE.merge(ペイロード: continue_token, searchId: id)
  build_message(接続, ' $external ', セレクター)
end

#finalize(connection) ⇒ Protocol::Message

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

次に実行するクエリを返します。

次の値を返します。

以来

  • 2.0.0



88
89
90
91
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、88 行を

デフォルト finalize(接続)
  セレクター = CONTINU_MESSAGE.merge(ペイロード: @continue_token, searchId: id)
  build_message(接続, ' $external ', セレクター)
end

#process_Continue_response (reply_document) =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

以来

  • 2.0.0



81
82
83
84
85
# ファイル 'lib/mongo/auth/gsapi/convert.rb' は、81 行を

デフォルト Process_Continue_resResponse(response_document)
  ペイロード = response_document['ペイロード']

  @continue_token = 認証子.Estimated_challenge(ペイロード)
end