comet_backup_ruby_sdk 2.37.0 → 2.39.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/Gemfile.lock +1 -1
- data/comet_backup_ruby_sdk.gemspec +1 -1
- data/lib/comet/api_response_error.rb +1 -1
- data/lib/comet/comet_server.rb +244 -4
- data/lib/comet/definitions.rb +26 -8
- data/lib/comet/models/add_bucket_response_message.rb +1 -1
- data/lib/comet/models/admin_account_properties_response.rb +1 -1
- data/lib/comet/models/admin_email_options.rb +1 -1
- data/lib/comet/models/admin_resource_response.rb +1 -1
- data/lib/comet/models/admin_security_options.rb +8 -1
- data/lib/comet/models/admin_u2fregistration.rb +1 -1
- data/lib/comet/models/admin_user_permissions.rb +1 -1
- data/lib/comet/models/admin_web_authn_registration.rb +1 -1
- data/lib/comet/models/allowed_admin_user.rb +8 -1
- data/lib/comet/models/amazon_awsvirtual_storage_role_settings.rb +1 -1
- data/lib/comet/models/authentication_role_options.rb +1 -1
- data/lib/comet/models/available_download.rb +1 -1
- data/lib/comet/models/azure_destination_location.rb +1 -1
- data/lib/comet/models/b2destination_location.rb +1 -1
- data/lib/comet/models/b2storage_extra_info.rb +1 -1
- data/lib/comet/models/b2transaction_totals.rb +1 -1
- data/lib/comet/models/b2virtual_storage_role_settings.rb +1 -1
- data/lib/comet/models/backup_job_advanced_options.rb +1 -1
- data/lib/comet/models/backup_job_detail.rb +1 -1
- data/lib/comet/models/backup_job_progress.rb +1 -1
- data/lib/comet/models/backup_rule_config.rb +1 -1
- data/lib/comet/models/backup_rule_event_triggers.rb +1 -1
- data/lib/comet/models/branding_options.rb +22 -1
- data/lib/comet/models/branding_properties.rb +22 -1
- data/lib/comet/models/browse_disk_drives_response.rb +1 -1
- data/lib/comet/models/browse_edbresponse.rb +1 -1
- data/lib/comet/models/browse_hvresponse.rb +1 -1
- data/lib/comet/models/browse_office_365list_virtual_accounts_response.rb +1 -1
- data/lib/comet/models/browse_office_365objects_response.rb +1 -1
- data/lib/comet/models/browse_sqlserver_response.rb +1 -1
- data/lib/comet/models/browse_vmware_response.rb +1 -1
- data/lib/comet/models/browse_vssresponse.rb +1 -1
- data/lib/comet/models/bucket_properties.rb +1 -1
- data/lib/comet/models/bucket_usage_info.rb +1 -1
- data/lib/comet/models/comet_apiresponse_message.rb +1 -1
- data/lib/comet/models/comet_destination_location.rb +1 -1
- data/lib/comet/models/constellation_check_report.rb +1 -1
- data/lib/comet/models/constellation_role_options.rb +1 -1
- data/lib/comet/models/constellation_stats.rb +1 -1
- data/lib/comet/models/constellation_status_apiresponse.rb +1 -1
- data/lib/comet/models/content_measurement.rb +1 -1
- data/lib/comet/models/content_measurement_component.rb +1 -1
- data/lib/comet/models/count_jobs_response.rb +1 -1
- data/lib/comet/models/create_group_policy_response.rb +1 -1
- data/lib/comet/models/create_user_group_response.rb +92 -0
- data/lib/comet/models/custom_remote_bucket_settings.rb +1 -1
- data/lib/comet/models/days_of_week_config.rb +1 -1
- data/lib/comet/models/default_email_report_policy.rb +1 -1
- data/lib/comet/models/default_source_with_osrestriction.rb +1 -1
- data/lib/comet/models/destination_config.rb +17 -1
- data/lib/comet/models/destination_location.rb +1 -1
- data/lib/comet/models/destination_statistics.rb +1 -1
- data/lib/comet/models/device_config.rb +1 -1
- data/lib/comet/models/disk_drive.rb +1 -1
- data/lib/comet/models/dispatcher_admin_sources_response.rb +1 -1
- data/lib/comet/models/dispatcher_stored_objects_response.rb +1 -1
- data/lib/comet/models/dispatcher_vault_snapshots_response.rb +1 -1
- data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +1 -1
- data/lib/comet/models/edbfile_info.rb +1 -1
- data/lib/comet/models/email_options.rb +1 -1
- data/lib/comet/models/email_report_config.rb +1 -1
- data/lib/comet/models/email_report_generated_preview.rb +1 -1
- data/lib/comet/models/email_reporting_option.rb +1 -1
- data/lib/comet/models/external_authentication_source.rb +1 -1
- data/lib/comet/models/external_authentication_source_display.rb +1 -1
- data/lib/comet/models/external_authentication_source_response.rb +1 -1
- data/lib/comet/models/external_ldapauthentication_source_server.rb +1 -1
- data/lib/comet/models/external_ldapauthentication_source_settings.rb +1 -1
- data/lib/comet/models/extra_file_exclusion.rb +1 -1
- data/lib/comet/models/file_option.rb +1 -1
- data/lib/comet/models/ftpdestination_location.rb +1 -1
- data/lib/comet/models/get_group_policy_response.rb +1 -1
- data/lib/comet/models/get_profile_and_hash_response_message.rb +1 -1
- data/lib/comet/models/get_profile_hash_response_message.rb +1 -1
- data/lib/comet/models/get_user_group_response.rb +81 -0
- data/lib/comet/models/get_user_group_with_users_response.rb +87 -0
- data/lib/comet/models/global_override_options.rb +1 -1
- data/lib/comet/models/group_policy.rb +1 -1
- data/lib/comet/models/hour_sched_config.rb +1 -1
- data/lib/comet/models/httpconnector_options.rb +1 -1
- data/lib/comet/models/hyper_vmachine_info.rb +1 -1
- data/lib/comet/models/impossible_cloud_iamtemplate_settings.rb +1 -1
- data/lib/comet/models/impossible_cloud_partner_template_settings.rb +1 -1
- data/lib/comet/models/install_creds.rb +1 -1
- data/lib/comet/models/install_token.rb +1 -1
- data/lib/comet/models/install_token_response.rb +1 -1
- data/lib/comet/models/job_entry.rb +1 -1
- data/lib/comet/models/license_limits.rb +1 -1
- data/lib/comet/models/license_options.rb +1 -1
- data/lib/comet/models/live_user_connection.rb +1 -1
- data/lib/comet/models/local_destination_location.rb +1 -1
- data/lib/comet/models/local_storage_directory.rb +1 -1
- data/lib/comet/models/login_protection_options.rb +93 -0
- data/lib/comet/models/mac_oscode_sign_properties.rb +1 -1
- data/lib/comet/models/mongo_dbconnection.rb +1 -1
- data/lib/comet/models/mssqlconnection.rb +1 -1
- data/lib/comet/models/mssqllogin_args.rb +1 -1
- data/lib/comet/models/my_sqlconnection.rb +1 -1
- data/lib/comet/models/new_bucket_detail.rb +1 -1
- data/lib/comet/models/news_entry.rb +1 -1
- data/lib/comet/models/object_lock_storage_template_settings.rb +1 -1
- data/lib/comet/models/office_365connection.rb +1 -1
- data/lib/comet/models/office_365credential.rb +1 -1
- data/lib/comet/models/office_365custom_setting.rb +1 -1
- data/lib/comet/models/office_365custom_setting_v2.rb +1 -1
- data/lib/comet/models/office_365mixed_virtual_account.rb +1 -1
- data/lib/comet/models/office_365object_info.rb +1 -1
- data/lib/comet/models/oidc_claim.rb +1 -1
- data/lib/comet/models/oidc_config.rb +1 -1
- data/lib/comet/models/organization.rb +1 -1
- data/lib/comet/models/organization_login_urlresponse.rb +1 -1
- data/lib/comet/models/organization_response.rb +1 -1
- data/lib/comet/models/osinfo.rb +1 -1
- data/lib/comet/models/partition.rb +1 -1
- data/lib/comet/models/private_branding_properties.rb +1 -1
- data/lib/comet/models/protected_item_engine_type_policy.rb +1 -1
- data/lib/comet/models/psaconfig.rb +1 -1
- data/lib/comet/models/psagrouped_by.rb +1 -1
- data/lib/comet/models/public_branding_properties.rb +22 -1
- data/lib/comet/models/ratelimit_options.rb +1 -1
- data/lib/comet/models/ratelimit_rule.rb +1 -1
- data/lib/comet/models/register_office_application_begin_response.rb +1 -1
- data/lib/comet/models/register_office_application_check_response.rb +1 -1
- data/lib/comet/models/registration_lobby_connection.rb +1 -1
- data/lib/comet/models/remote_server_address.rb +1 -1
- data/lib/comet/models/remote_storage_option.rb +16 -1
- data/lib/comet/models/replica_server.rb +1 -1
- data/lib/comet/models/replicator_state_apiresponse.rb +1 -1
- data/lib/comet/models/request_storage_vault_response_message.rb +1 -1
- data/lib/comet/models/restore_job_advanced_options.rb +1 -1
- data/lib/comet/models/retention_policy.rb +1 -1
- data/lib/comet/models/retention_range.rb +1 -1
- data/lib/comet/models/s3destination_location.rb +1 -1
- data/lib/comet/models/s3generic_virtual_storage_role.rb +1 -1
- data/lib/comet/models/schedule_config.rb +1 -1
- data/lib/comet/models/search_clause.rb +1 -1
- data/lib/comet/models/search_result_file_info.rb +1 -1
- data/lib/comet/models/search_snapshots_response.rb +1 -1
- data/lib/comet/models/self_backup_export_options.rb +1 -1
- data/lib/comet/models/self_backup_options.rb +1 -1
- data/lib/comet/models/self_backup_statistics.rb +1 -1
- data/lib/comet/models/self_backup_target.rb +1 -1
- data/lib/comet/models/server_config_options.rb +10 -1
- data/lib/comet/models/server_config_options_branding_fragment.rb +1 -1
- data/lib/comet/models/server_config_options_software_build_role_fragment.rb +1 -1
- data/lib/comet/models/server_meta_branding_properties.rb +33 -1
- data/lib/comet/models/server_meta_version_info.rb +3 -1
- data/lib/comet/models/session_key_regenerated_response.rb +1 -1
- data/lib/comet/models/session_options.rb +1 -1
- data/lib/comet/models/sftpdestination_location.rb +1 -1
- data/lib/comet/models/single_field_source.rb +1 -1
- data/lib/comet/models/size_measurement.rb +1 -1
- data/lib/comet/models/smbdestination_location.rb +1 -1
- data/lib/comet/models/software_build_role_options.rb +1 -1
- data/lib/comet/models/software_update_news_response.rb +1 -1
- data/lib/comet/models/source_basic_info.rb +1 -1
- data/lib/comet/models/source_config.rb +1 -1
- data/lib/comet/models/source_include_pattern.rb +1 -1
- data/lib/comet/models/source_statistics.rb +1 -1
- data/lib/comet/models/spanned_destination_location.rb +1 -1
- data/lib/comet/models/spanned_storage_extra_info.rb +1 -1
- data/lib/comet/models/sshconnection.rb +1 -1
- data/lib/comet/models/stat_result.rb +1 -1
- data/lib/comet/models/storage_free_space_info.rb +1 -1
- data/lib/comet/models/storage_role_options.rb +1 -1
- data/lib/comet/models/storage_vault_provider_policy.rb +1 -1
- data/lib/comet/models/stored_object.rb +1 -1
- data/lib/comet/models/storj_destination_location.rb +1 -1
- data/lib/comet/models/storj_virtual_storage_role_setting.rb +1 -1
- data/lib/comet/models/streamable_event.rb +1 -1
- data/lib/comet/models/swift_destination_location.rb +1 -1
- data/lib/comet/models/test_response.rb +1 -1
- data/lib/comet/models/time_span.rb +1 -1
- data/lib/comet/models/totp_regenerated_response.rb +1 -1
- data/lib/comet/models/u2fregister_request.rb +1 -1
- data/lib/comet/models/u2fregistered_key.rb +1 -1
- data/lib/comet/models/u2fregistration_challenge_response.rb +1 -1
- data/lib/comet/models/u2fsign_request.rb +1 -1
- data/lib/comet/models/u2fsign_response.rb +1 -1
- data/lib/comet/models/uninstall_config.rb +1 -1
- data/lib/comet/models/update_campaign_device_status.rb +1 -1
- data/lib/comet/models/update_campaign_options.rb +1 -1
- data/lib/comet/models/update_campaign_properties.rb +1 -1
- data/lib/comet/models/update_campaign_status.rb +1 -1
- data/lib/comet/models/update_campaign_status_device_entry.rb +1 -1
- data/lib/comet/models/user_custom_email_settings.rb +1 -1
- data/lib/comet/models/user_group.rb +92 -0
- data/lib/comet/models/user_on_server.rb +1 -1
- data/lib/comet/models/user_policy.rb +10 -1
- data/lib/comet/models/user_profile_config.rb +29 -2
- data/lib/comet/models/user_profile_fragment.rb +1 -1
- data/lib/comet/models/user_server_config.rb +1 -1
- data/lib/comet/models/vault_snapshot.rb +1 -1
- data/lib/comet/models/vmdksnapshot_view_options.rb +1 -1
- data/lib/comet/models/vmware_connection.rb +1 -1
- data/lib/comet/models/vmware_machine_info.rb +1 -1
- data/lib/comet/models/vsphere_connection.rb +1 -1
- data/lib/comet/models/vsscomponent.rb +1 -1
- data/lib/comet/models/vsswriter_info.rb +1 -1
- data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +1 -1
- data/lib/comet/models/web_authn_authenticator_selection.rb +1 -1
- data/lib/comet/models/web_authn_credential.rb +1 -1
- data/lib/comet/models/web_authn_credential_assertion.rb +1 -1
- data/lib/comet/models/web_authn_credential_descriptor.rb +1 -1
- data/lib/comet/models/web_authn_credential_entity.rb +1 -1
- data/lib/comet/models/web_authn_credential_parameter.rb +1 -1
- data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +1 -1
- data/lib/comet/models/web_authn_public_key_credential_request_options.rb +1 -1
- data/lib/comet/models/web_authn_registration_challenge_response.rb +1 -1
- data/lib/comet/models/web_authn_relying_party_entity.rb +1 -1
- data/lib/comet/models/web_authn_sign_request.rb +1 -1
- data/lib/comet/models/web_authn_sign_response.rb +1 -1
- data/lib/comet/models/web_authn_user_entity.rb +1 -1
- data/lib/comet/models/web_dav_destination_location.rb +1 -1
- data/lib/comet/models/web_interface_branding_properties.rb +1 -1
- data/lib/comet/models/webhook_option.rb +1 -1
- data/lib/comet/models/win_smbauth.rb +1 -1
- data/lib/comet/models/windows_code_sign_properties.rb +1 -1
- data/lib/comet_backup_ruby_sdk.rb +6 -1
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c379b7def07b03e07c18a521eef121e41caf0345f93e5eaffdbd1e67b9437050
|
4
|
+
data.tar.gz: f8203be9a7dd67eb5593303c39ea5908faf159bb4fdcecf20a5c862daaebb34d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c17a5c885eec7f4a23c4e48aa4e4d1233533b2d5cf1de66e097f89c051866d919946884979c6bf7347f89c04f21a2142239fd7aba09ef6136634b2fde4a611b4
|
7
|
+
data.tar.gz: 127f864dfd67247b3d6552c154c49c18cd791134abe2871d5a89d63791071de32343bac486faa25bc215ccc9400ed41730078d42d41aed499cf8d03de047190b
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## 2025-01-22 v2.39.0
|
4
|
+
|
5
|
+
- Based on Comet 24.12.3
|
6
|
+
- Additional properties for BrandingOptions, BrandingProperties and ServerMetaBrandingProperties
|
7
|
+
|
8
|
+
## 2025-01-15 v2.38.0
|
9
|
+
|
10
|
+
- Based on Comet 24.12.2
|
11
|
+
- Support new Login Protection feature
|
12
|
+
- Support requiring password changes for admin accounts
|
13
|
+
- Support new user grouping functionality
|
14
|
+
- Support creating a first admin account on empty servers
|
15
|
+
- Support vault-device associations and automatic vault creation
|
16
|
+
|
3
17
|
## 2024-10-29 v2.37.0
|
4
18
|
|
5
19
|
- Based on Comet 24.9.6
|
data/Gemfile.lock
CHANGED
@@ -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.
|
15
|
+
spec.version = '2.39.0'
|
16
16
|
spec.authors = ['Comet Licensing Ltd.']
|
17
17
|
spec.email = ['hello@cometbackup.com']
|
18
18
|
|
data/lib/comet/comet_server.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# Copyright (c) 2020-
|
3
|
+
# Copyright (c) 2020-2025 Comet Licensing Ltd.
|
4
4
|
# Please see the LICENSE file for usage information.
|
5
5
|
#
|
6
6
|
# SPDX-License-Identifier: MIT
|
@@ -163,7 +163,8 @@ module Comet
|
|
163
163
|
# Update settings for your own admin account.
|
164
164
|
# Updating your account password requires you to supply your current password.
|
165
165
|
# To set a new plaintext password, use a password format of 0 (PASSWORD_FORMAT_PLAINTEXT).
|
166
|
-
# This API does not currently allow you to modify your TOTP secret
|
166
|
+
# This API does not currently allow you to modify your TOTP secret.
|
167
|
+
# In Comet 24.12.2 and later, this API can change the IPWhitelist field. Prior to this, changes to the IPWhitelist field were ignored.
|
167
168
|
#
|
168
169
|
# You must supply administrator authentication credentials to use this API.
|
169
170
|
#
|
@@ -325,6 +326,30 @@ module Comet
|
|
325
326
|
ret
|
326
327
|
end
|
327
328
|
|
329
|
+
# AdminAddFirstAdminUser
|
330
|
+
#
|
331
|
+
# Add first admin user account on new server.
|
332
|
+
#
|
333
|
+
# @param [String] target_user the username for this new admin
|
334
|
+
# @param [String] target_password the password for this new admin user
|
335
|
+
# @return [Comet::CometAPIResponseMessage]
|
336
|
+
def admin_add_first_admin_user(target_user, target_password)
|
337
|
+
submit_params = {}
|
338
|
+
raise TypeError, "'target_user' expected String, got #{target_user.class}" unless target_user.is_a? String
|
339
|
+
|
340
|
+
submit_params['TargetUser'] = target_user
|
341
|
+
raise TypeError, "'target_password' expected String, got #{target_password.class}" unless target_password.is_a? String
|
342
|
+
|
343
|
+
submit_params['TargetPassword'] = target_password
|
344
|
+
|
345
|
+
body = perform_request('api/v1/admin/add-first-admin-user', submit_params)
|
346
|
+
json_body = JSON.parse body
|
347
|
+
check_status json_body
|
348
|
+
ret = Comet::CometAPIResponseMessage.new
|
349
|
+
ret.from_hash(json_body)
|
350
|
+
ret
|
351
|
+
end
|
352
|
+
|
328
353
|
# AdminAddUser
|
329
354
|
#
|
330
355
|
# Add a new user account.
|
@@ -1801,6 +1826,7 @@ module Comet
|
|
1801
1826
|
#
|
1802
1827
|
# Request a list of Office365 mailbox accounts.
|
1803
1828
|
# The remote device must have given consent for an MSP to browse their files.
|
1829
|
+
# This is primarily used for testing the connection to Graph API, not for actual listing
|
1804
1830
|
#
|
1805
1831
|
# You must supply administrator authentication credentials to use this API.
|
1806
1832
|
# This API requires the Auth Role to be enabled.
|
@@ -3250,12 +3276,18 @@ module Comet
|
|
3250
3276
|
# Access to this API may be prevented on a per-administrator basis.
|
3251
3277
|
#
|
3252
3278
|
# @param [Array<Comet::RemoteStorageOption>] remote_storage_options Updated configuration content
|
3279
|
+
# @param [String] replacement_auto_vault_id (Optional) Replacement Storage Template ID for auto Storage Vault configurations that use deleted Storage Templates
|
3253
3280
|
# @return [Comet::CometAPIResponseMessage]
|
3254
|
-
def admin_meta_remote_storage_vault_set(remote_storage_options)
|
3281
|
+
def admin_meta_remote_storage_vault_set(remote_storage_options, replacement_auto_vault_id = nil)
|
3255
3282
|
submit_params = {}
|
3256
3283
|
raise TypeError, "'remote_storage_options' expected Array, got #{remote_storage_options.class}" unless remote_storage_options.is_a? Array
|
3257
3284
|
|
3258
3285
|
submit_params['RemoteStorageOptions'] = remote_storage_options.to_json
|
3286
|
+
unless replacement_auto_vault_id.nil?
|
3287
|
+
raise TypeError, "'replacement_auto_vault_id' expected String, got #{replacement_auto_vault_id.class}" unless replacement_auto_vault_id.is_a? String
|
3288
|
+
|
3289
|
+
submit_params['ReplacementAutoVaultID'] = replacement_auto_vault_id
|
3290
|
+
end
|
3259
3291
|
|
3260
3292
|
body = perform_request('api/v1/admin/meta/remote-storage-vault/set', submit_params)
|
3261
3293
|
json_body = JSON.parse body
|
@@ -4037,8 +4069,9 @@ module Comet
|
|
4037
4069
|
# @param [String] target_user The user to receive the new Storage Vault
|
4038
4070
|
# @param [String] storage_provider ID for the storage template destination
|
4039
4071
|
# @param [String] self_address (Optional) The external URL for this server. Used to resolve conflicts
|
4072
|
+
# @param [String] device_id (Optional) The ID of the device to be added as a associated device of the Storage Vault
|
4040
4073
|
# @return [Comet::RequestStorageVaultResponseMessage]
|
4041
|
-
def admin_request_storage_vault(target_user, storage_provider, self_address = nil)
|
4074
|
+
def admin_request_storage_vault(target_user, storage_provider, self_address = nil, device_id = nil)
|
4042
4075
|
submit_params = {}
|
4043
4076
|
raise TypeError, "'target_user' expected String, got #{target_user.class}" unless target_user.is_a? String
|
4044
4077
|
|
@@ -4053,6 +4086,11 @@ module Comet
|
|
4053
4086
|
|
4054
4087
|
submit_params['SelfAddress'] = self_address
|
4055
4088
|
end
|
4089
|
+
unless device_id.nil?
|
4090
|
+
raise TypeError, "'device_id' expected String, got #{device_id.class}" unless device_id.is_a? String
|
4091
|
+
|
4092
|
+
submit_params['DeviceID'] = device_id
|
4093
|
+
end
|
4056
4094
|
|
4057
4095
|
body = perform_request('api/v1/admin/request-storage-vault', submit_params)
|
4058
4096
|
json_body = JSON.parse body
|
@@ -4452,6 +4490,208 @@ module Comet
|
|
4452
4490
|
ret
|
4453
4491
|
end
|
4454
4492
|
|
4493
|
+
# AdminUserGroupsDelete
|
4494
|
+
#
|
4495
|
+
# Delete an existing user group object.
|
4496
|
+
#
|
4497
|
+
# You must supply administrator authentication credentials to use this API.
|
4498
|
+
# This API requires the Auth Role to be enabled.
|
4499
|
+
#
|
4500
|
+
# @param [String] group_id The user group ID to delete
|
4501
|
+
# @return [Comet::CometAPIResponseMessage]
|
4502
|
+
def admin_user_groups_delete(group_id)
|
4503
|
+
submit_params = {}
|
4504
|
+
raise TypeError, "'group_id' expected String, got #{group_id.class}" unless group_id.is_a? String
|
4505
|
+
|
4506
|
+
submit_params['GroupID'] = group_id
|
4507
|
+
|
4508
|
+
body = perform_request('api/v1/admin/user-groups/delete', submit_params)
|
4509
|
+
json_body = JSON.parse body
|
4510
|
+
check_status json_body
|
4511
|
+
ret = Comet::CometAPIResponseMessage.new
|
4512
|
+
ret.from_hash(json_body)
|
4513
|
+
ret
|
4514
|
+
end
|
4515
|
+
|
4516
|
+
# AdminUserGroupsGet
|
4517
|
+
#
|
4518
|
+
# Retrieve a single user group object.
|
4519
|
+
#
|
4520
|
+
# You must supply administrator authentication credentials to use this API.
|
4521
|
+
# This API requires the Auth Role to be enabled.
|
4522
|
+
#
|
4523
|
+
# @param [String] group_id The user group ID to retrieve
|
4524
|
+
# @param [Boolean] include_users (Optional) If present, includes the users array in the response.
|
4525
|
+
# @return [Comet::GetUserGroupWithUsersResponse]
|
4526
|
+
def admin_user_groups_get(group_id, include_users = nil)
|
4527
|
+
submit_params = {}
|
4528
|
+
raise TypeError, "'group_id' expected String, got #{group_id.class}" unless group_id.is_a? String
|
4529
|
+
|
4530
|
+
submit_params['GroupID'] = group_id
|
4531
|
+
unless include_users.nil?
|
4532
|
+
submit_params['IncludeUsers'] = (include_users ? 1 : 0)
|
4533
|
+
end
|
4534
|
+
|
4535
|
+
body = perform_request('api/v1/admin/user-groups/get', submit_params)
|
4536
|
+
json_body = JSON.parse body
|
4537
|
+
check_status json_body
|
4538
|
+
ret = Comet::GetUserGroupWithUsersResponse.new
|
4539
|
+
ret.from_hash(json_body)
|
4540
|
+
ret
|
4541
|
+
end
|
4542
|
+
|
4543
|
+
# AdminUserGroupsList
|
4544
|
+
#
|
4545
|
+
# List all user group names.
|
4546
|
+
# For the top-level organization, the API result includes all user groups for all organizations, unless the TargetOrganization parameter is present.
|
4547
|
+
#
|
4548
|
+
# You must supply administrator authentication credentials to use this API.
|
4549
|
+
# This API requires the Auth Role to be enabled.
|
4550
|
+
#
|
4551
|
+
# @param [String] target_organization (Optional) If present, list the user groups belonging to another organization. Only allowed for administrator accounts in the top-level organization.
|
4552
|
+
# @return [Hash{String => String}]
|
4553
|
+
def admin_user_groups_list(target_organization = nil)
|
4554
|
+
submit_params = {}
|
4555
|
+
unless target_organization.nil?
|
4556
|
+
raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
|
4557
|
+
|
4558
|
+
submit_params['TargetOrganization'] = target_organization
|
4559
|
+
end
|
4560
|
+
|
4561
|
+
body = perform_request('api/v1/admin/user-groups/list', submit_params)
|
4562
|
+
json_body = JSON.parse body
|
4563
|
+
check_status json_body
|
4564
|
+
ret = {}
|
4565
|
+
if json_body.nil?
|
4566
|
+
ret = {}
|
4567
|
+
else
|
4568
|
+
json_body.each do |k, v|
|
4569
|
+
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
4570
|
+
|
4571
|
+
ret[k] = v
|
4572
|
+
end
|
4573
|
+
end
|
4574
|
+
ret
|
4575
|
+
end
|
4576
|
+
|
4577
|
+
# AdminUserGroupsListFull
|
4578
|
+
#
|
4579
|
+
# Get all user group objects.
|
4580
|
+
# For the top-level organization, the API result includes all user groups for all organizations, unless the TargetOrganization parameter is present.
|
4581
|
+
#
|
4582
|
+
# You must supply administrator authentication credentials to use this API.
|
4583
|
+
# This API requires the Auth Role to be enabled.
|
4584
|
+
#
|
4585
|
+
# @param [String] target_organization (Optional) If present, list the user groups belonging to the specified organization. Only allowed for administrator accounts in the top-level organization.
|
4586
|
+
# @return [Hash{String => Comet::UserGroup}]
|
4587
|
+
def admin_user_groups_list_full(target_organization = nil)
|
4588
|
+
submit_params = {}
|
4589
|
+
unless target_organization.nil?
|
4590
|
+
raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
|
4591
|
+
|
4592
|
+
submit_params['TargetOrganization'] = target_organization
|
4593
|
+
end
|
4594
|
+
|
4595
|
+
body = perform_request('api/v1/admin/user-groups/list-full', submit_params)
|
4596
|
+
json_body = JSON.parse body
|
4597
|
+
check_status json_body
|
4598
|
+
ret = {}
|
4599
|
+
if json_body.nil?
|
4600
|
+
ret = {}
|
4601
|
+
else
|
4602
|
+
json_body.each do |k, v|
|
4603
|
+
ret[k] = Comet::UserGroup.new
|
4604
|
+
ret[k].from_hash(v)
|
4605
|
+
end
|
4606
|
+
end
|
4607
|
+
ret
|
4608
|
+
end
|
4609
|
+
|
4610
|
+
# AdminUserGroupsNew
|
4611
|
+
#
|
4612
|
+
# Create a new user group object.
|
4613
|
+
#
|
4614
|
+
# You must supply administrator authentication credentials to use this API.
|
4615
|
+
# This API requires the Auth Role to be enabled.
|
4616
|
+
#
|
4617
|
+
# @param [String] name this is the name of the group.
|
4618
|
+
# @param [String] target_organization (Optional) If present, list the policies belonging to another organization. Only allowed for administrator accounts in the top-level organization.
|
4619
|
+
# @return [Comet::CreateUserGroupResponse]
|
4620
|
+
def admin_user_groups_new(name, target_organization = nil)
|
4621
|
+
submit_params = {}
|
4622
|
+
raise TypeError, "'name' expected String, got #{name.class}" unless name.is_a? String
|
4623
|
+
|
4624
|
+
submit_params['Name'] = name
|
4625
|
+
unless target_organization.nil?
|
4626
|
+
raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
|
4627
|
+
|
4628
|
+
submit_params['TargetOrganization'] = target_organization
|
4629
|
+
end
|
4630
|
+
|
4631
|
+
body = perform_request('api/v1/admin/user-groups/new', submit_params)
|
4632
|
+
json_body = JSON.parse body
|
4633
|
+
check_status json_body
|
4634
|
+
ret = Comet::CreateUserGroupResponse.new
|
4635
|
+
ret.from_hash(json_body)
|
4636
|
+
ret
|
4637
|
+
end
|
4638
|
+
|
4639
|
+
# AdminUserGroupsSet
|
4640
|
+
#
|
4641
|
+
# Update an existing user group or create a new user group.
|
4642
|
+
#
|
4643
|
+
# You must supply administrator authentication credentials to use this API.
|
4644
|
+
# This API requires the Auth Role to be enabled.
|
4645
|
+
#
|
4646
|
+
# @param [String] group_id The user group ID to update or create
|
4647
|
+
# @param [Comet::UserGroup] group The user group data
|
4648
|
+
# @return [Comet::CometAPIResponseMessage]
|
4649
|
+
def admin_user_groups_set(group_id, group)
|
4650
|
+
submit_params = {}
|
4651
|
+
raise TypeError, "'group_id' expected String, got #{group_id.class}" unless group_id.is_a? String
|
4652
|
+
|
4653
|
+
submit_params['GroupID'] = group_id
|
4654
|
+
raise TypeError, "'group' expected Comet::UserGroup, got #{group.class}" unless group.is_a? Comet::UserGroup
|
4655
|
+
|
4656
|
+
submit_params['Group'] = group.to_json
|
4657
|
+
|
4658
|
+
body = perform_request('api/v1/admin/user-groups/set', submit_params)
|
4659
|
+
json_body = JSON.parse body
|
4660
|
+
check_status json_body
|
4661
|
+
ret = Comet::CometAPIResponseMessage.new
|
4662
|
+
ret.from_hash(json_body)
|
4663
|
+
ret
|
4664
|
+
end
|
4665
|
+
|
4666
|
+
# AdminUserGroupsSetUsersForGroup
|
4667
|
+
#
|
4668
|
+
# Update the users in the specified group.
|
4669
|
+
# The provided list of users will be moved into the specified group, and any users
|
4670
|
+
# already in the group who are not in the list of usernames will be removed.
|
4671
|
+
#
|
4672
|
+
# You must supply administrator authentication credentials to use this API.
|
4673
|
+
# This API requires the Auth Role to be enabled.
|
4674
|
+
#
|
4675
|
+
# @param [String] group_id The user group ID to update
|
4676
|
+
# @param [Array<String>] users An array of usernames.
|
4677
|
+
# @return [Comet::CometAPIResponseMessage]
|
4678
|
+
def admin_user_groups_set_users_for_group(group_id, users)
|
4679
|
+
submit_params = {}
|
4680
|
+
raise TypeError, "'group_id' expected String, got #{group_id.class}" unless group_id.is_a? String
|
4681
|
+
|
4682
|
+
submit_params['GroupID'] = group_id
|
4683
|
+
raise TypeError, "'users' expected Array, got #{users.class}" unless users.is_a? Array
|
4684
|
+
|
4685
|
+
submit_params['Users'] = users.to_json
|
4686
|
+
|
4687
|
+
body = perform_request('api/v1/admin/user-groups/set-users-for-group', submit_params)
|
4688
|
+
json_body = JSON.parse body
|
4689
|
+
check_status json_body
|
4690
|
+
ret = Comet::CometAPIResponseMessage.new
|
4691
|
+
ret.from_hash(json_body)
|
4692
|
+
ret
|
4693
|
+
end
|
4694
|
+
|
4455
4695
|
# HybridSessionStart
|
4456
4696
|
#
|
4457
4697
|
# Generate a session key (log in).
|
data/lib/comet/definitions.rb
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# Copyright (c) 2020-
|
3
|
+
# Copyright (c) 2020-2025 Comet Licensing Ltd.
|
4
4
|
# Please see the LICENSE file for usage information.
|
5
5
|
#
|
6
6
|
# SPDX-License-Identifier: MIT
|
7
7
|
|
8
8
|
module Comet
|
9
9
|
|
10
|
-
APPLICATION_VERSION = '24.
|
10
|
+
APPLICATION_VERSION = '24.12.3'
|
11
11
|
|
12
12
|
APPLICATION_VERSION_MAJOR = 24
|
13
13
|
|
14
|
-
APPLICATION_VERSION_MINOR =
|
14
|
+
APPLICATION_VERSION_MINOR = 12
|
15
15
|
|
16
|
-
APPLICATION_VERSION_REVISION =
|
16
|
+
APPLICATION_VERSION_REVISION = 3
|
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
|
@@ -212,7 +212,7 @@ module Comet
|
|
212
212
|
# Microsoft SQL Server
|
213
213
|
ENGINE_BUILTIN_MSSQL = 'engine1/mssql'
|
214
214
|
|
215
|
-
# Windows System Backup
|
215
|
+
# Windows System Backup, deprecated from version 24.12.2
|
216
216
|
ENGINE_BUILTIN_WINDOWSSYSTEM = 'engine1/windowssystem'
|
217
217
|
|
218
218
|
# Microsoft Exchange Server
|
@@ -245,14 +245,14 @@ module Comet
|
|
245
245
|
# FtpsModeType: Use explicit FTPS, first creating an insecure connection and then upgrading to SSL/TLS using AUTH TLS (like STARTTLS).
|
246
246
|
FTPS_MODE_EXPLICIT = 2
|
247
247
|
|
248
|
-
# Back up Hyper-V virtual machines using VSS mode. This includes all previous snapshots.
|
248
|
+
# HypervMethod: Back up Hyper-V virtual machines using VSS mode. This includes all previous snapshots.
|
249
249
|
HYPERV_METHOD_VSS = 'vss'
|
250
250
|
|
251
|
-
# Back up Hyper-V virtual machines using WMI mode. This includes the latest snapshot data only.
|
251
|
+
# HypervMethod: Back up Hyper-V virtual machines using WMI mode. This includes the latest snapshot data only.
|
252
252
|
# This const is available in Comet 23.9.8 and later.
|
253
253
|
HYPERV_METHOD_WMI_COPY = 'copy'
|
254
254
|
|
255
|
-
# Back up Hyper-V virtual machines using WMI mode with RCT acceleration. This includes the latest snapshot data only.
|
255
|
+
# HypervMethod: Back up Hyper-V virtual machines using WMI mode with RCT acceleration. This includes the latest snapshot data only.
|
256
256
|
# This const is available in Comet 23.9.8 and later.
|
257
257
|
HYPERV_METHOD_WMI_CBT = 'wmi'
|
258
258
|
|
@@ -405,6 +405,15 @@ module Comet
|
|
405
405
|
# MSSQLRestoreOpt
|
406
406
|
MSSQL_RESTORE_NORECOVERY = 'NO_RECOVERY'
|
407
407
|
|
408
|
+
# Used in policy to define that the automatic Storage Vaults for new devices is not enforced by the policy
|
409
|
+
NEW_STORAGE_VAULT_MODE_USER = 'user_controlled'
|
410
|
+
|
411
|
+
# No Storage Vault will be created when a new device is added
|
412
|
+
NEW_STORAGE_VAULT_MODE_NONE = 'none'
|
413
|
+
|
414
|
+
# When a new device is added, a Storage Vault will be created using the servers default Storage Template
|
415
|
+
NEW_STORAGE_VAULT_MODE_SERVER = 'server_controlled'
|
416
|
+
|
408
417
|
# Enable Object Lock capability if the corresponding Days field is greater than zero.
|
409
418
|
New code should explicitly use OBJECT_LOCK_ON / OBJECT_LOCK_OFF instead.
|
410
419
|
# @deprecated This const has been deprecated since Comet version 23.x.x
|
@@ -912,6 +921,15 @@ New code should explicitly use OBJECT_LOCK_ON / OBJECT_LOCK_OFF instead.
|
|
912
921
|
# StreamableEventType: Device disconnected from registration lobby
|
913
922
|
SEVT_DEVICE_LOBBY_DISCONNECT = 4705
|
914
923
|
|
924
|
+
# StreamableEventType: UserGroup created.
|
925
|
+
SEVT_USERGROUP_NEW = 4800
|
926
|
+
|
927
|
+
# StreamableEventType: UserGroup deleted
|
928
|
+
SEVT_USERGROUP_REMOVED = 4801
|
929
|
+
|
930
|
+
# StreamableEventType: UserGroup updated.
|
931
|
+
SEVT_USERGROUP_UPDATED = 4802
|
932
|
+
|
915
933
|
# StreamableEventType
|
916
934
|
SEVT__MAX = 4999
|
917
935
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# Copyright (c) 2020-
|
3
|
+
# Copyright (c) 2020-2025 Comet Licensing Ltd.
|
4
4
|
# Please see the LICENSE file for usage information.
|
5
5
|
#
|
6
6
|
# SPDX-License-Identifier: MIT
|
@@ -39,6 +39,10 @@ module Comet
|
|
39
39
|
# @type [Array<Comet::AdminWebAuthnRegistration>] web_authn_registrations
|
40
40
|
attr_accessor :web_authn_registrations
|
41
41
|
|
42
|
+
# This field is available in Comet 24.12.0 and later.
|
43
|
+
# @type [Boolean] require_password_change
|
44
|
+
attr_accessor :require_password_change
|
45
|
+
|
42
46
|
# One of the ENCRYPTIONMETHOD_ constants
|
43
47
|
# @type [Number] totpkey_encryption_format
|
44
48
|
attr_accessor :totpkey_encryption_format
|
@@ -118,6 +122,8 @@ module Comet
|
|
118
122
|
@web_authn_registrations[i1].from_hash(v1)
|
119
123
|
end
|
120
124
|
end
|
125
|
+
when 'RequirePasswordChange'
|
126
|
+
@require_password_change = v
|
121
127
|
when 'TOTPKeyEncryptionFormat'
|
122
128
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
123
129
|
|
@@ -151,6 +157,7 @@ module Comet
|
|
151
157
|
unless @web_authn_registrations.nil?
|
152
158
|
ret['WebAuthnRegistrations'] = @web_authn_registrations
|
153
159
|
end
|
160
|
+
ret['RequirePasswordChange'] = @require_password_change
|
154
161
|
unless @totpkey_encryption_format.nil?
|
155
162
|
ret['TOTPKeyEncryptionFormat'] = @totpkey_encryption_format
|
156
163
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# Copyright (c) 2020-
|
3
|
+
# Copyright (c) 2020-2025 Comet Licensing Ltd.
|
4
4
|
# Please see the LICENSE file for usage information.
|
5
5
|
#
|
6
6
|
# SPDX-License-Identifier: MIT
|
@@ -48,6 +48,10 @@ module Comet
|
|
48
48
|
# @type [Array<Comet::AdminWebAuthnRegistration>] web_authn_registrations
|
49
49
|
attr_accessor :web_authn_registrations
|
50
50
|
|
51
|
+
# This field is available in Comet 24.12.0 and later.
|
52
|
+
# @type [Boolean] require_password_change
|
53
|
+
attr_accessor :require_password_change
|
54
|
+
|
51
55
|
# One of the ENCRYPTIONMETHOD_ constants
|
52
56
|
# @type [Number] totpkey_encryption_format
|
53
57
|
attr_accessor :totpkey_encryption_format
|
@@ -146,6 +150,8 @@ module Comet
|
|
146
150
|
@web_authn_registrations[i1].from_hash(v1)
|
147
151
|
end
|
148
152
|
end
|
153
|
+
when 'RequirePasswordChange'
|
154
|
+
@require_password_change = v
|
149
155
|
when 'TOTPKeyEncryptionFormat'
|
150
156
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
151
157
|
|
@@ -187,6 +193,7 @@ module Comet
|
|
187
193
|
unless @web_authn_registrations.nil?
|
188
194
|
ret['WebAuthnRegistrations'] = @web_authn_registrations
|
189
195
|
end
|
196
|
+
ret['RequirePasswordChange'] = @require_password_change
|
190
197
|
unless @totpkey_encryption_format.nil?
|
191
198
|
ret['TOTPKeyEncryptionFormat'] = @totpkey_encryption_format
|
192
199
|
end
|