Class: SDM::User

Inherits:
Object
  • Object
show all
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

Instance Method Summary collapse

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.



17943
17944
17945
17946
17947
17948
17949
17950
17951
17952
17953
17954
17955
17956
17957
17958
17959
17960
17961
17962
17963
17964
17965
17966
17967
17968
17969
17970
17971
17972
17973
17974
17975
# File 'lib/models/porcelain.rb', line 17943

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 = permission_level == nil ? "" : permission_level
  @resolved_manager_id = resolved_manager_id == nil ? "" : resolved_manager_id
  @suspended = suspended == nil ? false : suspended
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
end

Instance Attribute Details

#created_atObject

CreatedAt is the timestamp when the user was created



17912
17913
17914
# File 'lib/models/porcelain.rb', line 17912

def created_at
  @created_at
end

#emailObject

The User's email address. Must be unique.



17914
17915
17916
# File 'lib/models/porcelain.rb', line 17914

def email
  @email
end

#employee_numberObject

Internal employee ID used to identify the user.



17916
17917
17918
# File 'lib/models/porcelain.rb', line 17916

def employee_number
  @employee_number
end

#external_idObject

External ID is an alternative unique ID this user is represented by within an external service.



17918
17919
17920
# File 'lib/models/porcelain.rb', line 17918

def external_id
  @external_id
end

#first_nameObject

The User's first name.



17920
17921
17922
# File 'lib/models/porcelain.rb', line 17920

def first_name
  @first_name
end

#idObject

Unique identifier of the User.



17922
17923
17924
# File 'lib/models/porcelain.rb', line 17922

def id
  @id
end

#last_nameObject

The User's last name.



17924
17925
17926
# File 'lib/models/porcelain.rb', line 17924

def last_name
  @last_name
end

#managed_byObject

Managed By is a read only field for what service manages this user, e.g. StrongDM, Okta, Azure.



17926
17927
17928
# File 'lib/models/porcelain.rb', line 17926

def managed_by
  @managed_by
end

#manager_idObject

Manager ID is the ID of the user's manager. This field is empty when the user has no manager.



17928
17929
17930
# File 'lib/models/porcelain.rb', line 17928

def manager_id
  @manager_id
end

#passwordObject

Password is a write-only field that can be used to set the user's password. Currently only supported for update.



17931
17932
17933
# File 'lib/models/porcelain.rb', line 17931

def password
  @password
end

#permission_levelObject

PermissionLevel is the user's permission level e.g. admin, DBA, user.



17933
17934
17935
# File 'lib/models/porcelain.rb', line 17933

def permission_level
  @permission_level
end

#resolved_manager_idObject

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.



17937
17938
17939
# File 'lib/models/porcelain.rb', line 17937

def resolved_manager_id
  @resolved_manager_id
end

#scimObject

SCIM contains the raw SCIM metadata for the user. This is a read-only field.



17910
17911
17912
# File 'lib/models/porcelain.rb', line 17910

def scim
  @scim
end

#suspendedObject

Suspended is a read only field for the User's suspended state.



17939
17940
17941
# File 'lib/models/porcelain.rb', line 17939

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



17941
17942
17943
# File 'lib/models/porcelain.rb', line 17941

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17977
17978
17979
17980
17981
17982
17983
# File 'lib/models/porcelain.rb', line 17977

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end