Class: SDM::User
- Inherits:
-
Object
- Object
- SDM::User
- Defined in:
- lib/models/porcelain.rb
Overview
A User can connect to resources they are granted directly, or granted via roles.
Instance Attribute Summary collapse
-
#created_at ⇒ Object
CreatedAt is the timestamp when the user was created.
-
#email ⇒ Object
The User's email address.
-
#employee_number ⇒ Object
Internal employee ID used to identify the user.
-
#external_id ⇒ Object
External ID is an alternative unique ID this user is represented by within an external service.
-
#first_name ⇒ Object
The User's first name.
-
#id ⇒ Object
Unique identifier of the User.
-
#last_name ⇒ Object
The User's last name.
-
#managed_by ⇒ Object
Managed By is a read only field for what service manages this user, e.g.
-
#manager_id ⇒ Object
Manager ID is the ID of the user's manager.
-
#password ⇒ Object
Password is a write-only field that can be used to set the user's password.
-
#permission_level ⇒ Object
PermissionLevel is the user's permission level e.g.
-
#resolved_manager_id ⇒ Object
Resolved Manager ID is the ID of the user's manager derived from the manager_id, if present, or from the SCIM metadata.
-
#scim ⇒ Object
SCIM contains the raw SCIM metadata for the user.
-
#suspended ⇒ Object
Suspended is a read only field for the User's suspended state.
-
#tags ⇒ Object
Tags is a map of key, value pairs.
Instance Method Summary collapse
-
#initialize(scim: nil, created_at: nil, email: nil, employee_number: nil, external_id: nil, first_name: nil, id: nil, last_name: nil, managed_by: nil, manager_id: nil, password: nil, permission_level: nil, resolved_manager_id: nil, suspended: nil, tags: nil) ⇒ User
constructor
A new instance of User.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(scim: nil, created_at: nil, email: nil, employee_number: nil, external_id: nil, first_name: nil, id: nil, last_name: nil, managed_by: nil, manager_id: nil, password: nil, permission_level: nil, resolved_manager_id: nil, suspended: nil, tags: nil) ⇒ User
Returns a new instance of User.
18066 18067 18068 18069 18070 18071 18072 18073 18074 18075 18076 18077 18078 18079 18080 18081 18082 18083 18084 18085 18086 18087 18088 18089 18090 18091 18092 18093 18094 18095 18096 18097 18098 |
# File 'lib/models/porcelain.rb', line 18066 def initialize( scim: nil, created_at: nil, email: nil, employee_number: nil, external_id: nil, first_name: nil, id: nil, last_name: nil, managed_by: nil, manager_id: nil, password: nil, permission_level: nil, resolved_manager_id: nil, suspended: nil, tags: nil ) @scim = scim == nil ? "" : scim @created_at = created_at == nil ? nil : created_at @email = email == nil ? "" : email @employee_number = employee_number == nil ? "" : employee_number @external_id = external_id == nil ? "" : external_id @first_name = first_name == nil ? "" : first_name @id = id == nil ? "" : id @last_name = last_name == nil ? "" : last_name @managed_by = managed_by == nil ? "" : managed_by @manager_id = manager_id == nil ? "" : manager_id @password = password == nil ? "" : password @permission_level = == nil ? "" : @resolved_manager_id = resolved_manager_id == nil ? "" : resolved_manager_id @suspended = suspended == nil ? false : suspended @tags = == nil ? SDM::() : end |
Instance Attribute Details
#created_at ⇒ Object
CreatedAt is the timestamp when the user was created
18035 18036 18037 |
# File 'lib/models/porcelain.rb', line 18035 def created_at @created_at end |
#email ⇒ Object
The User's email address. Must be unique.
18037 18038 18039 |
# File 'lib/models/porcelain.rb', line 18037 def email @email end |
#employee_number ⇒ Object
Internal employee ID used to identify the user.
18039 18040 18041 |
# File 'lib/models/porcelain.rb', line 18039 def employee_number @employee_number end |
#external_id ⇒ Object
External ID is an alternative unique ID this user is represented by within an external service.
18041 18042 18043 |
# File 'lib/models/porcelain.rb', line 18041 def external_id @external_id end |
#first_name ⇒ Object
The User's first name.
18043 18044 18045 |
# File 'lib/models/porcelain.rb', line 18043 def first_name @first_name end |
#id ⇒ Object
Unique identifier of the User.
18045 18046 18047 |
# File 'lib/models/porcelain.rb', line 18045 def id @id end |
#last_name ⇒ Object
The User's last name.
18047 18048 18049 |
# File 'lib/models/porcelain.rb', line 18047 def last_name @last_name end |
#managed_by ⇒ Object
Managed By is a read only field for what service manages this user, e.g. StrongDM, Okta, Azure.
18049 18050 18051 |
# File 'lib/models/porcelain.rb', line 18049 def managed_by @managed_by end |
#manager_id ⇒ Object
Manager ID is the ID of the user's manager. This field is empty when the user has no manager.
18051 18052 18053 |
# File 'lib/models/porcelain.rb', line 18051 def manager_id @manager_id end |
#password ⇒ Object
Password is a write-only field that can be used to set the user's password. Currently only supported for update.
18054 18055 18056 |
# File 'lib/models/porcelain.rb', line 18054 def password @password end |
#permission_level ⇒ Object
PermissionLevel is the user's permission level e.g. admin, DBA, user.
18056 18057 18058 |
# File 'lib/models/porcelain.rb', line 18056 def @permission_level end |
#resolved_manager_id ⇒ Object
Resolved Manager ID is the ID of the user's manager derived from the manager_id, if present, or from the SCIM metadata. This is a read-only field that's only populated for get and list.
18060 18061 18062 |
# File 'lib/models/porcelain.rb', line 18060 def resolved_manager_id @resolved_manager_id end |
#scim ⇒ Object
SCIM contains the raw SCIM metadata for the user. This is a read-only field.
18033 18034 18035 |
# File 'lib/models/porcelain.rb', line 18033 def scim @scim end |
#suspended ⇒ Object
Suspended is a read only field for the User's suspended state.
18062 18063 18064 |
# File 'lib/models/porcelain.rb', line 18062 def suspended @suspended end |
#tags ⇒ Object
Tags is a map of key, value pairs.
18064 18065 18066 |
# File 'lib/models/porcelain.rb', line 18064 def @tags end |
Instance Method Details
#to_json(options = {}) ⇒ Object
18100 18101 18102 18103 18104 18105 18106 |
# File 'lib/models/porcelain.rb', line 18100 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |