Class: Comet::AllowedAdminUser
- Inherits:
-
Object
- Object
- Comet::AllowedAdminUser
- Defined in:
- lib/comet/models/allowed_admin_user.rb
Overview
AllowedAdminUser is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#allow_password_and_totplogin ⇒ Object
Returns the value of attribute allow_password_and_totplogin.
-
#allow_password_and_u2flogin ⇒ Object
deprecated
Deprecated.
This member has been deprecated since Comet version 21.12.0
-
#allow_password_and_web_authn_login ⇒ Object
Returns the value of attribute allow_password_and_web_authn_login.
-
#allow_password_login ⇒ Object
Returns the value of attribute allow_password_login.
-
#external_authentication_source ⇒ Object
Returns the value of attribute external_authentication_source.
-
#ipwhitelist ⇒ Object
A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as this admin account.
-
#organization_id ⇒ Object
Returns the value of attribute organization_id.
-
#password ⇒ Object
Returns the value of attribute password.
-
#password_format ⇒ Object
One of the PASSWORD_FORMAT_ constants.
-
#permissions ⇒ Object
Returns the value of attribute permissions.
-
#require_password_change ⇒ Object
This field is available in Comet 24.12.0 and later.
-
#totpkey ⇒ Object
Returns the value of attribute totpkey.
-
#totpkey_encryption_format ⇒ Object
One of the ENCRYPTIONMETHOD_ constants.
-
#u2fregistrations ⇒ Object
deprecated
Deprecated.
This member has been deprecated since Comet version 21.12.0
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
-
#username ⇒ Object
Returns the value of attribute username.
-
#web_authn_registrations ⇒ Object
Returns the value of attribute web_authn_registrations.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ AllowedAdminUser
constructor
A new instance of AllowedAdminUser.
-
#to_h ⇒ Hash
The complete object as a Ruby hash.
-
#to_hash ⇒ Hash
The complete object as a Ruby hash.
-
#to_json(options = {}) ⇒ String
The complete object as a JSON string.
Constructor Details
#initialize ⇒ AllowedAdminUser
Returns a new instance of AllowedAdminUser.
73 74 75 |
# File 'lib/comet/models/allowed_admin_user.rb', line 73 def initialize clear end |
Instance Attribute Details
#allow_password_and_totplogin ⇒ Object
Returns the value of attribute allow_password_and_totplogin.
35 36 37 |
# File 'lib/comet/models/allowed_admin_user.rb', line 35 def allow_password_and_totplogin @allow_password_and_totplogin end |
#allow_password_and_u2flogin ⇒ Object
This member has been deprecated since Comet version 21.12.0
39 40 41 |
# File 'lib/comet/models/allowed_admin_user.rb', line 39 def allow_password_and_u2flogin @allow_password_and_u2flogin end |
#allow_password_and_web_authn_login ⇒ Object
Returns the value of attribute allow_password_and_web_authn_login.
42 43 44 |
# File 'lib/comet/models/allowed_admin_user.rb', line 42 def allow_password_and_web_authn_login @allow_password_and_web_authn_login end |
#allow_password_login ⇒ Object
Returns the value of attribute allow_password_login.
32 33 34 |
# File 'lib/comet/models/allowed_admin_user.rb', line 32 def allow_password_login @allow_password_login end |
#external_authentication_source ⇒ Object
Returns the value of attribute external_authentication_source.
22 23 24 |
# File 'lib/comet/models/allowed_admin_user.rb', line 22 def external_authentication_source @external_authentication_source end |
#ipwhitelist ⇒ Object
A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as this admin account
65 66 67 |
# File 'lib/comet/models/allowed_admin_user.rb', line 65 def ipwhitelist @ipwhitelist end |
#organization_id ⇒ Object
Returns the value of attribute organization_id.
19 20 21 |
# File 'lib/comet/models/allowed_admin_user.rb', line 19 def organization_id @organization_id end |
#password ⇒ Object
Returns the value of attribute password.
29 30 31 |
# File 'lib/comet/models/allowed_admin_user.rb', line 29 def password @password end |
#password_format ⇒ Object
One of the PASSWORD_FORMAT_ constants
26 27 28 |
# File 'lib/comet/models/allowed_admin_user.rb', line 26 def password_format @password_format end |
#permissions ⇒ Object
Returns the value of attribute permissions.
68 69 70 |
# File 'lib/comet/models/allowed_admin_user.rb', line 68 def @permissions end |
#require_password_change ⇒ Object
This field is available in Comet 24.12.0 and later.
53 54 55 |
# File 'lib/comet/models/allowed_admin_user.rb', line 53 def require_password_change @require_password_change end |
#totpkey ⇒ Object
Returns the value of attribute totpkey.
60 61 62 |
# File 'lib/comet/models/allowed_admin_user.rb', line 60 def totpkey @totpkey end |
#totpkey_encryption_format ⇒ Object
One of the ENCRYPTIONMETHOD_ constants
57 58 59 |
# File 'lib/comet/models/allowed_admin_user.rb', line 57 def totpkey_encryption_format @totpkey_encryption_format end |
#u2fregistrations ⇒ Object
This member has been deprecated since Comet version 21.12.0
46 47 48 |
# File 'lib/comet/models/allowed_admin_user.rb', line 46 def u2fregistrations @u2fregistrations end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
71 72 73 |
# File 'lib/comet/models/allowed_admin_user.rb', line 71 def unknown_json_fields @unknown_json_fields end |
#username ⇒ Object
Returns the value of attribute username.
16 17 18 |
# File 'lib/comet/models/allowed_admin_user.rb', line 16 def username @username end |
#web_authn_registrations ⇒ Object
Returns the value of attribute web_authn_registrations.
49 50 51 |
# File 'lib/comet/models/allowed_admin_user.rb', line 49 def web_authn_registrations @web_authn_registrations end |
Instance Method Details
#clear ⇒ Object
77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/comet/models/allowed_admin_user.rb', line 77 def clear @username = '' @organization_id = '' @external_authentication_source = '' @password_format = 0 @password = '' @u2fregistrations = [] @web_authn_registrations = [] @totpkey_encryption_format = 0 @totpkey = '' @ipwhitelist = '' @permissions = Comet::AdminUserPermissions.new @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
# File 'lib/comet/models/allowed_admin_user.rb', line 100 def from_hash(obj) raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash obj.each do |k, v| case k when 'Username' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @username = v when 'OrganizationID' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @organization_id = v when 'ExternalAuthenticationSource' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @external_authentication_source = v when 'PasswordFormat' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @password_format = v when 'Password' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @password = v when 'AllowPasswordLogin' @allow_password_login = v when 'AllowPasswordAndTOTPLogin' @allow_password_and_totplogin = v when 'AllowPasswordAndU2FLogin' @allow_password_and_u2flogin = v when 'AllowPasswordAndWebAuthnLogin' @allow_password_and_web_authn_login = v when 'U2FRegistrations' if v.nil? @u2fregistrations = [] else @u2fregistrations = Array.new(v.length) v.each_with_index do |v1, i1| @u2fregistrations[i1] = Comet::AdminU2FRegistration.new @u2fregistrations[i1].from_hash(v1) end end when 'WebAuthnRegistrations' if v.nil? @web_authn_registrations = [] else @web_authn_registrations = Array.new(v.length) v.each_with_index do |v1, i1| @web_authn_registrations[i1] = Comet::AdminWebAuthnRegistration.new @web_authn_registrations[i1].from_hash(v1) end end when 'RequirePasswordChange' @require_password_change = v when 'TOTPKeyEncryptionFormat' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @totpkey_encryption_format = v when 'TOTPKey' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @totpkey = v when 'IPWhitelist' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @ipwhitelist = v when 'Permissions' @permissions = Comet::AdminUserPermissions.new @permissions.from_hash(v) else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
93 94 95 96 97 |
# File 'lib/comet/models/allowed_admin_user.rb', line 93 def from_json(json_string) raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String from_hash(JSON.parse(json_string)) end |
#to_h ⇒ Hash
Returns The complete object as a Ruby hash.
214 215 216 |
# File 'lib/comet/models/allowed_admin_user.rb', line 214 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 |
# File 'lib/comet/models/allowed_admin_user.rb', line 177 def to_hash ret = {} ret['Username'] = @username ret['OrganizationID'] = @organization_id unless @external_authentication_source.nil? ret['ExternalAuthenticationSource'] = @external_authentication_source end ret['PasswordFormat'] = @password_format ret['Password'] = @password ret['AllowPasswordLogin'] = @allow_password_login ret['AllowPasswordAndTOTPLogin'] = @allow_password_and_totplogin ret['AllowPasswordAndU2FLogin'] = @allow_password_and_u2flogin ret['AllowPasswordAndWebAuthnLogin'] = @allow_password_and_web_authn_login unless @u2fregistrations.nil? ret['U2FRegistrations'] = @u2fregistrations end unless @web_authn_registrations.nil? ret['WebAuthnRegistrations'] = @web_authn_registrations end ret['RequirePasswordChange'] = @require_password_change unless @totpkey_encryption_format.nil? ret['TOTPKeyEncryptionFormat'] = @totpkey_encryption_format end unless @totpkey.nil? ret['TOTPKey'] = @totpkey end unless @ipwhitelist.nil? ret['IPWhitelist'] = @ipwhitelist end ret['Permissions'] = @permissions @unknown_json_fields.each do |k, v| ret[k] = v end ret end |
#to_json(options = {}) ⇒ String
Returns The complete object as a JSON string.
219 220 221 |
# File 'lib/comet/models/allowed_admin_user.rb', line 219 def to_json( = {}) to_hash.to_json() end |