Class: Comet::AdminSecurityOptions
- Inherits:
-
Object
- Object
- Comet::AdminSecurityOptions
- Defined in:
- lib/comet/models/admin_security_options.rb
Overview
AdminSecurityOptions 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.
-
#ipwhitelist ⇒ Object
A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as this admin account.
-
#password ⇒ Object
Returns the value of attribute password.
-
#password_format ⇒ Object
One of the PASSWORD_FORMAT_ constants.
-
#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.
-
#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 ⇒ AdminSecurityOptions
constructor
A new instance of AdminSecurityOptions.
-
#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 ⇒ AdminSecurityOptions
Returns a new instance of AdminSecurityOptions.
61 62 63 |
# File 'lib/comet/models/admin_security_options.rb', line 61 def initialize clear end |
Instance Attribute Details
#allow_password_and_totplogin ⇒ Object
Returns the value of attribute allow_password_and_totplogin.
26 27 28 |
# File 'lib/comet/models/admin_security_options.rb', line 26 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
30 31 32 |
# File 'lib/comet/models/admin_security_options.rb', line 30 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.
33 34 35 |
# File 'lib/comet/models/admin_security_options.rb', line 33 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.
23 24 25 |
# File 'lib/comet/models/admin_security_options.rb', line 23 def allow_password_login @allow_password_login end |
#ipwhitelist ⇒ Object
A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as this admin account
56 57 58 |
# File 'lib/comet/models/admin_security_options.rb', line 56 def ipwhitelist @ipwhitelist end |
#password ⇒ Object
Returns the value of attribute password.
20 21 22 |
# File 'lib/comet/models/admin_security_options.rb', line 20 def password @password end |
#password_format ⇒ Object
One of the PASSWORD_FORMAT_ constants
17 18 19 |
# File 'lib/comet/models/admin_security_options.rb', line 17 def password_format @password_format end |
#require_password_change ⇒ Object
This field is available in Comet 24.12.0 and later.
44 45 46 |
# File 'lib/comet/models/admin_security_options.rb', line 44 def require_password_change @require_password_change end |
#totpkey ⇒ Object
Returns the value of attribute totpkey.
51 52 53 |
# File 'lib/comet/models/admin_security_options.rb', line 51 def totpkey @totpkey end |
#totpkey_encryption_format ⇒ Object
One of the ENCRYPTIONMETHOD_ constants
48 49 50 |
# File 'lib/comet/models/admin_security_options.rb', line 48 def totpkey_encryption_format @totpkey_encryption_format end |
#u2fregistrations ⇒ Object
This member has been deprecated since Comet version 21.12.0
37 38 39 |
# File 'lib/comet/models/admin_security_options.rb', line 37 def u2fregistrations @u2fregistrations end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
59 60 61 |
# File 'lib/comet/models/admin_security_options.rb', line 59 def unknown_json_fields @unknown_json_fields end |
#web_authn_registrations ⇒ Object
Returns the value of attribute web_authn_registrations.
40 41 42 |
# File 'lib/comet/models/admin_security_options.rb', line 40 def web_authn_registrations @web_authn_registrations end |
Instance Method Details
#clear ⇒ Object
65 66 67 68 69 70 71 72 73 74 |
# File 'lib/comet/models/admin_security_options.rb', line 65 def clear @password_format = 0 @password = '' @u2fregistrations = [] @web_authn_registrations = [] @totpkey_encryption_format = 0 @totpkey = '' @ipwhitelist = '' @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 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 |
# File 'lib/comet/models/admin_security_options.rb', line 84 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 '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 else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
77 78 79 80 81 |
# File 'lib/comet/models/admin_security_options.rb', line 77 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.
177 178 179 |
# File 'lib/comet/models/admin_security_options.rb', line 177 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
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/admin_security_options.rb', line 146 def to_hash ret = {} 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 @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.
182 183 184 |
# File 'lib/comet/models/admin_security_options.rb', line 182 def to_json( = {}) to_hash.to_json() end |