You are viewing documentation for version 1 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: AWS::IAM::LoginProfile

Inherits:
Resource
  • Object
show all
Defined in:
lib/aws/iam/login_profile.rb

Overview

A login profile is a user name and password that enables a user to log in to the href="http://aws.amazon.com/console">http://aws.amazon.com/console AWS Management Console. Without a login profile, a user cannot access the console. (For information about accessing and using the AWS Management Console, see Using the AWS Management Console.)

Examples:

Setting a password for a user's login profile

user..password = "TheNewPassword"

Deleting the login profile for a user

user..delete

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#userObject (readonly)



41
42
43
# File 'lib/aws/iam/login_profile.rb', line 41

def user
  @user
end

Instance Method Details

#deletenil

Note:

Deleting a user's login profile does not prevent a user from accessing IAM through the command line interface or the API. To prevent all user access you must also either make the access key inactive or delete it. For more information about making keys inactive or deleting them, see User#access_keys.

Deletes the login profile for the specified user, which terminates the user's ability to access AWS services through the IAM login page.

Returns:

  • (nil)


85
86
87
88
# File 'lib/aws/iam/login_profile.rb', line 85

def delete
  client.(resource_options)
  nil
end

#exists?Boolean

Returns True if a login profile exists for the user.

Returns:

  • (Boolean)

    True if a login profile exists for the user.



91
92
93
94
95
96
97
# File 'lib/aws/iam/login_profile.rb', line 91

def exists?
  client.(resource_options)
rescue Errors::NoSuchEntity => e
  false
else
  true
end

#password=(password) ⇒ Object

Sets a new password for the login profile, creating the profile if no profile currently exists for the user.

Parameters:

  • password (String)

    The new password for the user.



51
52
53
54
55
56
57
58
# File 'lib/aws/iam/login_profile.rb', line 51

def password=(password)
  options = resource_options(:password => password)
  client.(options)
  password
rescue Errors::NoSuchEntity => e
  client.(options)
  password
end

#password_reset_required=(bool) ⇒ Object

Set whether a user needs to update their password when they next signin.

Parameters:

  • bool (Boolean)

    If the password needs to be reset on next login



63
64
65
66
67
68
69
70
# File 'lib/aws/iam/login_profile.rb', line 63

def password_reset_required=(bool)
 options = resource_options(:password_reset_required => bool)
 client.(options)
 bool
rescue Errors::NoSuchEntity => e
# a password has to be set for us to be able to create a login_profile :(
 raise ArgumentError, "Unable force password reset when no password is set"
end