comet_backup_ruby_sdk 2.9.0 → 2.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rubocop.yml +0 -0
  4. data/CHANGELOG.md +16 -0
  5. data/Gemfile +0 -0
  6. data/Gemfile.lock +1 -1
  7. data/LICENSE +0 -0
  8. data/README.md +0 -0
  9. data/Rakefile +0 -0
  10. data/comet_backup_ruby_sdk.gemspec +1 -1
  11. data/lib/comet/comet_server.rb +137 -1
  12. data/lib/comet/definitions.rb +47 -9
  13. data/lib/comet/models/admin_account_properties_response.rb +1 -0
  14. data/lib/comet/models/admin_security_options.rb +4 -0
  15. data/lib/comet/models/admin_u2fregistration.rb +2 -0
  16. data/lib/comet/models/admin_user_permissions.rb +81 -0
  17. data/lib/comet/models/admin_web_authn_registration.rb +2 -0
  18. data/lib/comet/models/allowed_admin_user.rb +4 -0
  19. data/lib/comet/models/authentication_role_options.rb +2 -0
  20. data/lib/comet/models/branding_options.rb +6 -1
  21. data/lib/comet/models/branding_properties.rb +6 -1
  22. data/lib/comet/models/bucket_properties.rb +2 -0
  23. data/lib/comet/models/constellation_stats.rb +5 -0
  24. data/lib/comet/models/device_config.rb +12 -0
  25. data/lib/comet/models/email_reporting_option.rb +2 -0
  26. data/lib/comet/models/external_authentication_source.rb +10 -0
  27. data/lib/comet/models/external_authentication_source_display.rb +82 -0
  28. data/lib/comet/models/external_authentication_source_response.rb +99 -0
  29. data/lib/comet/models/external_ldapauthentication_source_server.rb +1 -0
  30. data/lib/comet/models/external_ldapauthentication_source_settings.rb +1 -0
  31. data/lib/comet/models/install_token.rb +5 -0
  32. data/lib/comet/models/mac_oscode_sign_properties.rb +6 -0
  33. data/lib/comet/models/mssqlconnection.rb +3 -0
  34. data/lib/comet/models/news_entry.rb +1 -0
  35. data/lib/comet/models/oidc_claim.rb +84 -0
  36. data/lib/comet/models/oidc_config.rb +203 -0
  37. data/lib/comet/models/osinfo.rb +30 -0
  38. data/lib/comet/models/partition.rb +5 -0
  39. data/lib/comet/models/private_branding_properties.rb +6 -1
  40. data/lib/comet/models/psaconfig.rb +4 -0
  41. data/lib/comet/models/remote_server_address.rb +10 -0
  42. data/lib/comet/models/remote_storage_option.rb +10 -0
  43. data/lib/comet/models/replica_server.rb +10 -0
  44. data/lib/comet/models/restore_job_advanced_options.rb +19 -0
  45. data/lib/comet/models/retention_range.rb +8 -0
  46. data/lib/comet/models/search_clause.rb +16 -0
  47. data/lib/comet/models/self_backup_export_options.rb +1 -0
  48. data/lib/comet/models/self_backup_target.rb +1 -0
  49. data/lib/comet/models/server_config_options.rb +1 -0
  50. data/lib/comet/models/server_meta_branding_properties.rb +19 -0
  51. data/lib/comet/models/server_meta_version_info.rb +2 -0
  52. data/lib/comet/models/session_key_regenerated_response.rb +2 -0
  53. data/lib/comet/models/single_field_source.rb +1 -0
  54. data/lib/comet/models/software_update_news_response.rb +4 -0
  55. data/lib/comet/models/source_basic_info.rb +2 -0
  56. data/lib/comet/models/source_config.rb +20 -0
  57. data/lib/comet/models/storage_role_options.rb +1 -0
  58. data/lib/comet/models/totp_regenerated_response.rb +3 -0
  59. data/lib/comet/models/update_campaign_device_status.rb +1 -0
  60. data/lib/comet/models/update_campaign_properties.rb +1 -0
  61. data/lib/comet/models/update_campaign_status.rb +1 -0
  62. data/lib/comet/models/update_campaign_status_device_entry.rb +1 -0
  63. data/lib/comet/models/user_policy.rb +6 -0
  64. data/lib/comet/models/vault_snapshot.rb +1 -0
  65. data/lib/comet/models/vsscomponent.rb +1 -0
  66. data/lib/comet/models/web_authn_credential.rb +2 -0
  67. data/lib/comet/models/web_authn_credential_descriptor.rb +1 -0
  68. data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +1 -0
  69. data/lib/comet/models/web_authn_public_key_credential_request_options.rb +1 -0
  70. data/lib/comet/models/web_authn_user_entity.rb +1 -0
  71. data/lib/comet/models/windows_code_sign_properties.rb +5 -1
  72. data/lib/comet_backup_ruby_sdk.rb +4 -0
  73. metadata +6 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 535a75d833c8c1a3974c03508214df23536d188b0fa5c844f82d40142bab059b
