class AWS::STS

def new_federated_session(name, opts = {})

Returns:
  • (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