class AWS::STS
def new_federated_session(name, opts = {})
-
(FederatedSession)
-
Options Hash:
(**opts)
-
:policy
(String, AWS::STS::Policy
) -- A policy -
:duration
(Integer
) -- The duration, in seconds, that
Parameters:
-
opts
(Hash
) -- Options for getting temporary credentials. -
name
(String
) -- The name of the federated user associated
def new_federated_session(name, opts = {}) opts = opts.merge(:name => name) case when opts[:policy].kind_of?(String) || !opts[:policy] # leave it alone when opts[:policy].respond_to?(:to_json) opts[:policy] = opts[:policy].to_json end get_session(:get_federation_token, opts) do |resp, session_opts| session_opts.merge!( :user_id => resp[:federated_user][:federated_user_id], :user_arn => resp[:federated_user][:arn], :packed_policy_size => resp[:packed_policy_size] ) FederatedSession.new(session_opts) end end