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.
18293 18294 18295 18296 18297 18298 18299 18300 18301 18302 18303 18304 18305 18306 18307 18308 18309 18310 18311 18312 18313 18314 18315 18316 18317 18318 18319 18320 18321 18322 18323 18324 18325 |
# File 'lib/models/porcelain.rb', line 18293 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
18262 18263 18264 |
# File 'lib/models/porcelain.rb', line 18262 def created_at @created_at end |
#email ⇒ Object
The User's email address. Must be unique.
18264 18265 18266 |
# File 'lib/models/porcelain.rb', line 18264 def email @email end |
#employee_number ⇒ Object
Internal employee ID used to identify the user.
18266 18267 18268 |
# File 'lib/models/porcelain.rb', line 18266 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.
18268 18269 18270 |
# File 'lib/models/porcelain.rb', line 18268 def external_id @external_id end |
#first_name ⇒ Object
The User's first name.
18270 18271 18272 |
# File 'lib/models/porcelain.rb', line 18270 def first_name @first_name end |
#id ⇒ Object
Unique identifier of the User.
18272 18273 18274 |
# File 'lib/models/porcelain.rb', line 18272 def id @id end |
#last_name ⇒ Object
The User's last name.
18274 18275 18276 |
# File 'lib/models/porcelain.rb', line 18274 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.
18276 18277 18278 |
# File 'lib/models/porcelain.rb', line 18276 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.
18278 18279 18280 |
# File 'lib/models/porcelain.rb', line 18278 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.
18281 18282 18283 |
# File 'lib/models/porcelain.rb', line 18281 def password @password end |
#permission_level ⇒ Object
PermissionLevel is the user's permission level e.g. admin, DBA, user.
18283 18284 18285 |
# File 'lib/models/porcelain.rb', line 18283 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.
18287 18288 18289 |
# File 'lib/models/porcelain.rb', line 18287 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.
18260 18261 18262 |
# File 'lib/models/porcelain.rb', line 18260 def scim @scim end |
#suspended ⇒ Object
Suspended is a read only field for the User's suspended state.
18289 18290 18291 |
# File 'lib/models/porcelain.rb', line 18289 def suspended @suspended end |
#tags ⇒ Object
Tags is a map of key, value pairs.
18291 18292 18293 |
# File 'lib/models/porcelain.rb', line 18291 def @tags end |
Instance Method Details
#to_json(options = {}) ⇒ Object
18327 18328 18329 18330 18331 18332 18333 |
# File 'lib/models/porcelain.rb', line 18327 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 |