4
- data.tar.gz: f14c818c7c052a37a3cab8202e1d891c52e02ad45ed32a043de4ed1b311b2807
3
+ metadata.gz: 5d6a5ccdbb19a7a417c00bfbd4dfc033b95a0e173188156efaac65217517e6d7
4
+ data.tar.gz: 9b824422ee089951b33143150891724d457a0e945d8377d704e830356908db85
5
5
  SHA512:
6
- metadata.gz: 482109073db2fd013d9fd3a4b81c6ee4a74891a97f5da029696e00106b46e0f5fe3addde28da1e1b0d7b7e8ce00b61895af4509a1c22bc47dc2a997f9730bebd
7
- data.tar.gz: da454607ab7f08673a79776c06360d5da50c3acdb325e6119e087118719119819e720fbe9f9db2e9287ce6649735edf1f527142840b708fa6db324a4d9ec2fed
6
+ metadata.gz: a5a9419659e7d24216dd9221af230f9012c3c17d42cc476428f33583189835e95937f6dbac9d517ad72440528315e649b856ccb8472cf00bdd250874adcfb373
7
+ data.tar.gz: cd7d60617d3682eb905f926837dce922e8474d2ca5551337b377ad170498614d46111f7645e47caedd620f2e864d2baa2b6f9408b9a0a54f2488d9b60ab81de5
data/.gitignore CHANGED
File without changes
data/.rubocop.yml CHANGED
File without changes
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2023-08-02 v2.11.0
4
+
5
+ - Based on Comet 23.6.9
6
+ - Support new API endpoints for managing external admin authentication sources
7
+ - Support Object Lock policy option
8
+ - Update docstrings for various types and fields
9
+
10
+ ## 2023-07-11 v2.10.0
11
+
12
+ - Based on Comet 23.6.5
13
+ - Support `DeviceConfig->ClientVersion`
14
+ - Support new `OSInfo` and `RestoreJobAdvancedOptions` fields
15
+ - Support new `SourceConfig` fields for tracking policy-enforced Protected Items
16
+ - Support new optional parameters in `AdminDispatcherRunRestoreCustom` API
17
+ - Add many more documentation comments, including behaviour of base64 byte arrays
18
+
3
19
  ## 2023-06-01 v2.9.0
4
20
 
5
21
  - Based on Comet 23.5.0
