类:Mongo::Crypt:: KMS:: Azure::CredentialsRetriever Private

继承:
对象
  • 对象
显示全部
定义于:
构建/ruby-driver-v2.19/lib/ mongo /crypt/ KMS / Azure /credentials_retriever.rb

Overview

此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。

凭证使用Azure元数据托管检索Azure档案。 在Azure环境中使用驾驶员时,应使用此选项。

常量摘要折叠

DEFAULT_HOST =

此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。

获取Azure元数据的默认托管。

'169.254.169.254'

类方法摘要折叠

类方法详细信息

.fetch_access_token(extra_headers: {}, metadata_host: nil) ⇒ KMS::Azure::AccessToken

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

从 Azure 元数据主机获取 Azure 档案。

参数:

  • extra_headers 哈希 (默认为: {}

    要传递给请求的额外标头。 这用于测试。

  • metadata_host ( string | nil ) (默认为: nil

    Azure元数据托管。 这用于测试。

返回:

引发:



41
42
43
44
45
46
47
48
49
50
51
# File ' 构建/Ruby-driver-v2.19/lib/ mongo /crypt/ KMS / Azure /credentials_retriever.rb', 第41行

def self.fetch_access_token(extra_headers: {}, metadata_host: nil)
  uri, req = prepare_request(extra_headers, )
  parsed_response = fetch_response(uri, req)
  AZURE::AccessToken.new(
    parsed_response.获取('access_token'),
    整型(parsed_response.获取(' expires_in '))
  )
救援 KeyError, ArgumentError => e
  提高 KMS::CredentialsNotFound,
        " Azure元数据响应无效:' #{ parsed_response } '; #{ e . class } : #{ e . message } "
end