クラス: Mongo::Crypt::KMS::GCP::CredentialsRetried Private

継承:
オブジェクト
  • オブジェクト
すべて表示
定義:
build/ruby-Driver-v2.19/lib/ mongo /crypt/ KMS / GCP /credentials_retriever.rb

Overview

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

このクラスは、Google Compute Engine メタデータ ホストを使用して GPC 認証情報を検索します。 これは、ドライバーが Google Compute Engine のインスタンスで使用される場合に使用する必要があります。

定数の概要の削減

METADATA_HOST_ENV =

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

'GCE_METADATA_HOST'
DEFAULT_HOST =

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

'metadata.google.internal'

クラスメソッドの概要を折りたたむ

クラスメソッドの詳細

fetch_access_token =オブジェクト

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



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# ファイル 'Build/ruby-Driver-v2.19/lib/ mongo /crypt/ KMS / GCP /credentials_retriever.rb', 行32

デフォルト 自己.fetch_access_token
  ホスト = ENV.fetch(METADATA_HOST_ENV) { DEFAULT_HOST }
  uri = URI(" http:// #{ host } /computeMetadata/v 1 /instance/service-accounts/default/token ")
  req = Net::HTTP::得る.新着情報(uri)
  req['Metadata-Flavor'] = 'Google'
  resp = Net::HTTP.始める(uri.Hostname, uri.ポート, use_ssl: false) 行う |http|
    http.リクエスト(req)
  end
  場合 resp.コード != '200'
    発生 KMS::CredentialsNotFound,
       GCE メタデータ ホストがコード#{ resp .コード}で応答したとあります。
  end
  parsed_resp = JSON.parse(resp.body)
  parsed_resp.fetch('access_token')
ヘルプ JSON::ParserError, KeyError => e
  発生 KMS::CredentialsNotFound,
    " GCP メタデータ レスポンスは無効です: " #{ resp . body }の場合、 #{ e .クラス} : #{ e .メッセージ} "
  ヘルプ ::タイムアウト::エラー, IOError, SystemCallError, SocketError => e
    発生 KMS::CredentialsNotFound,
           GCP メタデータ応答を受信できませんでした。 #{ e .クラス} : #{ e .メッセージ} "
end