Class: AWS::IAM::AccessKey
- Inherits:
-
Resource
- Object
- Core::Resource
- Resource
- AWS::IAM::AccessKey
- Defined in:
- lib/aws/iam/access_key.rb
Instance Attribute Summary collapse
-
#id ⇒ String
(also: #access_key_id)
readonly
Returns the access key id.
-
#status ⇒ Symbol
readonly
The status of this access key.
-
#user ⇒ User?
readonly
Returns the user this access key belongs to.
Attributes included from Core::Model
Instance Method Summary collapse
-
#activate! ⇒ nil
Activates this access key.
-
#active? ⇒ Boolean
Returns true if this access key is active.
-
#credentials ⇒ Hash
Returns a hash that should be saved somewhere safe.
-
#deactivate! ⇒ nil
Deactivates this access key.
-
#delete ⇒ Object
Deletes the access key.
-
#inactive? ⇒ Boolean
Returns true if this access key is inactive.
-
#initialize(access_key_id, options = {}) ⇒ AccessKey
constructor
A new instance of AccessKey.
-
#secret ⇒ String
(also: #secret_access_key)
Returns the secret access key.
-
#user_name ⇒ String?
Returns the name of the user this access key belogns to.
Methods inherited from Resource
#exists?, prefix_update_attributes, update_prefix
Methods inherited from Core::Resource
attribute_providers, attribute_providers_for, attributes, #attributes_from_response, define_attribute_type, #eql?, #inspect, new_from
Methods included from Core::Cacheable
Methods included from Core::Model
#client, #config_prefix, #inspect
Constructor Details
#initialize(access_key_id, options = {}) ⇒ AccessKey
Returns a new instance of AccessKey.
27 28 29 30 31 32 |
# File 'lib/aws/iam/access_key.rb', line 27 def initialize access_key_id, = {} @id = access_key_id [:secret_value] = nil unless .has_key?(:secret_value) @user = [:user] @user ? super(@user, ) : super() end |
Instance Attribute Details
#id ⇒ String (readonly) Also known as: access_key_id
Returns the access key id.
40 41 42 |
# File 'lib/aws/iam/access_key.rb', line 40 def id @id end |
#status ⇒ Symbol (readonly)
The status of this access key. Status may be :active
or :inactive
.
20 21 22 |
# File 'lib/aws/iam/access_key.rb', line 20 def status @status end |
#user ⇒ User? (readonly)
Returns the user this access key belongs to. Returns nil
if this access key belongs to the AWS account and not a specific user.
37 38 39 |
# File 'lib/aws/iam/access_key.rb', line 37 def user @user end |
Instance Method Details
#activate! ⇒ nil
Activates this access key.
109 110 111 112 |
# File 'lib/aws/iam/access_key.rb', line 109 def activate! self.status = 'Active' nil end |
#active? ⇒ Boolean
Returns true if this access key is active.
92 93 94 |
# File 'lib/aws/iam/access_key.rb', line 92 def active? status == :active end |
#credentials ⇒ Hash
147 148 149 |
# File 'lib/aws/iam/access_key.rb', line 147 def credentials { :access_key_id => id, :secret_access_key => secret } end |
#deactivate! ⇒ nil
Deactivates this access key.
123 124 125 126 |
# File 'lib/aws/iam/access_key.rb', line 123 def deactivate! self.status = 'Inactive' nil end |
#delete ⇒ Object
Deletes the access key.
129 130 131 132 |
# File 'lib/aws/iam/access_key.rb', line 129 def delete client.delete_access_key() nil end |
#inactive? ⇒ Boolean
Returns true if this access key is inactive.
97 98 99 |
# File 'lib/aws/iam/access_key.rb', line 97 def inactive? status == :inactive end |
#secret ⇒ String Also known as: secret_access_key
Returns the secret access key.
You can only access the secret for newly created access keys. Calling secret
on existing access keys raises an error.
78 79 80 |
# File 'lib/aws/iam/access_key.rb', line 78 def secret secret_value or raise 'secret is only available for new access keys' end |
#user_name ⇒ String?
Returns the name of the user this access key belogns to. If the access key belongs to the account, nil
is returned.
87 88 89 |
# File 'lib/aws/iam/access_key.rb', line 87 def user_name @user ? @user.name : nil end |