クラス: Mongo::Crypt::KMS::Azure::Credentials Private

継承:
オブジェクト
  • オブジェクト
すべて表示
次による拡張機能。
転送可能
次のことが含まれます。
検証
定義:
lib/mongo/crypt/KMS/ Azure/credentials.rb

Overview

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

Azure KMS 認証情報オブジェクトには、Azure KMS プロバイダーを使用するための認証情報が含まれています。

定数の概要の削減

FORMAT_HINT =

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

'Azure KMS プロバイダー オプションは、\{ tenant_id: "TENANT-ID"、client_id: "TENANT_ID"、client_secret: "CLIENT_SECRET" } の形式にする必要があります。'

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

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

検証に含まれるメソッド

#validate_param, validate_tls_options

コンストラクターの詳細

#初期化(opts) =認証情報

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

パラメーター ハッシュ形式で Azure KMS 認証情報オブジェクトを作成します。

パラメーター:

  • ops ハッシュ

    Azure KMS プロバイダーの認証情報を含むハッシュ

オプション ハッシュ( opts ):

  • :tenant_id string

    Azure tenant id.

  • :client_id string

    Azure クライアント ID。

  • :client_secret string

    Azure クライアントシークレット。

  • : identity_プラットフォーム_エンドポイント string | nil

    Azure ID プラットフォーム エンドポイント(任意)。

次の値が発生します。

  • (ArgumentError)

    必須 オプションが欠落しているか、形式が正しくない場合。



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合61

デフォルト 初期化(ops)
  @opts = ops
  return 場合 空の場合

  場合 ops[:access_token]
    @access_token = ops[:access_token]
  else
    @tenant_id = validate_param(:tenant_id, ops, FORMAT_HINT)
    @client_id = validate_param(:client_id, ops, FORMAT_HINT)
    @client_secret = validate_param(:client_secret, ops, FORMAT_HINT)
    @ identity_プラットフォーム_エンドポイント = validate_param(
      : identity_プラットフォーム_エンドポイント, ops, FORMAT_HINT, 必須: false
    )
  end
end

インスタンス属性の詳細

# access_token 詳しくは、 string | nil (読み取り専用)

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

Azure アクセス トークンを返します。

次の値を返します。

  • ( string | nil )

    Azure アクセス トークン。



41
42
43
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合41

デフォルト access_token
  @access_token
end

#client_id = string (読み取り専用)

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

Azure クライアント ID を返します。

次の値を返します。

  • ( string )

    Azure クライアント ID。



32
33
34
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合32

デフォルト client_id
  @client_id
end

# client_secret = string (読み取り専用)

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

Azure クライアントシークレットを返します。

次の値を返します。

  • ( string )

    Azure クライアントシークレット。



35
36
37
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合35

デフォルト client_secret
  @client_secret
end

# identity_ Platform_endpoint = string | nil (読み取り専用)

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

Azure ID プラットフォーム エンドポイントを返します。

次の値を返します。

  • ( string | nil )

    Azure ID プラットフォーム エンドポイント。



38
39
40
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合38

デフォルト identity_プラットフォーム_エンドポイント
  @ identity_プラットフォーム_エンドポイント
end

# tenant_id 詳しくは、 string (読み取り専用)

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

Azure テナント ID を返します。

次の値を返します。

  • ( string )

    Azure tenant id.



29
30
31
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合29

デフォルト tenant_id
  @tenant_id
end

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

#to_documentBSON::Document

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

認証情報オブジェクトを libmongocrypt 形式の BSON ドキュメントに変換します。

次の値を返します。

  • BSON::Document

    libmongocrypt 形式の Azure KMS 認証情報。



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# ファイル 'lib/mongo/crypt/KMS/ Azure/credentials.rb' の場合80

デフォルト to_document
  return BSON::ドキュメント.新着情報 場合 空の場合

  場合 access_token
    BSON::ドキュメント.新着情報({ accessToken: access_token })
  else
    BSON::ドキュメント.新着情報(
      {
        tenantId: @tenant_id,
        clientId: @client_id,
        clientSecret: @client_secret
      }
    ).タップ 行う |bson|
      ただし、 identity_プラットフォーム_エンドポイント.nil?
        bson.update({ identityPlatformEndpoint: identity_プラットフォーム_エンドポイント })
      end
    end
  end
end