data/Gemfile CHANGED
File without changes
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- comet_backup_ruby_sdk (2.9.0)
4
+ comet_backup_ruby_sdk (2.11.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/LICENSE CHANGED
File without changes
data/README.md CHANGED
File without changes
data/Rakefile CHANGED
File without changes
@@ -12,7 +12,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
12
12
 
13
13
  Gem::Specification.new do |spec|
14
14
  spec.name = 'comet_backup_ruby_sdk'
15
- spec.version = '2.9.0'
15
+ spec.version = '2.11.0'
16
16
  spec.authors = ['Comet Licensing Ltd.']
17
17
  spec.email = ['hello@cometbackup.com']
18
18
 
@@ -136,6 +136,28 @@ module Comet
136
136
  ret
137
137
  end
138
138
 
139
+ # AdminAccountSessionUpgrade
140
+ #
141
+ # Upgrade a session key which is pending an MFA upgrade to a full session key.
142
+ #
143
+ # You must supply administrator authentication credentials to use this API.
144
+ #
145
+ # @param [String] session_key The session key to upgrade
146
+ # @return [Comet::CometAPIResponseMessage]
147
+ def admin_account_session_upgrade(session_key)
148
+ submit_params = {}
149
+ raise TypeError, "'session_key' expected String, got #{session_key.class}" unless session_key.is_a? String
150
+
151
+ submit_params['SessionKey'] = session_key
152
+
153
+ body = perform_request('api/v1/admin/account/session-upgrade', submit_params)
154
+ json_body = JSON.parse body
155
+ check_status json_body
156
+ ret = Comet::CometAPIResponseMessage.new
157
+ ret.from_hash(json_body)
158
+ ret
159
+ end
160
+
139
161
  # AdminAccountSetProperties
140
162
  #
141
163
  # Update settings for your own admin account.
@@ -1983,8 +2005,11 @@ module Comet
1983
2005
  # @param [Comet::RestoreJobAdvancedOptions] options Restore targets
1984
2006
  # @param [String] snapshot (Optional) If present, restore a specific snapshot. Otherwise, restore the latest snapshot for the selected Protected Item + Storage Vault pair
1985
2007
  # @param [Array<String>] paths (Optional) If present, restore these paths only. Otherwise, restore all data
2008
+ # @param [Number] known_file_count (Optional) The number of files to restore, if known. Supplying this means we don't need to walk the entire tree just to find the file count and will speed up the restoration process.
2009
+ # @param [Number] known_byte_count (Optional) The total size in bytes of files to restore, if known. Supplying this means we don't need to walk the entire tree just to find the total file size and will speed up the restoration process.
2010
+ # @param [Number] known_dir_count (Optional) The number of directories to restore, if known. Supplying this means we don't need to walk the entire tree just to find the number of directories and will speed up the restoration process.
1986
2011
  # @return [Comet::CometAPIResponseMessage]
1987
- def admin_dispatcher_run_restore_custom(target_id, source, destination, options, snapshot = nil, paths = nil)
2012
+ def admin_dispatcher_run_restore_custom(target_id, source, destination, options, snapshot = nil, paths = nil, known_file_count = nil, known_byte_count = nil, known_dir_count = nil)
1988
2013
  submit_params = {}
1989
2014
  raise TypeError, "'target_id' expected String, got #{target_id.class}" unless target_id.is_a? String
1990
2015
 
@@ -2008,6 +2033,21 @@ module Comet
2008
2033
 
2009
2034
  submit_params['Paths'] = paths.to_json
2010
2035
  end
2036
+ unless known_file_count.nil?
2037
+ raise TypeError, "'known_file_count' expected Numeric, got #{known_file_count.class}" unless known_file_count.is_a? Numeric
2038
+
2039
+ submit_params['KnownFileCount'] = known_file_count
2040
+ end
2041
+ unless known_byte_count.nil?
2042
+ raise TypeError, "'known_byte_count' expected Numeric, got #{known_byte_count.class}" unless known_byte_count.is_a? Numeric
2043
+
2044
+ submit_params['KnownByteCount'] = known_byte_count
2045
+ end
2046
+ unless known_dir_count.nil?
2047
+ raise TypeError, "'known_dir_count' expected Numeric, got #{known_dir_count.class}" unless known_dir_count.is_a? Numeric
2048
+
2049
+ submit_params['KnownDirCount'] = known_dir_count
2050
+ end
2011
2051
 
2012
2052
  body = perform_request('api/v1/admin/dispatcher/run-restore-custom', submit_params)
2013
2053
  json_body = JSON.parse body
@@ -2170,6 +2210,102 @@ module Comet
2170
2210
  ret
2171
2211
  end
2172
2212
 
2213
+ # AdminExternalAuthSourcesDelete
2214
+ #
2215
+ # Delete an external admin authentication source.
2216
+ #
2217
+ # You must supply administrator authentication credentials to use this API.
2218
+ #
2219
+ # @param [String] source_id (No description available)
2220
+ # @return [Comet::CometAPIResponseMessage]
2221
+ def admin_external_auth_sources_delete(source_id)
2222
+ submit_params = {}
2223
+ raise TypeError, "'source_id' expected String, got #{source_id.class}" unless source_id.is_a? String
2224
+
2225
+ submit_params['SourceID'] = source_id
2226
+
2227
+ body = perform_request('api/v1/admin/external-auth-sources/delete', submit_params)
2228
+ json_body = JSON.parse body
2229
+ check_status json_body
2230
+ ret = Comet::CometAPIResponseMessage.new
2231
+ ret.from_hash(json_body)
2232
+ ret
2233
+ end
2234
+
2235
+ # AdminExternalAuthSourcesGet
2236
+ #
2237
+ # Get a map of all external admin authentication sources.
2238
+ #
2239
+ # You must supply administrator authentication credentials to use this API.
2240
+ #
2241
+ # @return [Hash{String => Comet::ExternalAuthenticationSource}]
2242
+ def admin_external_auth_sources_get
2243
+ body = perform_request('api/v1/admin/external-auth-sources/get')
2244
+ json_body = JSON.parse body
2245
+ check_status json_body
2246
+ ret = {}
2247
+ if json_body.nil?
2248
+ ret = {}
2249
+ else
2250
+ json_body.each do |k, v|
2251
+ ret[k] = Comet::ExternalAuthenticationSource.new
2252
+ ret[k].from_hash(v)
2253
+ end
2254
+ end
2255
+ ret
2256
+ end
2257
+
2258
+ # AdminExternalAuthSourcesNew
2259
+ #
2260
+ # Create an external admin authentication source.
2261
+ #
2262
+ # You must supply administrator authentication credentials to use this API.
2263
+ #
2264
+ # @param [Comet::ExternalAuthenticationSource] source (No description available)
2265
+ # @param [String] source_id (Optional) (No description available)
2266
+ # @return [Comet::ExternalAuthenticationSourceResponse]
2267
+ def admin_external_auth_sources_new(source, source_id = nil)
2268
+ submit_params = {}
2269
+ raise TypeError, "'source' expected Comet::ExternalAuthenticationSource, got #{source.class}" unless source.is_a? Comet::ExternalAuthenticationSource
2270
+
2271
+ submit_params['Source'] = source.to_json
2272
+ unless source_id.nil?
2273
+ raise TypeError, "'source_id' expected String, got #{source_id.class}" unless source_id.is_a? String
2274
+
2275
+ submit_params['SourceID'] = source_id
2276
+ end
2277
+
2278
+ body = perform_request('api/v1/admin/external-auth-sources/new', submit_params)
2279
+ json_body = JSON.parse body
2280
+ check_status json_body
2281
+ ret = Comet::ExternalAuthenticationSourceResponse.new
2282
+ ret.from_hash(json_body)
2283
+ ret
2284
+ end
2285
+
2286
+ # AdminExternalAuthSourcesSet
2287
+ #
2288
+ # Updates the current tenant's external admin authentication sources. This will set all.
2289
+ # sources for the tenant; none will be preserved.
2290
+ #
2291
+ # You must supply administrator authentication credentials to use this API.
2292
+ #
2293
+ # @param [Hash{String => Comet::ExternalAuthenticationSource}] sources (No description available)
2294
+ # @return [Comet::CometAPIResponseMessage]
2295
+ def admin_external_auth_sources_set(sources)
2296
+ submit_params = {}
2297
+ raise TypeError, "'sources' expected Hash, got #{sources.class}" unless sources.is_a? Hash
2298
+
2299
+ submit_params['Sources'] = sources.to_json
2300
+
2301
+ body = perform_request('api/v1/admin/external-auth-sources/set', submit_params)
2302
+ json_body = JSON.parse body
2303
+ check_status json_body
2304
+ ret = Comet::CometAPIResponseMessage.new
2305
+ ret.from_hash(json_body)
2306
+ ret
2307
+ end
2308
+
2173
2309
  # AdminGetJobLog
2174
2310
  #
2175
2311
  # Get the report log entries for a single job, in plaintext format.
@@ -7,13 +7,13 @@
7
7
 
8
8
  module Comet
9
9
 
10
- APPLICATION_VERSION = '23.5.0'
10
+ APPLICATION_VERSION = '23.6.9'
11
11
 
12
12
  APPLICATION_VERSION_MAJOR = 23
13
13
 
14
- APPLICATION_VERSION_MINOR = 5
14
+ APPLICATION_VERSION_MINOR = 6
15
15
 
16
- APPLICATION_VERSION_REVISION = 0
16
+ APPLICATION_VERSION_REVISION = 9
17
17
 
18
18
  # AutoRetentionLevel: The system will automatically choose how often to run an automatic Retention Pass after each backup job.
19
19
  BACKUPJOBAUTORETENTION_AUTOMATIC = 0
@@ -390,13 +390,22 @@ module Comet
390
390
  # When resetting a password with the API, set the PasswordFormat to this value. The Comet Server will re-hash the credential automatically.
391
391
  PASSWORD_FORMAT_PLAINTEXT = 0
392
392
 
393
+ # OidcProvider
394
+ PROVIDER_GENERIC = 'oidc'
395
+
396
+ # OidcProvider
397
+ PROVIDER_AZUREADV2 = 'azure-ad-v2'
398
+
399
+ # OidcProvider
400
+ PROVIDER_GOOGLE = 'google'
401
+
393
402
  # PSAType
394
403
  PSA_TYPE_GENERIC = 0
395
404
 
396
405
  # PSAType
397
406
  PSA_TYPE_GRADIENT = 1
398
407
 
399
- RELEASE_CODENAME = 'Thebe'
408
+ RELEASE_CODENAME = 'Voyager'
400
409
 
401
410
  # RemoteServerType
402
411
  REMOTESERVER_COMET = 'comet'
@@ -404,6 +413,9 @@ module Comet
404
413
  # RemoteServerType
405
414
  REMOTESERVER_LDAP = 'ldap'
406
415
 
416
+ # RemoteServerType
417
+ REMOTESERVER_OIDC = 'oidc'
418
+
407
419
  # RemoteServerType
408
420
  REMOTESERVER_B2 = 'b2'
409
421
 
@@ -575,13 +587,13 @@ module Comet
575
587
 
576
588
  SCHEDULE_MAXINT = 1_125_899_906_842_624
577
589
 
578
- # SearchClauseType
590
+ # SearchClauseType: The search clause is an explicit rule
579
591
  SEARCHCLAUSE_RULE = ''
580
592
 
581
- # SearchClauseType
593
+ # SearchClauseType: All of the ClauseChildren must match
582
594
  SEARCHCLAUSE_AND = 'and'
583
595
 
584
- # SearchClauseType
596
+ # SearchClauseType: At least one of the ClauseChildren must match
585
597
  SEARCHCLAUSE_OR = 'or'
586
598
 
587
599
  # SearchClauseType
@@ -590,56 +602,82 @@ module Comet
590
602
  # SearchClauseType
591
603
  SEARCHCLAUSE_NOT_OR = 'not_or'
592
604
 
605
+ # String equals (case sensitive)
593
606
  SEARCHOPERATOR_STRING_EQ = 'str_eq'
594
607
 
608
+ # String does not equal (case sensitive)
595
609
  SEARCHOPERATOR_STRING_NEQ = 'str_neq'
596
610
 
611
+ # String contains anywhere (case sensitive)
597
612
  SEARCHOPERATOR_STRING_CONTAINS = 'str_contains'
598
613
 
614
+ # String does not contain anywhere (case sensitive)
599
615
  SEARCHOPERATOR_STRING_NCONTAINS = 'str_ncontains'
600
616
 
617
+ # String starts with prefix (case sensitive)
601
618
  SEARCHOPERATOR_STRING_STARTSWITH = 'str_startswith'
602
619
 
620
+ # String does not start with prefix (case sensitive)
603
621
  SEARCHOPERATOR_STRING_NSTARTSWITH = 'str_nstartswith'
604
622
 
623
+ # String ends with suffix (case sensitive)
605
624
  SEARCHOPERATOR_STRING_ENDSWITH = 'str_endswith'
606
625
 
626
+ # String does not end with suffix (case sensitive)
607
627
  SEARCHOPERATOR_STRING_NENDSWITH = 'str_nendswith'
608
628
 
629
+ # String equals (case insensitive)
609
630
  SEARCHOPERATOR_STRING_EQ_CI = 'str_eq_ci'
610
631
 
632
+ # String does not equal (case insensitive)
611
633
  SEARCHOPERATOR_STRING_NEQ_CI = 'str_neq_ci'
612
634
 
635
+ # String contains anywhere (case sensitive)
613
636
  SEARCHOPERATOR_STRING_CONTAINS_CI = 'str_contains_ci'
614
637
 
638
+ # String does not contain anywhere (case sensitive)
615
639
  SEARCHOPERATOR_STRING_NCONTAINS_CI = 'str_ncontains_ci'
616
640
 
641
+ # String starts with prefix (case sensitive)
617
642
  SEARCHOPERATOR_STRING_STARTSWITH_CI = 'str_startswith_ci'
618
643
 
644
+ # String does not start with (case sensitive)
619
645
  SEARCHOPERATOR_STRING_NSTARTSWITH_CI = 'str_nstartswith_ci'
620
646
 
647
+ # String ends with suffix (case sensitive)
621
648
  SEARCHOPERATOR_STRING_ENDSWITH_CI = 'str_endswith_ci'
622
649
 
650
+ # String does not end with suffix (case sensitive)
623
651
  SEARCHOPERATOR_STRING_NENDSWITH_CI = 'str_nendswith_ci'
624
652
 
653
+ # String matches provided regular expression (using Go regex syntax)
625
654
  SEARCHOPERATOR_STRING_REGEXMATCH = 'str_regexmatch'
626
655
 
656
+ # String does not match provided regular expression (using Go regex syntax)
627
657
  SEARCHOPERATOR_STRING_NREGEXMATCH = 'str_nregexmatch'
628
658
 
659
+ # Integer field is equal to value
629
660
  SEARCHOPERATOR_INT_EQ = 'int_eq'
630
661
 
662
+ # Integer field is not equal to value
631
663
  SEARCHOPERATOR_INT_NEQ = 'int_neq'
632
664
 
665
+ # Integer field is greater than value
633
666
  SEARCHOPERATOR_INT_GT = 'int_gt'
634
667
 
668
+ # Integer field is greater than or equal to value
635
669
  SEARCHOPERATOR_INT_GTE = 'int_gte'
636
670
 
671
+ # Integer field is less than value
637
672
  SEARCHOPERATOR_INT_LT = 'int_lt'
638
673
 
674
+ # Integer field is less than or equal to value
639
675
  SEARCHOPERATOR_INT_LTE = 'int_lte'
640
676
 
677
+ # Boolean field matches value
641
678
  SEARCHOPERATOR_BOOL_IS = 'bool_is'
642
679
 
680
+ # Boolean field does not match value
643
681
  SEARCHOPERATOR_BOOL_NIS = 'bool_nis'
644
682
 
645
683
  # 0000 0001. If this value is present in the bitset, then the Calendar service is selected for backup.
@@ -948,8 +986,8 @@ module Comet
948
986
  # WebAuthnDeviceType
949
987
  WEBAUTHN_DEVICE_TYPE__TPM_LINUX = 6
950
988
 
951
- # WindowsCodesignMethod: When upgrading from a version of Comet Server prior to 22.12.7, this option will be automatically converted to a more specific type.
952
- # @deprecated This const has been deprecated since Comet version 22.12.7
989
+ # WindowsCodesignMethod: When upgrading from a version of Comet Server prior to 23.3.0, this option will be automatically converted to a more specific type.
990
+ # @deprecated This const has been deprecated since Comet version 23.3.0
953
991
  WINDOWSCODESIGN_METHOD_AUTO = 0
954
992
 
955
993
  # WindowsCodesignMethod: Do not perform Authenticode codesigning
@@ -18,6 +18,7 @@ module Comet
18
18
  # @type [Comet::AdminUserPermissions] permissions
19
19
  attr_accessor :permissions
20
20
 
21
+ # This field is available in Comet 18.9.9 and later.
21
22
  # @type [Comet::AdminSecurityOptions] security
22
23
  attr_accessor :security
23
24
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # AdminSecurityOptions is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class AdminSecurityOptions
14
14
 
15
+ # One of the PASSWORD_FORMAT_ constants
15
16
  # @type [Number] password_format
16
17
  attr_accessor :password_format
17
18
 
@@ -38,12 +39,15 @@ module Comet
38
39
  # @type [Array<Comet::AdminWebAuthnRegistration>] web_authn_registrations
39
40
  attr_accessor :web_authn_registrations
40
41
 
42
+ # One of the ENCRYPTIONMETHOD_ constants
41
43
  # @type [Number] totpkey_encryption_format
42
44
  attr_accessor :totpkey_encryption_format
43
45
 
44
46
  # @type [String] totpkey
45
47
  attr_accessor :totpkey
46
48
 
49
+ # A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as
50
+ # this admin account
47
51
  # @type [String] ipwhitelist
48
52
  attr_accessor :ipwhitelist
49
53
 
@@ -17,9 +17,11 @@ module Comet
17
17
  # @type [String] description
18
18
  attr_accessor :description
19
19
 
20
+ # Unix timestamp, in seconds.
20
21
  # @type [Number] register_time
21
22
  attr_accessor :register_time
22
23
 
24
+ # When this field is expressed as a AdminU2FRegistration class instance, this field may contain binary data. When this field is expressed as JSON, the field is expressed as base64. The marshalling methods on this class will automatically perform base64 conversion as necessary.
23
25
  # @type [Array<Object>] registration
24
26
  attr_accessor :registration
25
27
 
@@ -33,9 +33,40 @@ module Comet
33
33
  # @type [Boolean] allow_edit_webhooks
34
34
  attr_accessor :allow_edit_webhooks
35
35
 
36
+ # @type [Boolean] allow_edit_external_auth_sources
37
+ attr_accessor :allow_edit_external_auth_sources
38
+
36
39
  # @type [Boolean] deny_constellation_role
37
40
  attr_accessor :deny_constellation_role
38
41
 
42
+ # This field is available in Comet 23.6.0 and later.
43
+ # @type [Boolean] deny_view_server_history
44
+ attr_accessor :deny_view_server_history
45
+
46
+ # This field is available in Comet 23.6.0 and later.
47
+ # @type [Boolean] deny_view_server_info
48
+ attr_accessor :deny_view_server_info
49
+
50
+ # This field is available in Comet 23.6.0 and later.
51
+ # @type [Boolean] prevent_request_storage_vault
52
+ attr_accessor :prevent_request_storage_vault
53
+
54
+ # This field is available in Comet 23.6.0 and later.
55
+ # @type [Boolean] prevent_add_custom_storage_vault
56
+ attr_accessor :prevent_add_custom_storage_vault
57
+
58
+ # This field is available in Comet 23.6.0 and later.
59
+ # @type [Boolean] hide_cloud_storage_branding
60
+ attr_accessor :hide_cloud_storage_branding
61
+
62
+ # This field is available in Comet 23.6.0 and later.
63
+ # @type [Boolean] should_restrict_provider_list
64
+ attr_accessor :should_restrict_provider_list
65
+
66
+ # This field is available in Comet 23.6.0 and later.
67
+ # @type [Array<Number>] allowed_providers_when_restricted
68
+ attr_accessor :allowed_providers_when_restricted
69
+
39
70
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
40
71
  attr_accessor :unknown_json_fields
41
72
 
@@ -44,6 +75,7 @@ module Comet
44
75
  end
45
76
 
46
77
  def clear
78
+ @allowed_providers_when_restricted = []
47
79
  @unknown_json_fields = {}
48
80
  end
49
81
 
@@ -74,8 +106,33 @@ module Comet
74
106
  @allow_edit_remote_storage = v
75
107
  when 'AllowEditWebhooks'
76
108
  @allow_edit_webhooks = v
109
+ when 'AllowEditExternalAuthSources'
110
+ @allow_edit_external_auth_sources = v
77
111
  when 'DenyConstellationRole'
78
112
  @deny_constellation_role = v
113
+ when 'DenyViewServerHistory'
114
+ @deny_view_server_history = v
115
+ when 'DenyViewServerInfo'
116
+ @deny_view_server_info = v
117
+ when 'PreventRequestStorageVault'
118
+ @prevent_request_storage_vault = v
119
+ when 'PreventAddCustomStorageVault'
120
+ @prevent_add_custom_storage_vault = v
121
+ when 'HideCloudStorageBranding'
122
+ @hide_cloud_storage_branding = v
123
+ when 'ShouldRestrictProviderList'
124
+ @should_restrict_provider_list = v
125
+ when 'AllowedProvidersWhenRestricted'
126
+ if v.nil?
127
+ @allowed_providers_when_restricted = []
128
+ else
129
+ @allowed_providers_when_restricted = Array.new(v.length)
130
+ v.each_with_index do |v1, i1|
131
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
132
+
133
+ @allowed_providers_when_restricted[i1] = v1
134
+ end
135
+ end
79
136
  else
80
137
  @unknown_json_fields[k] = v
81
138
  end
@@ -106,9 +163,33 @@ module Comet
106
163
  unless @allow_edit_webhooks.nil?
107
164
  ret['AllowEditWebhooks'] = @allow_edit_webhooks
108
165
  end
166
+ unless @allow_edit_external_auth_sources.nil?
167
+ ret['AllowEditExternalAuthSources'] = @allow_edit_external_auth_sources
168
+ end
109
169
  unless @deny_constellation_role.nil?
110
170
  ret['DenyConstellationRole'] = @deny_constellation_role
111
171
  end
172
+ unless @deny_view_server_history.nil?
173
+ ret['DenyViewServerHistory'] = @deny_view_server_history
174
+ end
175
+ unless @deny_view_server_info.nil?
176
+ ret['DenyViewServerInfo'] = @deny_view_server_info
177
+ end
178
+ unless @prevent_request_storage_vault.nil?
179
+ ret['PreventRequestStorageVault'] = @prevent_request_storage_vault
180
+ end
181
+ unless @prevent_add_custom_storage_vault.nil?
182
+ ret['PreventAddCustomStorageVault'] = @prevent_add_custom_storage_vault
183
+ end
184
+ unless @hide_cloud_storage_branding.nil?
185
+ ret['HideCloudStorageBranding'] = @hide_cloud_storage_branding
186
+ end
187
+ unless @should_restrict_provider_list.nil?
188
+ ret['ShouldRestrictProviderList'] = @should_restrict_provider_list
189
+ end
190
+ unless @allowed_providers_when_restricted.nil?
191
+ ret['AllowedProvidersWhenRestricted'] = @allowed_providers_when_restricted
192
+ end
112
193
  @unknown_json_fields.each do |k, v|
113
194
  ret[k] = v
114
195
  end
@@ -16,6 +16,7 @@ module Comet
16
16
  # @type [String] description
17
17
  attr_accessor :description
18
18
 
19
+ # Unix timestamp, in seconds.
19
20
  # @type [Number] register_time
20
21
  attr_accessor :register_time
21
22
 
@@ -25,6 +26,7 @@ module Comet
25
26
  # @type [Boolean] is_legacy_u2f
26
27
  attr_accessor :is_legacy_u2f
27
28
 
29
+ # When this field is expressed as a AdminWebAuthnRegistration class instance, this field may contain binary data. When this field is expressed as JSON, the field is expressed as base64. The marshalling methods on this class will automatically perform base64 conversion as necessary.
28
30
  # @type [Array<Object>] id
29
31
  attr_accessor :id
30
32
 
@@ -21,6 +21,7 @@ module Comet
21
21
  # @type [String] external_authentication_source
22
22
  attr_accessor :external_authentication_source
23
23
 
24
+ # One of the PASSWORD_FORMAT_ constants
24
25
  # @type [Number] password_format
25
26
  attr_accessor :password_format
26
27
 
@@ -47,12 +48,15 @@ module Comet
47
48
  # @type [Array<Comet::AdminWebAuthnRegistration>] web_authn_registrations
48
49
  attr_accessor :web_authn_registrations
49
50
 
51
+ # One of the ENCRYPTIONMETHOD_ constants
50
52
  # @type [Number] totpkey_encryption_format
51
53
  attr_accessor :totpkey_encryption_format
52
54
 
53
55
  # @type [String] totpkey
54
56
  attr_accessor :totpkey
55
57
 
58
+ # A regular expression in Go regex syntax, for which IP addresses are allowed to authenticate as
59
+ # this admin account
56
60
  # @type [String] ipwhitelist
57
61
  attr_accessor :ipwhitelist
58
62
 
@@ -15,12 +15,14 @@ module Comet
15
15
  # @type [Boolean] role_enabled
16
16
  attr_accessor :role_enabled
17
17
 
18
+ # One of the INTEGRITYCHECK_ constants
18
19
  # @type [Number] database_check_level
19
20
  attr_accessor :database_check_level
20
21
 
21
22
  # @type [Boolean] generate_missed_backup_events
22
23
  attr_accessor :generate_missed_backup_events
23
24
 
25
+ # Unix timestamp in seconds, before which no Missed jobs are created
24
26
  # @type [Number] no_missed_backup_events_before
25
27
  attr_accessor :no_missed_backup_events_before
26
28
 
@@ -59,6 +59,7 @@ module Comet
59
59
  # @type [Boolean] hide_background_logo
60
60
  attr_accessor :hide_background_logo
61
61
 
62
+ # One of the CLIENTBRANDINGBUILD_ constants
62
63
  # @type [Number] build_mode
63
64
  attr_accessor :build_mode
64
65
 
@@ -86,12 +87,14 @@ module Comet
86
87
  # @type [String] package_identifier
87
88
  attr_accessor :package_identifier
88
89
 
90
+ # One of the WINDOWSCODESIGN_METHOD_ constants
89
91
  # @type [Number] windows_code_sign_method
90
92
  attr_accessor :windows_code_sign_method
91
93
 
92
94
  # @type [String] windows_code_sign_pkcs12file_path
93
95
  attr_accessor :windows_code_sign_pkcs12file_path
94
96
 
97
+ # One of the ENCRYPTIONMETHOD_ constants
95
98
  # @type [Number] windows_code_sign_pkcs12password_format
96
99
  attr_accessor :windows_code_sign_pkcs12password_format
97
100
 
@@ -104,13 +107,14 @@ module Comet
104
107
  # @type [String] windows_code_sign_pkcs11module
105
108
  attr_accessor :windows_code_sign_pkcs11module
106
109
 
110
+ # This field was deprecated between 23.3.0 and 23.6.x, but is now used again.
107
111
  # @type [String] windows_code_sign_pkcs11certfile
108
- # @deprecated This member has been deprecated since Comet version 22.12.7
109
112
  attr_accessor :windows_code_sign_pkcs11certfile
110
113
 
111
114
  # @type [String] windows_code_sign_pkcs11key_id
112
115
  attr_accessor :windows_code_sign_pkcs11key_id
113
116
 
117
+ # One of the ENCRYPTIONMETHOD_ constants
114
118
  # @type [Number] windows_code_sign_pkcs11password_format
115
119
  attr_accessor :windows_code_sign_pkcs11password_format
116
120
 
@@ -126,6 +130,7 @@ module Comet
126
130
  # @type [String] windows_code_sign_azure_app_id
127
131
  attr_accessor :windows_code_sign_azure_app_id
128
132
 
133
+ # One of the ENCRYPTIONMETHOD_ constants
129
134
  # @type [Number] windows_code_sign_azure_app_secret_format
130
135
  attr_accessor :windows_code_sign_azure_app_secret_format
131
136