类:Mongo::Auth::Aws::CredentialsRetriever Private
- 继承:
-
对象
- 对象
- Mongo::Auth::Aws::CredentialsRetriever
- 定义于:
- build/Ruby-driver-v2.19/lib/ mongo /auth/ Amazon Web Services /credentials_retriever.rb
Overview
此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。
从各种来源检索Amazon Web Services档案。
此类支持从以下位置检索Amazon Web Services档案:
-
传递的用户(接收通过 URI 选项和Ruby选项传递给客户端的凭证)
-
AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_SESSION_TOKEN 环境变量(常用于Amazon Web Services SDK 和各种工具,以及Amazon Web Services Lambda )
-
AssumeRoleWithWebIdentity API调用
-
EC 2元数据端点
-
ECS元数据端点
上面列出的来源是按指定的顺序查阅的。 使用包含三个凭证组件(访问权限密钥 ID、秘密访问权限密钥或会话令牌)中任何一个的第一个来源。 如果指定了任何凭证组件,则凭证组件必须形成有效的设立;也就是说,访问权限密钥 ID 和秘密访问权限密钥必须始终一起提供,如果提供了会话令牌,则还必须提供密钥 ID 和秘密密钥。 如果来源提供了部分凭证,则凭证检索将失败并出现异常。
常量摘要折叠
- METADATA_TIMEOUT =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
元数据操作超时时间(以秒为单位)。
身份验证规范建议设置10秒超时,但考虑到端点本质上是本地端点,这个超时时间似乎过长。
5
实例属性摘要折叠
-
# user ⇒ Auth::User | nil
只读
private
用户对象(如果提供)。
实例方法摘要折叠
-
#凭证⇒ Auth::Aws::Credentials
private
检索有效的凭证设立(如果可能),或引发 Auth::InvalidConfiguration。
-
#initialize (user = nil,credentials_cache: CredentialsCache.instance) ⇒ CredentialsRetriever
构造函数
private
CredentialsRetriever 的新实例。
构造函数详情
#initialize (user = nil,credentials_cache: 实例) ⇒ CredentialsRetriever
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 CredentialsRetriever 的新实例。
61 62 63 64 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /auth/ Amazon Web Services /credentials_retriever.rb', 第61行 def 初始化(user = nil, 凭证缓存: CredentialsCache.实例) @user = user @credentials_cache = 凭证缓存 end |
实例属性详细信息
# user ⇒ Auth::User | nil (只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 用户对象(如果已提供)。
67 68 69 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /auth/ Amazon Web Services /credentials_retriever.rb', 第67行 def user @user end |
实例方法详细信息
#凭证⇒ Auth::Aws::Credentials
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
检索有效的凭证设立(如果可能),或引发 Auth::InvalidConfiguration。
78 79 80 81 82 83 84 85 86 87 88 89 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /auth/ Amazon Web Services /credentials_retriever.rb', 第78行 def 凭证 凭证 = credentials_from_user(user) return 凭证 除非 凭证.nil? 凭证 = credentials_from_environment return 凭证 除非 凭证.nil? 凭证 = @credentials_cache.获取 { get_credentials_from_endpoints } return 凭证 除非 凭证.nil? 提高 auth::AWS::CredentialsNotFound end |