google-api-client 0.39.4 → 0.41.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 +283 -0
- data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
- data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +3 -1
- data/generated/google/apis/admob_v1.rb +1 -1
- data/generated/google/apis/admob_v1/classes.rb +5 -6
- data/generated/google/apis/androidenterprise_v1.rb +2 -2
- data/generated/google/apis/androidenterprise_v1/classes.rb +547 -724
- data/generated/google/apis/androidenterprise_v1/representations.rb +0 -54
- data/generated/google/apis/androidenterprise_v1/service.rb +540 -795
- data/generated/google/apis/androidmanagement_v1.rb +1 -1
- data/generated/google/apis/androidmanagement_v1/classes.rb +117 -0
- data/generated/google/apis/androidmanagement_v1/representations.rb +39 -0
- data/generated/google/apis/androidpublisher_v3.rb +3 -3
- data/generated/google/apis/androidpublisher_v3/classes.rb +473 -736
- data/generated/google/apis/androidpublisher_v3/representations.rb +10 -201
- data/generated/google/apis/androidpublisher_v3/service.rb +531 -863
- data/generated/google/apis/apigee_v1.rb +1 -1
- data/generated/google/apis/apigee_v1/classes.rb +58 -10
- data/generated/google/apis/apigee_v1/representations.rb +7 -0
- data/generated/google/apis/apigee_v1/service.rb +24 -14
- data/generated/google/apis/appsmarket_v2.rb +3 -3
- data/generated/google/apis/appsmarket_v2/classes.rb +160 -159
- data/generated/google/apis/appsmarket_v2/representations.rb +78 -78
- data/generated/google/apis/appsmarket_v2/service.rb +24 -39
- data/generated/google/apis/artifactregistry_v1beta1.rb +38 -0
- data/generated/google/apis/artifactregistry_v1beta1/classes.rb +1132 -0
- data/generated/google/apis/artifactregistry_v1beta1/representations.rb +442 -0
- data/generated/google/apis/artifactregistry_v1beta1/service.rb +957 -0
- data/generated/google/apis/bigquery_v2.rb +1 -1
- data/generated/google/apis/bigquery_v2/classes.rb +54 -1
- data/generated/google/apis/bigquery_v2/representations.rb +4 -0
- data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
- data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +4 -4
- data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
- data/generated/google/apis/bigqueryreservation_v1/classes.rb +2 -0
- data/generated/google/apis/bigqueryreservation_v1/service.rb +8 -8
- data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
- data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +20 -14
- data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +93 -68
- data/generated/google/apis/bigtableadmin_v1.rb +1 -1
- data/generated/google/apis/bigtableadmin_v1/classes.rb +5 -10
- data/generated/google/apis/bigtableadmin_v2.rb +1 -1
- data/generated/google/apis/bigtableadmin_v2/classes.rb +39 -31
- data/generated/google/apis/bigtableadmin_v2/service.rb +1 -5
- data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
- data/generated/google/apis/billingbudgets_v1beta1/classes.rb +21 -0
- data/generated/google/apis/billingbudgets_v1beta1/representations.rb +6 -0
- data/generated/google/apis/binaryauthorization_v1.rb +1 -1
- data/generated/google/apis/books_v1.rb +1 -1
- data/generated/google/apis/books_v1/service.rb +2 -2
- data/generated/google/apis/calendar_v3.rb +1 -1
- data/generated/google/apis/calendar_v3/classes.rb +1 -1
- data/generated/google/apis/chat_v1.rb +1 -1
- data/generated/google/apis/chat_v1/classes.rb +2 -0
- data/generated/google/apis/{pagespeedonline_v1.rb → chromeuxreport_v1.rb} +9 -9
- data/generated/google/apis/chromeuxreport_v1/classes.rb +297 -0
- data/generated/google/apis/chromeuxreport_v1/representations.rb +147 -0
- data/generated/google/apis/chromeuxreport_v1/service.rb +92 -0
- data/generated/google/apis/cloudasset_v1.rb +1 -1
- data/generated/google/apis/cloudasset_v1/classes.rb +82 -46
- data/generated/google/apis/cloudasset_v1/representations.rb +2 -0
- data/generated/google/apis/cloudasset_v1/service.rb +14 -11
- data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
- data/generated/google/apis/cloudasset_v1beta1/classes.rb +977 -52
- data/generated/google/apis/cloudasset_v1beta1/representations.rb +241 -0
- data/generated/google/apis/cloudasset_v1beta1/service.rb +20 -11
- data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
- data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +48 -16
- data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +2 -0
- data/generated/google/apis/cloudasset_v1p1beta1/service.rb +15 -16
- data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
- data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +40 -23
- data/generated/google/apis/cloudasset_v1p4beta1/service.rb +34 -9
- data/generated/google/apis/cloudbuild_v1.rb +1 -1
- data/generated/google/apis/cloudbuild_v1/classes.rb +17 -4
- data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
- data/generated/google/apis/cloudbuild_v1/service.rb +163 -0
- data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
- data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +156 -2
- data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +61 -0
- data/generated/google/apis/cloudbuild_v1alpha1/service.rb +121 -0
- data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
- data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +156 -2
- data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +61 -0
- data/generated/google/apis/cloudbuild_v1alpha2/service.rb +121 -0
- data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
- data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +1 -1
- data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +5 -6
- data/generated/google/apis/cloudidentity_v1.rb +1 -1
- data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
- data/generated/google/apis/cloudidentity_v1beta1/classes.rb +6 -0
- data/generated/google/apis/cloudidentity_v1beta1/representations.rb +1 -0
- data/generated/google/apis/cloudiot_v1.rb +1 -1
- data/generated/google/apis/cloudiot_v1/classes.rb +26 -10
- data/generated/google/apis/cloudkms_v1.rb +1 -1
- data/generated/google/apis/cloudkms_v1/classes.rb +288 -7
- data/generated/google/apis/cloudkms_v1/representations.rb +17 -0
- data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
- data/generated/google/apis/cloudresourcemanager_v1/classes.rb +20 -15
- data/generated/google/apis/cloudresourcemanager_v1/service.rb +21 -14
- data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
- data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +10 -8
- data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +8 -8
- data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
- data/generated/google/apis/cloudresourcemanager_v2/classes.rb +6 -6
- data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
- data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +6 -6
- data/generated/google/apis/cloudsearch_v1.rb +1 -1
- data/generated/google/apis/cloudsearch_v1/service.rb +1 -1
- data/generated/google/apis/cloudtasks_v2.rb +1 -1
- data/generated/google/apis/cloudtasks_v2/classes.rb +8 -6
- data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
- data/generated/google/apis/cloudtasks_v2beta3/classes.rb +11 -2
- data/generated/google/apis/cloudtasks_v2beta3/representations.rb +1 -0
- data/generated/google/apis/compute_alpha.rb +1 -1
- data/generated/google/apis/compute_alpha/classes.rb +711 -151
- data/generated/google/apis/compute_alpha/representations.rb +220 -33
- data/generated/google/apis/compute_alpha/service.rb +1618 -831
- data/generated/google/apis/compute_beta.rb +1 -1
- data/generated/google/apis/compute_beta/classes.rb +173 -71
- data/generated/google/apis/compute_beta/representations.rb +25 -0
- data/generated/google/apis/compute_beta/service.rb +591 -591
- data/generated/google/apis/compute_v1.rb +1 -1
- data/generated/google/apis/compute_v1/classes.rb +66 -18
- data/generated/google/apis/compute_v1/representations.rb +6 -0
- data/generated/google/apis/container_v1.rb +1 -1
- data/generated/google/apis/container_v1/classes.rb +2 -4
- data/generated/google/apis/container_v1beta1.rb +1 -1
- data/generated/google/apis/container_v1beta1/classes.rb +82 -10
- data/generated/google/apis/container_v1beta1/representations.rb +33 -0
- data/generated/google/apis/content_v2.rb +1 -1
- data/generated/google/apis/content_v2/classes.rb +41 -1
- data/generated/google/apis/content_v2/representations.rb +17 -0
- data/generated/google/apis/content_v2/service.rb +15 -6
- data/generated/google/apis/content_v2_1.rb +1 -1
- data/generated/google/apis/content_v2_1/classes.rb +450 -6
- data/generated/google/apis/content_v2_1/representations.rb +173 -0
- data/generated/google/apis/content_v2_1/service.rb +95 -6
- data/generated/google/apis/dataflow_v1b3.rb +1 -1
- data/generated/google/apis/dataflow_v1b3/classes.rb +331 -0
- data/generated/google/apis/dataflow_v1b3/representations.rb +164 -0
- data/generated/google/apis/dataflow_v1b3/service.rb +261 -0
- data/generated/google/apis/datafusion_v1beta1.rb +1 -1
- data/generated/google/apis/datafusion_v1beta1/classes.rb +64 -19
- data/generated/google/apis/datafusion_v1beta1/representations.rb +16 -0
- data/generated/google/apis/datafusion_v1beta1/service.rb +49 -2
- data/generated/google/apis/dataproc_v1.rb +1 -1
- data/generated/google/apis/dataproc_v1/classes.rb +68 -22
- data/generated/google/apis/dataproc_v1/representations.rb +17 -0
- data/generated/google/apis/dataproc_v1beta2.rb +1 -1
- data/generated/google/apis/dataproc_v1beta2/classes.rb +61 -35
- data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
- data/generated/google/apis/dataproc_v1beta2/service.rb +35 -21
- data/generated/google/apis/datastore_v1.rb +1 -1
- data/generated/google/apis/datastore_v1/classes.rb +1 -1
- data/generated/google/apis/datastore_v1beta3.rb +1 -1
- data/generated/google/apis/datastore_v1beta3/classes.rb +1 -1
- data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
- data/generated/google/apis/deploymentmanager_alpha/classes.rb +362 -176
- data/generated/google/apis/deploymentmanager_alpha/representations.rb +22 -4
- data/generated/google/apis/deploymentmanager_alpha/service.rb +198 -311
- data/generated/google/apis/deploymentmanager_v2.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2/classes.rb +295 -146
- data/generated/google/apis/deploymentmanager_v2/representations.rb +17 -1
- data/generated/google/apis/deploymentmanager_v2/service.rb +101 -99
- data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2beta/classes.rb +350 -170
- data/generated/google/apis/deploymentmanager_v2beta/representations.rb +18 -1
- data/generated/google/apis/deploymentmanager_v2beta/service.rb +154 -152
- data/generated/google/apis/dfareporting_v3_3.rb +1 -1
- data/generated/google/apis/dfareporting_v3_3/classes.rb +2 -2
- data/generated/google/apis/dfareporting_v3_3/service.rb +2 -2
- data/generated/google/apis/dfareporting_v3_4.rb +1 -1
- data/generated/google/apis/dfareporting_v3_4/classes.rb +2 -2
- data/generated/google/apis/dfareporting_v3_4/service.rb +2 -2
- data/generated/google/apis/dialogflow_v2.rb +1 -1
- data/generated/google/apis/dialogflow_v2/classes.rb +549 -9
- data/generated/google/apis/dialogflow_v2/representations.rb +234 -0
- data/generated/google/apis/dialogflow_v2/service.rb +14 -2
- data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
- data/generated/google/apis/dialogflow_v2beta1/classes.rb +540 -8
- data/generated/google/apis/dialogflow_v2beta1/representations.rb +234 -0
- data/generated/google/apis/dialogflow_v2beta1/service.rb +74 -6
- data/generated/google/apis/displayvideo_v1.rb +1 -1
- data/generated/google/apis/displayvideo_v1/classes.rb +612 -0
- data/generated/google/apis/displayvideo_v1/representations.rb +314 -0
- data/generated/google/apis/displayvideo_v1/service.rb +1968 -337
- data/generated/google/apis/dlp_v2.rb +1 -1
- data/generated/google/apis/dlp_v2/classes.rb +17 -27
- data/generated/google/apis/dlp_v2/service.rb +247 -204
- data/generated/google/apis/dns_v1.rb +1 -1
- data/generated/google/apis/dns_v1/classes.rb +160 -261
- data/generated/google/apis/dns_v1/representations.rb +17 -0
- data/generated/google/apis/dns_v1/service.rb +21 -141
- data/generated/google/apis/dns_v1beta2.rb +1 -1
- data/generated/google/apis/dns_v1beta2/classes.rb +189 -273
- data/generated/google/apis/dns_v1beta2/representations.rb +32 -0
- data/generated/google/apis/dns_v1beta2/service.rb +21 -141
- data/generated/google/apis/dns_v2beta1.rb +1 -1
- data/generated/google/apis/dns_v2beta1/classes.rb +160 -261
- data/generated/google/apis/dns_v2beta1/representations.rb +17 -0
- data/generated/google/apis/dns_v2beta1/service.rb +21 -141
- data/generated/google/apis/documentai_v1beta2.rb +36 -0
- data/generated/google/apis/documentai_v1beta2/classes.rb +3284 -0
- data/generated/google/apis/documentai_v1beta2/representations.rb +1344 -0
- data/generated/google/apis/documentai_v1beta2/service.rb +269 -0
- data/generated/google/apis/drive_v2.rb +1 -1
- data/generated/google/apis/drive_v2/service.rb +26 -78
- data/generated/google/apis/drive_v3.rb +1 -1
- data/generated/google/apis/drive_v3/service.rb +18 -54
- data/generated/google/apis/fcm_v1.rb +1 -1
- data/generated/google/apis/fcm_v1/classes.rb +6 -0
- data/generated/google/apis/file_v1.rb +1 -1
- data/generated/google/apis/file_v1/classes.rb +31 -1156
- data/generated/google/apis/file_v1/representations.rb +12 -378
- data/generated/google/apis/file_v1beta1.rb +1 -1
- data/generated/google/apis/file_v1beta1/classes.rb +98 -1156
- data/generated/google/apis/file_v1beta1/representations.rb +26 -373
- data/generated/google/apis/firebase_v1beta1.rb +1 -1
- data/generated/google/apis/firebase_v1beta1/classes.rb +7 -6
- data/generated/google/apis/firebase_v1beta1/service.rb +53 -49
- data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
- data/generated/google/apis/firebasehosting_v1beta1/classes.rb +30 -25
- data/generated/google/apis/{pagespeedonline_v2.rb → firebaseml_v1.rb} +12 -10
- data/generated/google/apis/firebaseml_v1/classes.rb +213 -0
- data/generated/google/apis/firebaseml_v1/representations.rb +112 -0
- data/generated/google/apis/firebaseml_v1/service.rb +181 -0
- data/generated/google/apis/fitness_v1.rb +4 -4
- data/generated/google/apis/fitness_v1/classes.rb +185 -158
- data/generated/google/apis/fitness_v1/service.rb +187 -215
- data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
- data/generated/google/apis/games_configuration_v1configuration/service.rb +1 -1
- data/generated/google/apis/games_management_v1management.rb +1 -1
- data/generated/google/apis/games_management_v1management/service.rb +1 -1
- data/generated/google/apis/games_v1.rb +1 -1
- data/generated/google/apis/genomics_v2alpha1.rb +1 -1
- data/generated/google/apis/genomics_v2alpha1/classes.rb +84 -0
- data/generated/google/apis/genomics_v2alpha1/representations.rb +28 -0
- data/generated/google/apis/genomics_v2alpha1/service.rb +38 -2
- data/generated/google/apis/gmail_v1.rb +3 -2
- data/generated/google/apis/gmail_v1/classes.rb +263 -200
- data/generated/google/apis/gmail_v1/service.rb +551 -743
- data/generated/google/apis/groupsmigration_v1.rb +3 -2
- data/generated/google/apis/groupsmigration_v1/service.rb +10 -17
- data/generated/google/apis/healthcare_v1.rb +1 -1
- data/generated/google/apis/healthcare_v1/classes.rb +39 -30
- data/generated/google/apis/healthcare_v1/service.rb +66 -32
- data/generated/google/apis/healthcare_v1beta1.rb +1 -1
- data/generated/google/apis/healthcare_v1beta1/classes.rb +948 -77
- data/generated/google/apis/healthcare_v1beta1/representations.rb +404 -0
- data/generated/google/apis/healthcare_v1beta1/service.rb +682 -147
- data/generated/google/apis/homegraph_v1.rb +1 -1
- data/generated/google/apis/homegraph_v1/classes.rb +3 -0
- data/generated/google/apis/iam_v1.rb +1 -1
- data/generated/google/apis/iam_v1/classes.rb +116 -93
- data/generated/google/apis/iam_v1/service.rb +170 -144
- data/generated/google/apis/iamcredentials_v1.rb +2 -2
- data/generated/google/apis/iamcredentials_v1/classes.rb +30 -5
- data/generated/google/apis/iamcredentials_v1/service.rb +1 -1
- data/generated/google/apis/jobs_v3.rb +1 -1
- data/generated/google/apis/jobs_v3/classes.rb +4 -2
- data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
- data/generated/google/apis/jobs_v3p1beta1/classes.rb +4 -2
- data/generated/google/apis/lifesciences_v2beta.rb +1 -1
- data/generated/google/apis/lifesciences_v2beta/classes.rb +10 -0
- data/generated/google/apis/lifesciences_v2beta/representations.rb +1 -0
- data/generated/google/apis/memcache_v1beta2.rb +1 -1
- data/generated/google/apis/memcache_v1beta2/classes.rb +42 -11
- data/generated/google/apis/memcache_v1beta2/representations.rb +15 -0
- data/generated/google/apis/monitoring_v1.rb +1 -1
- data/generated/google/apis/monitoring_v1/classes.rb +46 -0
- data/generated/google/apis/monitoring_v1/representations.rb +18 -0
- data/generated/google/apis/monitoring_v3.rb +1 -1
- data/generated/google/apis/monitoring_v3/classes.rb +73 -17
- data/generated/google/apis/monitoring_v3/representations.rb +2 -0
- data/generated/google/apis/{pagespeedonline_v4.rb → networkmanagement_v1.rb} +13 -10
- data/generated/google/apis/networkmanagement_v1/classes.rb +1868 -0
- data/generated/google/apis/networkmanagement_v1/representations.rb +661 -0
- data/generated/google/apis/networkmanagement_v1/service.rb +667 -0
- data/generated/google/apis/osconfig_v1.rb +1 -1
- data/generated/google/apis/osconfig_v1/classes.rb +2 -2
- data/generated/google/apis/osconfig_v1beta.rb +1 -1
- data/generated/google/apis/osconfig_v1beta/classes.rb +6 -7
- data/generated/google/apis/pagespeedonline_v5.rb +1 -1
- data/generated/google/apis/pagespeedonline_v5/classes.rb +7 -0
- data/generated/google/apis/pagespeedonline_v5/representations.rb +1 -0
- data/generated/google/apis/people_v1.rb +1 -1
- data/generated/google/apis/people_v1/classes.rb +216 -0
- data/generated/google/apis/people_v1/representations.rb +82 -0
- data/generated/google/apis/people_v1/service.rb +371 -8
- data/generated/google/apis/playcustomapp_v1.rb +3 -3
- data/generated/google/apis/playcustomapp_v1/classes.rb +7 -0
- data/generated/google/apis/playcustomapp_v1/representations.rb +1 -0
- data/generated/google/apis/playcustomapp_v1/service.rb +11 -19
- data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
- data/generated/google/apis/policytroubleshooter_v1/classes.rb +6 -6
- data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
- data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +6 -6
- data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
- data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +30 -0
- data/generated/google/apis/pubsub_v1.rb +1 -1
- data/generated/google/apis/pubsub_v1/classes.rb +64 -8
- data/generated/google/apis/pubsub_v1/representations.rb +28 -0
- data/generated/google/apis/pubsub_v1/service.rb +35 -1
- data/generated/google/apis/{customsearch_v1.rb → recommender_v1.rb} +11 -8
- data/generated/google/apis/recommender_v1/classes.rb +505 -0
- data/generated/google/apis/recommender_v1/representations.rb +232 -0
- data/generated/google/apis/recommender_v1/service.rb +266 -0
- data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
- data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
- data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
- data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
- data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
- data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
- data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
- data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
- data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
- data/generated/google/apis/run_v1.rb +1 -1
- data/generated/google/apis/run_v1/classes.rb +15 -6
- data/generated/google/apis/run_v1/representations.rb +1 -0
- data/generated/google/apis/run_v1alpha1.rb +1 -1
- data/generated/google/apis/run_v1alpha1/classes.rb +15 -6
- data/generated/google/apis/run_v1alpha1/representations.rb +1 -0
- data/generated/google/apis/run_v1beta1.rb +1 -1
- data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
- data/generated/google/apis/sasportal_v1alpha1/service.rb +30 -0
- data/generated/google/apis/secretmanager_v1.rb +1 -1
- data/generated/google/apis/secretmanager_v1/classes.rb +6 -6
- data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
- data/generated/google/apis/secretmanager_v1beta1/classes.rb +6 -6
- data/generated/google/apis/securitycenter_v1.rb +1 -1
- data/generated/google/apis/securitycenter_v1/classes.rb +143 -28
- data/generated/google/apis/securitycenter_v1/representations.rb +38 -0
- data/generated/google/apis/securitycenter_v1/service.rb +10 -10
- data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
- data/generated/google/apis/securitycenter_v1beta1/classes.rb +133 -18
- data/generated/google/apis/securitycenter_v1beta1/representations.rb +38 -0
- data/generated/google/apis/securitycenter_v1p1alpha1.rb +1 -1
- data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +100 -0
- data/generated/google/apis/securitycenter_v1p1alpha1/representations.rb +38 -0
- data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
- data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +143 -28
- data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +38 -0
- data/generated/google/apis/securitycenter_v1p1beta1/service.rb +10 -10
- data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
- data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +223 -74
- data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +33 -2
- data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
- data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +229 -74
- data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +34 -2
- data/generated/google/apis/servicecontrol_v1.rb +1 -1
- data/generated/google/apis/servicecontrol_v1/classes.rb +3 -3
- data/generated/google/apis/servicemanagement_v1.rb +1 -1
- data/generated/google/apis/servicemanagement_v1/classes.rb +123 -80
- data/generated/google/apis/servicemanagement_v1/representations.rb +0 -2
- data/generated/google/apis/servicenetworking_v1.rb +1 -1
- data/generated/google/apis/servicenetworking_v1/classes.rb +498 -74
- data/generated/google/apis/servicenetworking_v1/representations.rb +209 -2
- data/generated/google/apis/servicenetworking_v1/service.rb +187 -0
- data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
- data/generated/google/apis/servicenetworking_v1beta/classes.rb +307 -74
- data/generated/google/apis/servicenetworking_v1beta/representations.rb +130 -2
- data/generated/google/apis/serviceusage_v1.rb +1 -1
- data/generated/google/apis/serviceusage_v1/classes.rb +221 -74
- data/generated/google/apis/serviceusage_v1/representations.rb +34 -2
- data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
- data/generated/google/apis/serviceusage_v1beta1/classes.rb +272 -74
- data/generated/google/apis/serviceusage_v1beta1/representations.rb +63 -2
- data/generated/google/apis/serviceusage_v1beta1/service.rb +71 -0
- data/generated/google/apis/slides_v1.rb +1 -1
- data/generated/google/apis/slides_v1/classes.rb +4 -0
- data/generated/google/apis/sourcerepo_v1.rb +1 -1
- data/generated/google/apis/sourcerepo_v1/classes.rb +23 -10
- data/generated/google/apis/sourcerepo_v1/service.rb +3 -0
- data/generated/google/apis/spanner_v1.rb +1 -1
- data/generated/google/apis/spanner_v1/classes.rb +30 -12
- data/generated/google/apis/spanner_v1/service.rb +8 -8
- data/generated/google/apis/sql_v1beta4.rb +1 -1
- data/generated/google/apis/sql_v1beta4/classes.rb +7 -0
- data/generated/google/apis/sql_v1beta4/representations.rb +1 -0
- data/generated/google/apis/storagetransfer_v1.rb +1 -1
- data/generated/google/apis/storagetransfer_v1/classes.rb +2 -1
- data/generated/google/apis/tasks_v1.rb +3 -3
- data/generated/google/apis/tasks_v1/classes.rb +26 -25
- data/generated/google/apis/tasks_v1/representations.rb +4 -8
- data/generated/google/apis/tasks_v1/service.rb +79 -128
- data/generated/google/apis/testing_v1.rb +1 -1
- data/generated/google/apis/testing_v1/classes.rb +2 -1
- data/generated/google/apis/texttospeech_v1.rb +1 -1
- data/generated/google/apis/texttospeech_v1/classes.rb +1 -1
- data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
- data/generated/google/apis/texttospeech_v1beta1/classes.rb +1 -1
- data/generated/google/apis/tpu_v1.rb +1 -1
- data/generated/google/apis/tpu_v1/classes.rb +3 -3
- data/generated/google/apis/tpu_v1alpha1.rb +1 -1
- data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
- data/generated/google/apis/translate_v3.rb +1 -1
- data/generated/google/apis/verifiedaccess_v1.rb +3 -3
- data/generated/google/apis/verifiedaccess_v1/service.rb +2 -2
- data/generated/google/apis/videointelligence_v1.rb +1 -1
- data/generated/google/apis/videointelligence_v1/classes.rb +1 -1
- data/generated/google/apis/videointelligence_v1/service.rb +32 -0
- data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
- data/generated/google/apis/videointelligence_v1beta2/classes.rb +1 -1
- data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
- data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +1 -1
- data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
- data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +1 -1
- data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
- data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +1 -1
- data/generated/google/apis/vision_v1.rb +1 -1
- data/generated/google/apis/vision_v1/classes.rb +18 -0
- data/generated/google/apis/vision_v1p1beta1.rb +1 -1
- data/generated/google/apis/vision_v1p1beta1/classes.rb +18 -0
- data/generated/google/apis/vision_v1p2beta1.rb +1 -1
- data/generated/google/apis/vision_v1p2beta1/classes.rb +18 -0
- data/generated/google/apis/websecurityscanner_v1.rb +2 -2
- data/generated/google/apis/websecurityscanner_v1/classes.rb +7 -5
- data/generated/google/apis/websecurityscanner_v1/service.rb +1 -1
- data/generated/google/apis/websecurityscanner_v1alpha.rb +2 -2
- data/generated/google/apis/websecurityscanner_v1alpha/classes.rb +5 -4
- data/generated/google/apis/websecurityscanner_v1alpha/service.rb +1 -1
- data/generated/google/apis/websecurityscanner_v1beta.rb +2 -2
- data/generated/google/apis/websecurityscanner_v1beta/classes.rb +9 -7
- data/generated/google/apis/websecurityscanner_v1beta/service.rb +1 -1
- data/generated/google/apis/youtube_partner_v1.rb +1 -1
- data/generated/google/apis/youtube_v3.rb +5 -5
- data/generated/google/apis/youtube_v3/classes.rb +1298 -1244
- data/generated/google/apis/youtube_v3/representations.rb +91 -192
- data/generated/google/apis/youtube_v3/service.rb +1857 -2152
- data/lib/google/apis/core/api_command.rb +12 -7
- data/lib/google/apis/options.rb +5 -1
- data/lib/google/apis/version.rb +1 -1
- metadata +27 -19
- data/generated/google/apis/customsearch_v1/classes.rb +0 -1606
- data/generated/google/apis/customsearch_v1/representations.rb +0 -372
- data/generated/google/apis/customsearch_v1/service.rb +0 -608
- data/generated/google/apis/pagespeedonline_v1/classes.rb +0 -542
- data/generated/google/apis/pagespeedonline_v1/representations.rb +0 -258
- data/generated/google/apis/pagespeedonline_v1/service.rb +0 -116
- data/generated/google/apis/pagespeedonline_v2/classes.rb +0 -621
- data/generated/google/apis/pagespeedonline_v2/representations.rb +0 -273
- data/generated/google/apis/pagespeedonline_v2/service.rb +0 -116
- data/generated/google/apis/pagespeedonline_v4/classes.rb +0 -795
- data/generated/google/apis/pagespeedonline_v4/representations.rb +0 -335
- data/generated/google/apis/pagespeedonline_v4/service.rb +0 -125
|
@@ -25,7 +25,7 @@ module Google
|
|
|
25
25
|
# @see https://cloud.google.com/asset-inventory/docs/quickstart
|
|
26
26
|
module CloudassetV1
|
|
27
27
|
VERSION = 'V1'
|
|
28
|
-
REVISION = '
|
|
28
|
+
REVISION = '20200613'
|
|
29
29
|
|
|
30
30
|
# View and manage your data across Google Cloud Platform services
|
|
31
31
|
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
|
@@ -27,7 +27,10 @@ module Google
|
|
|
27
27
|
# hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
|
|
28
28
|
# resource-hierarchy),
|
|
29
29
|
# a resource outside the Google Cloud resource hierarchy (such as Google
|
|
30
|
-
# Kubernetes Engine clusters and objects), or a Cloud IAM policy.
|
|
30
|
+
# Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
|
|
31
|
+
# See [Supported asset
|
|
32
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
33
|
+
# for more information.
|
|
31
34
|
class Asset
|
|
32
35
|
include Google::Apis::Core::Hashable
|
|
33
36
|
|
|
@@ -54,12 +57,12 @@ module Google
|
|
|
54
57
|
# with the closest ancestor in the hierarchy and ends at root. If the asset
|
|
55
58
|
# is a project, folder, or organization, the ancestry path starts from the
|
|
56
59
|
# asset itself.
|
|
57
|
-
#
|
|
60
|
+
# Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
|
|
58
61
|
# Corresponds to the JSON property `ancestors`
|
|
59
62
|
# @return [Array<String>]
|
|
60
63
|
attr_accessor :ancestors
|
|
61
64
|
|
|
62
|
-
# The type of the asset.
|
|
65
|
+
# The type of the asset. Example: `compute.googleapis.com/Disk`
|
|
63
66
|
# See [Supported asset
|
|
64
67
|
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
65
68
|
# for more information.
|
|
@@ -74,10 +77,13 @@ module Google
|
|
|
74
77
|
# Google groups, and domains (such as G Suite). A `role` is a named list of
|
|
75
78
|
# permissions; each `role` can be an IAM predefined role or a user-created
|
|
76
79
|
# custom role.
|
|
77
|
-
#
|
|
78
|
-
# expression that allows access to a resource
|
|
79
|
-
# to `true`. A condition can add constraints
|
|
80
|
-
# request, the resource, or both.
|
|
80
|
+
# For some types of Google Cloud resources, a `binding` can also specify a
|
|
81
|
+
# `condition`, which is a logical expression that allows access to a resource
|
|
82
|
+
# only if the expression evaluates to `true`. A condition can add constraints
|
|
83
|
+
# based on attributes of the request, the resource, or both. To learn which
|
|
84
|
+
# resources support conditions in their IAM policies, see the
|
|
85
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
86
|
+
# policies).
|
|
81
87
|
# **JSON example:**
|
|
82
88
|
# `
|
|
83
89
|
# "bindings": [
|
|
@@ -92,7 +98,9 @@ module Google
|
|
|
92
98
|
# `,
|
|
93
99
|
# `
|
|
94
100
|
# "role": "roles/resourcemanager.organizationViewer",
|
|
95
|
-
# "members": [
|
|
101
|
+
# "members": [
|
|
102
|
+
# "user:eve@example.com"
|
|
103
|
+
# ],
|
|
96
104
|
# "condition": `
|
|
97
105
|
# "title": "expirable access",
|
|
98
106
|
# "description": "Does not grant access after Sep 2020",
|
|
@@ -127,9 +135,9 @@ module Google
|
|
|
127
135
|
# @return [Google::Apis::CloudassetV1::Policy]
|
|
128
136
|
attr_accessor :iam_policy
|
|
129
137
|
|
|
130
|
-
# The full name of the asset.
|
|
131
|
-
#
|
|
132
|
-
# instance1
|
|
138
|
+
# The full name of the asset. Example:
|
|
139
|
+
# `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
|
|
140
|
+
# instance1`
|
|
133
141
|
# See [Resource
|
|
134
142
|
# names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
|
135
143
|
# for more information.
|
|
@@ -165,6 +173,12 @@ module Google
|
|
|
165
173
|
# @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter]
|
|
166
174
|
attr_accessor :service_perimeter
|
|
167
175
|
|
|
176
|
+
# The last update timestamp of an asset. update_time is updated when
|
|
177
|
+
# create/update/delete operation is performed.
|
|
178
|
+
# Corresponds to the JSON property `updateTime`
|
|
179
|
+
# @return [String]
|
|
180
|
+
attr_accessor :update_time
|
|
181
|
+
|
|
168
182
|
def initialize(**args)
|
|
169
183
|
update!(**args)
|
|
170
184
|
end
|
|
@@ -180,6 +194,7 @@ module Google
|
|
|
180
194
|
@org_policy = args[:org_policy] if args.key?(:org_policy)
|
|
181
195
|
@resource = args[:resource] if args.key?(:resource)
|
|
182
196
|
@service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter)
|
|
197
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
|
183
198
|
end
|
|
184
199
|
end
|
|
185
200
|
|
|
@@ -195,7 +210,7 @@ module Google
|
|
|
195
210
|
# `
|
|
196
211
|
# "audit_configs": [
|
|
197
212
|
# `
|
|
198
|
-
# "service": "allServices"
|
|
213
|
+
# "service": "allServices",
|
|
199
214
|
# "audit_log_configs": [
|
|
200
215
|
# `
|
|
201
216
|
# "log_type": "DATA_READ",
|
|
@@ -204,18 +219,18 @@ module Google
|
|
|
204
219
|
# ]
|
|
205
220
|
# `,
|
|
206
221
|
# `
|
|
207
|
-
# "log_type": "DATA_WRITE"
|
|
222
|
+
# "log_type": "DATA_WRITE"
|
|
208
223
|
# `,
|
|
209
224
|
# `
|
|
210
|
-
# "log_type": "ADMIN_READ"
|
|
225
|
+
# "log_type": "ADMIN_READ"
|
|
211
226
|
# `
|
|
212
227
|
# ]
|
|
213
228
|
# `,
|
|
214
229
|
# `
|
|
215
|
-
# "service": "sampleservice.googleapis.com"
|
|
230
|
+
# "service": "sampleservice.googleapis.com",
|
|
216
231
|
# "audit_log_configs": [
|
|
217
232
|
# `
|
|
218
|
-
# "log_type": "DATA_READ"
|
|
233
|
+
# "log_type": "DATA_READ"
|
|
219
234
|
# `,
|
|
220
235
|
# `
|
|
221
236
|
# "log_type": "DATA_WRITE",
|
|
@@ -267,7 +282,7 @@ module Google
|
|
|
267
282
|
# ]
|
|
268
283
|
# `,
|
|
269
284
|
# `
|
|
270
|
-
# "log_type": "DATA_WRITE"
|
|
285
|
+
# "log_type": "DATA_WRITE"
|
|
271
286
|
# `
|
|
272
287
|
# ]
|
|
273
288
|
# `
|
|
@@ -318,7 +333,7 @@ module Google
|
|
|
318
333
|
end
|
|
319
334
|
end
|
|
320
335
|
|
|
321
|
-
# A BigQuery destination.
|
|
336
|
+
# A BigQuery destination for exporting assets to.
|
|
322
337
|
class BigQueryDestination
|
|
323
338
|
include Google::Apis::Core::Hashable
|
|
324
339
|
|
|
@@ -494,7 +509,7 @@ module Google
|
|
|
494
509
|
class ExportAssetsRequest
|
|
495
510
|
include Google::Apis::Core::Hashable
|
|
496
511
|
|
|
497
|
-
# A list of asset types of which to take a snapshot for.
|
|
512
|
+
# A list of asset types of which to take a snapshot for. Example:
|
|
498
513
|
# "compute.googleapis.com/Disk". If specified, only matching assets will be
|
|
499
514
|
# returned. See [Introduction to Cloud Asset
|
|
500
515
|
# Inventory](https://cloud.google.com/asset-inventory/docs/overview)
|
|
@@ -609,8 +624,8 @@ module Google
|
|
|
609
624
|
|
|
610
625
|
# A list of the full names of the assets to receive updates. You must specify
|
|
611
626
|
# either or both of asset_names and asset_types. Only asset updates matching
|
|
612
|
-
# specified asset_names
|
|
613
|
-
#
|
|
627
|
+
# specified asset_names or asset_types are exported to the feed.
|
|
628
|
+
# Example:
|
|
614
629
|
# `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
|
|
615
630
|
# instance1`.
|
|
616
631
|
# See [Resource
|
|
@@ -622,8 +637,8 @@ module Google
|
|
|
622
637
|
|
|
623
638
|
# A list of types of the assets to receive updates. You must specify either
|
|
624
639
|
# or both of asset_names and asset_types. Only asset updates matching
|
|
625
|
-
# specified asset_names
|
|
626
|
-
#
|
|
640
|
+
# specified asset_names or asset_types are exported to the feed.
|
|
641
|
+
# Example: `"compute.googleapis.com/Disk"`
|
|
627
642
|
# See [this
|
|
628
643
|
# topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
629
644
|
# for a list of all supported asset types.
|
|
@@ -690,7 +705,7 @@ module Google
|
|
|
690
705
|
include Google::Apis::Core::Hashable
|
|
691
706
|
|
|
692
707
|
# The uri of the Cloud Storage object. It's the same uri that is used by
|
|
693
|
-
# gsutil.
|
|
708
|
+
# gsutil. Example: "gs://bucket_name/object_name". See [Viewing and
|
|
694
709
|
# Editing Object
|
|
695
710
|
# Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
|
|
696
711
|
# for more information.
|
|
@@ -698,10 +713,10 @@ module Google
|
|
|
698
713
|
# @return [String]
|
|
699
714
|
attr_accessor :uri
|
|
700
715
|
|
|
701
|
-
# The uri prefix of all generated Cloud Storage objects.
|
|
716
|
+
# The uri prefix of all generated Cloud Storage objects. Example:
|
|
702
717
|
# "gs://bucket_name/object_name_prefix". Each object uri is in format:
|
|
703
718
|
# "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and only
|
|
704
|
-
# contains assets for that type. <shard number> starts from 0.
|
|
719
|
+
# contains assets for that type. <shard number> starts from 0. Example:
|
|
705
720
|
# "gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0" is
|
|
706
721
|
# the first shard of output objects containing all
|
|
707
722
|
# compute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will be
|
|
@@ -822,7 +837,7 @@ module Google
|
|
|
822
837
|
attr_accessor :denied_values
|
|
823
838
|
|
|
824
839
|
# Determines the inheritance behavior for this `Policy`.
|
|
825
|
-
# By default, a `ListPolicy` set at a resource
|
|
840
|
+
# By default, a `ListPolicy` set at a resource supersedes any `Policy` set
|
|
826
841
|
# anywhere up the resource hierarchy. However, if `inherit_from_parent` is
|
|
827
842
|
# set to `true`, then the values from the effective `Policy` of the parent
|
|
828
843
|
# resource are inherited, meaning the values set in this `Policy` are
|
|
@@ -946,6 +961,9 @@ module Google
|
|
|
946
961
|
|
|
947
962
|
# The name of the `Constraint` the `Policy` is configuring, for example,
|
|
948
963
|
# `constraints/serviceuser.services`.
|
|
964
|
+
# A [list of available
|
|
965
|
+
# constraints](/resource-manager/docs/organization-policy/org-policy-constraints)
|
|
966
|
+
# is available.
|
|
949
967
|
# Immutable after creation.
|
|
950
968
|
# Corresponds to the JSON property `constraint`
|
|
951
969
|
# @return [String]
|
|
@@ -1657,7 +1675,7 @@ module Google
|
|
|
1657
1675
|
class OutputConfig
|
|
1658
1676
|
include Google::Apis::Core::Hashable
|
|
1659
1677
|
|
|
1660
|
-
# A BigQuery destination.
|
|
1678
|
+
# A BigQuery destination for exporting assets to.
|
|
1661
1679
|
# Corresponds to the JSON property `bigqueryDestination`
|
|
1662
1680
|
# @return [Google::Apis::CloudassetV1::BigQueryDestination]
|
|
1663
1681
|
attr_accessor :bigquery_destination
|
|
@@ -1685,10 +1703,13 @@ module Google
|
|
|
1685
1703
|
# Google groups, and domains (such as G Suite). A `role` is a named list of
|
|
1686
1704
|
# permissions; each `role` can be an IAM predefined role or a user-created
|
|
1687
1705
|
# custom role.
|
|
1688
|
-
#
|
|
1689
|
-
# expression that allows access to a resource
|
|
1690
|
-
# to `true`. A condition can add constraints
|
|
1691
|
-
# request, the resource, or both.
|
|
1706
|
+
# For some types of Google Cloud resources, a `binding` can also specify a
|
|
1707
|
+
# `condition`, which is a logical expression that allows access to a resource
|
|
1708
|
+
# only if the expression evaluates to `true`. A condition can add constraints
|
|
1709
|
+
# based on attributes of the request, the resource, or both. To learn which
|
|
1710
|
+
# resources support conditions in their IAM policies, see the
|
|
1711
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
1712
|
+
# policies).
|
|
1692
1713
|
# **JSON example:**
|
|
1693
1714
|
# `
|
|
1694
1715
|
# "bindings": [
|
|
@@ -1703,7 +1724,9 @@ module Google
|
|
|
1703
1724
|
# `,
|
|
1704
1725
|
# `
|
|
1705
1726
|
# "role": "roles/resourcemanager.organizationViewer",
|
|
1706
|
-
# "members": [
|
|
1727
|
+
# "members": [
|
|
1728
|
+
# "user:eve@example.com"
|
|
1729
|
+
# ],
|
|
1707
1730
|
# "condition": `
|
|
1708
1731
|
# "title": "expirable access",
|
|
1709
1732
|
# "description": "Does not grant access after Sep 2020",
|
|
@@ -1781,6 +1804,9 @@ module Google
|
|
|
1781
1804
|
# the conditions in the version `3` policy are lost.
|
|
1782
1805
|
# If a policy does not include any conditions, operations on that policy may
|
|
1783
1806
|
# specify any valid version or leave the field unset.
|
|
1807
|
+
# To learn which resources support conditions in their IAM policies, see the
|
|
1808
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
1809
|
+
# policies).
|
|
1784
1810
|
# Corresponds to the JSON property `version`
|
|
1785
1811
|
# @return [Fixnum]
|
|
1786
1812
|
attr_accessor :version
|
|
@@ -1803,7 +1829,7 @@ module Google
|
|
|
1803
1829
|
include Google::Apis::Core::Hashable
|
|
1804
1830
|
|
|
1805
1831
|
# The name of the Pub/Sub topic to publish to.
|
|
1806
|
-
#
|
|
1832
|
+
# Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
|
|
1807
1833
|
# Corresponds to the JSON property `topic`
|
|
1808
1834
|
# @return [String]
|
|
1809
1835
|
attr_accessor :topic
|
|
@@ -1829,22 +1855,28 @@ module Google
|
|
|
1829
1855
|
attr_accessor :data
|
|
1830
1856
|
|
|
1831
1857
|
# The URL of the discovery document containing the resource's JSON schema.
|
|
1832
|
-
#
|
|
1833
|
-
#
|
|
1858
|
+
# Example:
|
|
1859
|
+
# `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
|
|
1834
1860
|
# This value is unspecified for resources that do not have an API based on a
|
|
1835
1861
|
# discovery document, such as Cloud Bigtable.
|
|
1836
1862
|
# Corresponds to the JSON property `discoveryDocumentUri`
|
|
1837
1863
|
# @return [String]
|
|
1838
1864
|
attr_accessor :discovery_document_uri
|
|
1839
1865
|
|
|
1840
|
-
# The JSON schema name listed in the discovery document.
|
|
1841
|
-
#
|
|
1866
|
+
# The JSON schema name listed in the discovery document. Example:
|
|
1867
|
+
# `Project`
|
|
1842
1868
|
# This value is unspecified for resources that do not have an API based on a
|
|
1843
1869
|
# discovery document, such as Cloud Bigtable.
|
|
1844
1870
|
# Corresponds to the JSON property `discoveryName`
|
|
1845
1871
|
# @return [String]
|
|
1846
1872
|
attr_accessor :discovery_name
|
|
1847
1873
|
|
|
1874
|
+
# The location of the resource in Google Cloud, such as its zone and region.
|
|
1875
|
+
# For more information, see https://cloud.google.com/about/locations/.
|
|
1876
|
+
# Corresponds to the JSON property `location`
|
|
1877
|
+
# @return [String]
|
|
1878
|
+
attr_accessor :location
|
|
1879
|
+
|
|
1848
1880
|
# The full name of the immediate parent of this resource. See
|
|
1849
1881
|
# [Resource
|
|
1850
1882
|
# Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
|
@@ -1852,22 +1884,22 @@ module Google
|
|
|
1852
1884
|
# For Google Cloud assets, this value is the parent resource defined in the
|
|
1853
1885
|
# [Cloud IAM policy
|
|
1854
1886
|
# hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
|
|
1855
|
-
#
|
|
1856
|
-
#
|
|
1887
|
+
# Example:
|
|
1888
|
+
# `//cloudresourcemanager.googleapis.com/projects/my_project_123`
|
|
1857
1889
|
# For third-party assets, this field may be set differently.
|
|
1858
1890
|
# Corresponds to the JSON property `parent`
|
|
1859
1891
|
# @return [String]
|
|
1860
1892
|
attr_accessor :parent
|
|
1861
1893
|
|
|
1862
1894
|
# The REST URL for accessing the resource. An HTTP `GET` request using this
|
|
1863
|
-
# URL returns the resource itself.
|
|
1864
|
-
#
|
|
1895
|
+
# URL returns the resource itself. Example:
|
|
1896
|
+
# `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
|
|
1865
1897
|
# This value is unspecified for resources without a REST API.
|
|
1866
1898
|
# Corresponds to the JSON property `resourceUrl`
|
|
1867
1899
|
# @return [String]
|
|
1868
1900
|
attr_accessor :resource_url
|
|
1869
1901
|
|
|
1870
|
-
# The API version.
|
|
1902
|
+
# The API version. Example: `v1`
|
|
1871
1903
|
# Corresponds to the JSON property `version`
|
|
1872
1904
|
# @return [String]
|
|
1873
1905
|
attr_accessor :version
|
|
@@ -1881,6 +1913,7 @@ module Google
|
|
|
1881
1913
|
@data = args[:data] if args.key?(:data)
|
|
1882
1914
|
@discovery_document_uri = args[:discovery_document_uri] if args.key?(:discovery_document_uri)
|
|
1883
1915
|
@discovery_name = args[:discovery_name] if args.key?(:discovery_name)
|
|
1916
|
+
@location = args[:location] if args.key?(:location)
|
|
1884
1917
|
@parent = args[:parent] if args.key?(:parent)
|
|
1885
1918
|
@resource_url = args[:resource_url] if args.key?(:resource_url)
|
|
1886
1919
|
@version = args[:version] if args.key?(:version)
|
|
@@ -1936,7 +1969,10 @@ module Google
|
|
|
1936
1969
|
# hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
|
|
1937
1970
|
# resource-hierarchy),
|
|
1938
1971
|
# a resource outside the Google Cloud resource hierarchy (such as Google
|
|
1939
|
-
# Kubernetes Engine clusters and objects), or a Cloud IAM policy.
|
|
1972
|
+
# Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
|
|
1973
|
+
# See [Supported asset
|
|
1974
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
1975
|
+
# for more information.
|
|
1940
1976
|
# Corresponds to the JSON property `asset`
|
|
1941
1977
|
# @return [Google::Apis::CloudassetV1::Asset]
|
|
1942
1978
|
attr_accessor :asset
|
|
@@ -1947,7 +1983,7 @@ module Google
|
|
|
1947
1983
|
attr_accessor :deleted
|
|
1948
1984
|
alias_method :deleted?, :deleted
|
|
1949
1985
|
|
|
1950
|
-
# A time window specified by its
|
|
1986
|
+
# A time window specified by its `start_time` and `end_time`.
|
|
1951
1987
|
# Corresponds to the JSON property `window`
|
|
1952
1988
|
# @return [Google::Apis::CloudassetV1::TimeWindow]
|
|
1953
1989
|
attr_accessor :window
|
|
@@ -1964,7 +2000,7 @@ module Google
|
|
|
1964
2000
|
end
|
|
1965
2001
|
end
|
|
1966
2002
|
|
|
1967
|
-
# A time window specified by its
|
|
2003
|
+
# A time window specified by its `start_time` and `end_time`.
|
|
1968
2004
|
class TimeWindow
|
|
1969
2005
|
include Google::Apis::Core::Hashable
|
|
1970
2006
|
|
|
@@ -262,6 +262,7 @@ module Google
|
|
|
262
262
|
|
|
263
263
|
property :service_perimeter, as: 'servicePerimeter', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter::Representation
|
|
264
264
|
|
|
265
|
+
property :update_time, as: 'updateTime'
|
|
265
266
|
end
|
|
266
267
|
end
|
|
267
268
|
|
|
@@ -577,6 +578,7 @@ module Google
|
|
|
577
578
|
hash :data, as: 'data'
|
|
578
579
|
property :discovery_document_uri, as: 'discoveryDocumentUri'
|
|
579
580
|
property :discovery_name, as: 'discoveryName'
|
|
581
|
+
property :location, as: 'location'
|
|
580
582
|
property :parent, as: 'parent'
|
|
581
583
|
property :resource_url, as: 'resourceUrl'
|
|
582
584
|
property :version, as: 'version'
|
|
@@ -254,10 +254,10 @@ module Google
|
|
|
254
254
|
end
|
|
255
255
|
|
|
256
256
|
# Batch gets the update history of assets that overlap a time window.
|
|
257
|
-
# For RESOURCE content, this API outputs history with asset in both
|
|
258
|
-
# non-delete or deleted status.
|
|
259
257
|
# For IAM_POLICY content, this API outputs history when the asset and its
|
|
260
258
|
# attached IAM POLICY both exist. This can create gaps in the output history.
|
|
259
|
+
# Otherwise, this API outputs history with asset in both non-delete or
|
|
260
|
+
# deleted status.
|
|
261
261
|
# If a specified asset does not exist, this API returns an INVALID_ARGUMENT
|
|
262
262
|
# error.
|
|
263
263
|
# @param [String] parent
|
|
@@ -265,14 +265,11 @@ module Google
|
|
|
265
265
|
# organization number (such as "organizations/123"), a project ID (such as
|
|
266
266
|
# "projects/my-project-id")", or a project number (such as "projects/12345").
|
|
267
267
|
# @param [Array<String>, String] asset_names
|
|
268
|
-
# A list of the full names of the assets.
|
|
268
|
+
# A list of the full names of the assets.
|
|
269
|
+
# See: https://cloud.google.com/asset-inventory/docs/resource-name-format
|
|
270
|
+
# Example:
|
|
269
271
|
# `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
|
|
270
272
|
# instance1`.
|
|
271
|
-
# See [Resource
|
|
272
|
-
# Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
|
273
|
-
# and [Resource Name
|
|
274
|
-
# Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
|
|
275
|
-
# for more info.
|
|
276
273
|
# The request becomes a no-op if the asset name list is empty, and the max
|
|
277
274
|
# size of the asset name list is 100 in one request.
|
|
278
275
|
# @param [String] content_type
|
|
@@ -314,9 +311,15 @@ module Google
|
|
|
314
311
|
end
|
|
315
312
|
|
|
316
313
|
# Exports assets with time and resource types to a given Cloud Storage
|
|
317
|
-
# location.
|
|
318
|
-
#
|
|
319
|
-
#
|
|
314
|
+
# location/BigQuery table. For Cloud Storage location destinations, the
|
|
315
|
+
# output format is newline-delimited JSON. Each line represents a
|
|
316
|
+
# google.cloud.asset.v1.Asset in the JSON format; for BigQuery table
|
|
317
|
+
# destinations, the output table stores the fields in asset proto as columns.
|
|
318
|
+
# This API implements the google.longrunning.Operation API
|
|
319
|
+
# , which allows you to keep track of the export. We recommend intervals of
|
|
320
|
+
# at least 2 seconds with exponential retry to poll the export operation
|
|
321
|
+
# result. For regular-size resource parent, the export operation usually
|
|
322
|
+
# finishes within 5 minutes.
|
|
320
323
|
# @param [String] parent
|
|
321
324
|
# Required. The relative name of the root asset. This can only be an
|
|
322
325
|
# organization number (such as "organizations/123"), a project ID (such as
|
|
@@ -25,7 +25,7 @@ module Google
|
|
|
25
25
|
# @see https://cloud.google.com/asset-inventory/docs/quickstart
|
|
26
26
|
module CloudassetV1beta1
|
|
27
27
|
VERSION = 'V1beta1'
|
|
28
|
-
REVISION = '
|
|
28
|
+
REVISION = '20200613'
|
|
29
29
|
|
|
30
30
|
# View and manage your data across Google Cloud Platform services
|
|
31
31
|
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
|
@@ -22,12 +22,38 @@ module Google
|
|
|
22
22
|
module Apis
|
|
23
23
|
module CloudassetV1beta1
|
|
24
24
|
|
|
25
|
-
#
|
|
26
|
-
#
|
|
25
|
+
# An asset in Google Cloud. An asset can be any resource in the Google Cloud
|
|
26
|
+
# [resource
|
|
27
|
+
# hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
|
|
28
|
+
# resource-hierarchy),
|
|
29
|
+
# a resource outside the Google Cloud resource hierarchy (such as Google
|
|
30
|
+
# Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
|
|
31
|
+
# See [Supported asset
|
|
32
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
33
|
+
# for more information.
|
|
27
34
|
class Asset
|
|
28
35
|
include Google::Apis::Core::Hashable
|
|
29
36
|
|
|
30
|
-
#
|
|
37
|
+
# An `AccessLevel` is a label that can be applied to requests to Google Cloud
|
|
38
|
+
# services, along with a list of requirements necessary for the label to be
|
|
39
|
+
# applied.
|
|
40
|
+
# Corresponds to the JSON property `accessLevel`
|
|
41
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessLevel]
|
|
42
|
+
attr_accessor :access_level
|
|
43
|
+
|
|
44
|
+
# `AccessPolicy` is a container for `AccessLevels` (which define the necessary
|
|
45
|
+
# attributes to use Google Cloud services) and `ServicePerimeters` (which
|
|
46
|
+
# define regions of services able to freely pass data within a perimeter). An
|
|
47
|
+
# access policy is globally visible within an organization, and the
|
|
48
|
+
# restrictions it specifies apply to all projects within an organization.
|
|
49
|
+
# Corresponds to the JSON property `accessPolicy`
|
|
50
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy]
|
|
51
|
+
attr_accessor :access_policy
|
|
52
|
+
|
|
53
|
+
# The type of the asset. Example: `compute.googleapis.com/Disk`
|
|
54
|
+
# See [Supported asset
|
|
55
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
56
|
+
# for more information.
|
|
31
57
|
# Corresponds to the JSON property `assetType`
|
|
32
58
|
# @return [String]
|
|
33
59
|
attr_accessor :asset_type
|
|
@@ -39,10 +65,13 @@ module Google
|
|
|
39
65
|
# Google groups, and domains (such as G Suite). A `role` is a named list of
|
|
40
66
|
# permissions; each `role` can be an IAM predefined role or a user-created
|
|
41
67
|
# custom role.
|
|
42
|
-
#
|
|
43
|
-
# expression that allows access to a resource
|
|
44
|
-
# to `true`. A condition can add constraints
|
|
45
|
-
# request, the resource, or both.
|
|
68
|
+
# For some types of Google Cloud resources, a `binding` can also specify a
|
|
69
|
+
# `condition`, which is a logical expression that allows access to a resource
|
|
70
|
+
# only if the expression evaluates to `true`. A condition can add constraints
|
|
71
|
+
# based on attributes of the request, the resource, or both. To learn which
|
|
72
|
+
# resources support conditions in their IAM policies, see the
|
|
73
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
74
|
+
# policies).
|
|
46
75
|
# **JSON example:**
|
|
47
76
|
# `
|
|
48
77
|
# "bindings": [
|
|
@@ -57,7 +86,9 @@ module Google
|
|
|
57
86
|
# `,
|
|
58
87
|
# `
|
|
59
88
|
# "role": "roles/resourcemanager.organizationViewer",
|
|
60
|
-
# "members": [
|
|
89
|
+
# "members": [
|
|
90
|
+
# "user:eve@example.com"
|
|
91
|
+
# ],
|
|
61
92
|
# "condition": `
|
|
62
93
|
# "title": "expirable access",
|
|
63
94
|
# "description": "Does not grant access after Sep 2020",
|
|
@@ -92,31 +123,58 @@ module Google
|
|
|
92
123
|
# @return [Google::Apis::CloudassetV1beta1::Policy]
|
|
93
124
|
attr_accessor :iam_policy
|
|
94
125
|
|
|
95
|
-
# The full name of the asset.
|
|
126
|
+
# The full name of the asset. Example:
|
|
96
127
|
# `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
|
|
97
|
-
# instance1
|
|
128
|
+
# instance1`
|
|
98
129
|
# See [Resource
|
|
99
|
-
#
|
|
130
|
+
# names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
|
100
131
|
# for more information.
|
|
101
132
|
# Corresponds to the JSON property `name`
|
|
102
133
|
# @return [String]
|
|
103
134
|
attr_accessor :name
|
|
104
135
|
|
|
105
|
-
#
|
|
136
|
+
# A representation of an [organization
|
|
137
|
+
# policy](https://cloud.google.com/resource-manager/docs/organization-policy/
|
|
138
|
+
# overview#organization_policy).
|
|
139
|
+
# There can be more than one organization policy with different constraints
|
|
140
|
+
# set on a given resource.
|
|
141
|
+
# Corresponds to the JSON property `orgPolicy`
|
|
142
|
+
# @return [Array<Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1Policy>]
|
|
143
|
+
attr_accessor :org_policy
|
|
144
|
+
|
|
145
|
+
# A representation of a Google Cloud resource.
|
|
106
146
|
# Corresponds to the JSON property `resource`
|
|
107
147
|
# @return [Google::Apis::CloudassetV1beta1::Resource]
|
|
108
148
|
attr_accessor :resource
|
|
109
149
|
|
|
150
|
+
# `ServicePerimeter` describes a set of Google Cloud resources which can freely
|
|
151
|
+
# import and export data amongst themselves, but not export outside of the
|
|
152
|
+
# `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
|
|
153
|
+
# has a target outside of the `ServicePerimeter`, the request will be blocked.
|
|
154
|
+
# Otherwise the request is allowed. There are two types of Service Perimeter -
|
|
155
|
+
# Regular and Bridge. Regular Service Perimeters cannot overlap, a single
|
|
156
|
+
# Google Cloud project can only belong to a single regular Service Perimeter.
|
|
157
|
+
# Service Perimeter Bridges can contain only Google Cloud projects as members,
|
|
158
|
+
# a single Google Cloud project may belong to multiple Service Perimeter
|
|
159
|
+
# Bridges.
|
|
160
|
+
# Corresponds to the JSON property `servicePerimeter`
|
|
161
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter]
|
|
162
|
+
attr_accessor :service_perimeter
|
|
163
|
+
|
|
110
164
|
def initialize(**args)
|
|
111
165
|
update!(**args)
|
|
112
166
|
end
|
|
113
167
|
|
|
114
168
|
# Update properties of this object
|
|
115
169
|
def update!(**args)
|
|
170
|
+
@access_level = args[:access_level] if args.key?(:access_level)
|
|
171
|
+
@access_policy = args[:access_policy] if args.key?(:access_policy)
|
|
116
172
|
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
|
117
173
|
@iam_policy = args[:iam_policy] if args.key?(:iam_policy)
|
|
118
174
|
@name = args[:name] if args.key?(:name)
|
|
175
|
+
@org_policy = args[:org_policy] if args.key?(:org_policy)
|
|
119
176
|
@resource = args[:resource] if args.key?(:resource)
|
|
177
|
+
@service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter)
|
|
120
178
|
end
|
|
121
179
|
end
|
|
122
180
|
|
|
@@ -132,7 +190,7 @@ module Google
|
|
|
132
190
|
# `
|
|
133
191
|
# "audit_configs": [
|
|
134
192
|
# `
|
|
135
|
-
# "service": "allServices"
|
|
193
|
+
# "service": "allServices",
|
|
136
194
|
# "audit_log_configs": [
|
|
137
195
|
# `
|
|
138
196
|
# "log_type": "DATA_READ",
|
|
@@ -141,18 +199,18 @@ module Google
|
|
|
141
199
|
# ]
|
|
142
200
|
# `,
|
|
143
201
|
# `
|
|
144
|
-
# "log_type": "DATA_WRITE"
|
|
202
|
+
# "log_type": "DATA_WRITE"
|
|
145
203
|
# `,
|
|
146
204
|
# `
|
|
147
|
-
# "log_type": "ADMIN_READ"
|
|
205
|
+
# "log_type": "ADMIN_READ"
|
|
148
206
|
# `
|
|
149
207
|
# ]
|
|
150
208
|
# `,
|
|
151
209
|
# `
|
|
152
|
-
# "service": "sampleservice.googleapis.com"
|
|
210
|
+
# "service": "sampleservice.googleapis.com",
|
|
153
211
|
# "audit_log_configs": [
|
|
154
212
|
# `
|
|
155
|
-
# "log_type": "DATA_READ"
|
|
213
|
+
# "log_type": "DATA_READ"
|
|
156
214
|
# `,
|
|
157
215
|
# `
|
|
158
216
|
# "log_type": "DATA_WRITE",
|
|
@@ -204,7 +262,7 @@ module Google
|
|
|
204
262
|
# ]
|
|
205
263
|
# `,
|
|
206
264
|
# `
|
|
207
|
-
# "log_type": "DATA_WRITE"
|
|
265
|
+
# "log_type": "DATA_WRITE"
|
|
208
266
|
# `
|
|
209
267
|
# ]
|
|
210
268
|
# `
|
|
@@ -484,6 +542,857 @@ module Google
|
|
|
484
542
|
end
|
|
485
543
|
end
|
|
486
544
|
|
|
545
|
+
# Used in `policy_type` to specify how `boolean_policy` will behave at this
|
|
546
|
+
# resource.
|
|
547
|
+
class GoogleCloudOrgpolicyV1BooleanPolicy
|
|
548
|
+
include Google::Apis::Core::Hashable
|
|
549
|
+
|
|
550
|
+
# If `true`, then the `Policy` is enforced. If `false`, then any
|
|
551
|
+
# configuration is acceptable.
|
|
552
|
+
# Suppose you have a `Constraint`
|
|
553
|
+
# `constraints/compute.disableSerialPortAccess` with `constraint_default`
|
|
554
|
+
# set to `ALLOW`. A `Policy` for that `Constraint` exhibits the following
|
|
555
|
+
# behavior:
|
|
556
|
+
# - If the `Policy` at this resource has enforced set to `false`, serial
|
|
557
|
+
# port connection attempts will be allowed.
|
|
558
|
+
# - If the `Policy` at this resource has enforced set to `true`, serial
|
|
559
|
+
# port connection attempts will be refused.
|
|
560
|
+
# - If the `Policy` at this resource is `RestoreDefault`, serial port
|
|
561
|
+
# connection attempts will be allowed.
|
|
562
|
+
# - If no `Policy` is set at this resource or anywhere higher in the
|
|
563
|
+
# resource hierarchy, serial port connection attempts will be allowed.
|
|
564
|
+
# - If no `Policy` is set at this resource, but one exists higher in the
|
|
565
|
+
# resource hierarchy, the behavior is as if the`Policy` were set at
|
|
566
|
+
# this resource.
|
|
567
|
+
# The following examples demonstrate the different possible layerings:
|
|
568
|
+
# Example 1 (nearest `Constraint` wins):
|
|
569
|
+
# `organizations/foo` has a `Policy` with:
|
|
570
|
+
# `enforced: false`
|
|
571
|
+
# `projects/bar` has no `Policy` set.
|
|
572
|
+
# The constraint at `projects/bar` and `organizations/foo` will not be
|
|
573
|
+
# enforced.
|
|
574
|
+
# Example 2 (enforcement gets replaced):
|
|
575
|
+
# `organizations/foo` has a `Policy` with:
|
|
576
|
+
# `enforced: false`
|
|
577
|
+
# `projects/bar` has a `Policy` with:
|
|
578
|
+
# `enforced: true`
|
|
579
|
+
# The constraint at `organizations/foo` is not enforced.
|
|
580
|
+
# The constraint at `projects/bar` is enforced.
|
|
581
|
+
# Example 3 (RestoreDefault):
|
|
582
|
+
# `organizations/foo` has a `Policy` with:
|
|
583
|
+
# `enforced: true`
|
|
584
|
+
# `projects/bar` has a `Policy` with:
|
|
585
|
+
# `RestoreDefault: ```
|
|
586
|
+
# The constraint at `organizations/foo` is enforced.
|
|
587
|
+
# The constraint at `projects/bar` is not enforced, because
|
|
588
|
+
# `constraint_default` for the `Constraint` is `ALLOW`.
|
|
589
|
+
# Corresponds to the JSON property `enforced`
|
|
590
|
+
# @return [Boolean]
|
|
591
|
+
attr_accessor :enforced
|
|
592
|
+
alias_method :enforced?, :enforced
|
|
593
|
+
|
|
594
|
+
def initialize(**args)
|
|
595
|
+
update!(**args)
|
|
596
|
+
end
|
|
597
|
+
|
|
598
|
+
# Update properties of this object
|
|
599
|
+
def update!(**args)
|
|
600
|
+
@enforced = args[:enforced] if args.key?(:enforced)
|
|
601
|
+
end
|
|
602
|
+
end
|
|
603
|
+
|
|
604
|
+
# Used in `policy_type` to specify how `list_policy` behaves at this
|
|
605
|
+
# resource.
|
|
606
|
+
# `ListPolicy` can define specific values and subtrees of Cloud Resource
|
|
607
|
+
# Manager resource hierarchy (`Organizations`, `Folders`, `Projects`) that
|
|
608
|
+
# are allowed or denied by setting the `allowed_values` and `denied_values`
|
|
609
|
+
# fields. This is achieved by using the `under:` and optional `is:` prefixes.
|
|
610
|
+
# The `under:` prefix is used to denote resource subtree values.
|
|
611
|
+
# The `is:` prefix is used to denote specific values, and is required only
|
|
612
|
+
# if the value contains a ":". Values prefixed with "is:" are treated the
|
|
613
|
+
# same as values with no prefix.
|
|
614
|
+
# Ancestry subtrees must be in one of the following formats:
|
|
615
|
+
# - "projects/<project-id>", e.g. "projects/tokyo-rain-123"
|
|
616
|
+
# - "folders/<folder-id>", e.g. "folders/1234"
|
|
617
|
+
# - "organizations/<organization-id>", e.g. "organizations/1234"
|
|
618
|
+
# The `supports_under` field of the associated `Constraint` defines whether
|
|
619
|
+
# ancestry prefixes can be used. You can set `allowed_values` and
|
|
620
|
+
# `denied_values` in the same `Policy` if `all_values` is
|
|
621
|
+
# `ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
|
|
622
|
+
# values. If `all_values` is set to either `ALLOW` or `DENY`,
|
|
623
|
+
# `allowed_values` and `denied_values` must be unset.
|
|
624
|
+
class GoogleCloudOrgpolicyV1ListPolicy
|
|
625
|
+
include Google::Apis::Core::Hashable
|
|
626
|
+
|
|
627
|
+
# The policy all_values state.
|
|
628
|
+
# Corresponds to the JSON property `allValues`
|
|
629
|
+
# @return [String]
|
|
630
|
+
attr_accessor :all_values
|
|
631
|
+
|
|
632
|
+
# List of values allowed at this resource. Can only be set if `all_values`
|
|
633
|
+
# is set to `ALL_VALUES_UNSPECIFIED`.
|
|
634
|
+
# Corresponds to the JSON property `allowedValues`
|
|
635
|
+
# @return [Array<String>]
|
|
636
|
+
attr_accessor :allowed_values
|
|
637
|
+
|
|
638
|
+
# List of values denied at this resource. Can only be set if `all_values`
|
|
639
|
+
# is set to `ALL_VALUES_UNSPECIFIED`.
|
|
640
|
+
# Corresponds to the JSON property `deniedValues`
|
|
641
|
+
# @return [Array<String>]
|
|
642
|
+
attr_accessor :denied_values
|
|
643
|
+
|
|
644
|
+
# Determines the inheritance behavior for this `Policy`.
|
|
645
|
+
# By default, a `ListPolicy` set at a resource supersedes any `Policy` set
|
|
646
|
+
# anywhere up the resource hierarchy. However, if `inherit_from_parent` is
|
|
647
|
+
# set to `true`, then the values from the effective `Policy` of the parent
|
|
648
|
+
# resource are inherited, meaning the values set in this `Policy` are
|
|
649
|
+
# added to the values inherited up the hierarchy.
|
|
650
|
+
# Setting `Policy` hierarchies that inherit both allowed values and denied
|
|
651
|
+
# values isn't recommended in most circumstances to keep the configuration
|
|
652
|
+
# simple and understandable. However, it is possible to set a `Policy` with
|
|
653
|
+
# `allowed_values` set that inherits a `Policy` with `denied_values` set.
|
|
654
|
+
# In this case, the values that are allowed must be in `allowed_values` and
|
|
655
|
+
# not present in `denied_values`.
|
|
656
|
+
# For example, suppose you have a `Constraint`
|
|
657
|
+
# `constraints/serviceuser.services`, which has a `constraint_type` of
|
|
658
|
+
# `list_constraint`, and with `constraint_default` set to `ALLOW`.
|
|
659
|
+
# Suppose that at the Organization level, a `Policy` is applied that
|
|
660
|
+
# restricts the allowed API activations to ``E1`, `E2``. Then, if a
|
|
661
|
+
# `Policy` is applied to a project below the Organization that has
|
|
662
|
+
# `inherit_from_parent` set to `false` and field all_values set to DENY,
|
|
663
|
+
# then an attempt to activate any API will be denied.
|
|
664
|
+
# The following examples demonstrate different possible layerings for
|
|
665
|
+
# `projects/bar` parented by `organizations/foo`:
|
|
666
|
+
# Example 1 (no inherited values):
|
|
667
|
+
# `organizations/foo` has a `Policy` with values:
|
|
668
|
+
# `allowed_values: "E1" allowed_values:"E2"`
|
|
669
|
+
# `projects/bar` has `inherit_from_parent` `false` and values:
|
|
670
|
+
# `allowed_values: "E3" allowed_values: "E4"`
|
|
671
|
+
# The accepted values at `organizations/foo` are `E1`, `E2`.
|
|
672
|
+
# The accepted values at `projects/bar` are `E3`, and `E4`.
|
|
673
|
+
# Example 2 (inherited values):
|
|
674
|
+
# `organizations/foo` has a `Policy` with values:
|
|
675
|
+
# `allowed_values: "E1" allowed_values:"E2"`
|
|
676
|
+
# `projects/bar` has a `Policy` with values:
|
|
677
|
+
# `value: "E3" value: "E4" inherit_from_parent: true`
|
|
678
|
+
# The accepted values at `organizations/foo` are `E1`, `E2`.
|
|
679
|
+
# The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.
|
|
680
|
+
# Example 3 (inheriting both allowed and denied values):
|
|
681
|
+
# `organizations/foo` has a `Policy` with values:
|
|
682
|
+
# `allowed_values: "E1" allowed_values: "E2"`
|
|
683
|
+
# `projects/bar` has a `Policy` with:
|
|
684
|
+
# `denied_values: "E1"`
|
|
685
|
+
# The accepted values at `organizations/foo` are `E1`, `E2`.
|
|
686
|
+
# The value accepted at `projects/bar` is `E2`.
|
|
687
|
+
# Example 4 (RestoreDefault):
|
|
688
|
+
# `organizations/foo` has a `Policy` with values:
|
|
689
|
+
# `allowed_values: "E1" allowed_values:"E2"`
|
|
690
|
+
# `projects/bar` has a `Policy` with values:
|
|
691
|
+
# `RestoreDefault: ```
|
|
692
|
+
# The accepted values at `organizations/foo` are `E1`, `E2`.
|
|
693
|
+
# The accepted values at `projects/bar` are either all or none depending on
|
|
694
|
+
# the value of `constraint_default` (if `ALLOW`, all; if
|
|
695
|
+
# `DENY`, none).
|
|
696
|
+
# Example 5 (no policy inherits parent policy):
|
|
697
|
+
# `organizations/foo` has no `Policy` set.
|
|
698
|
+
# `projects/bar` has no `Policy` set.
|
|
699
|
+
# The accepted values at both levels are either all or none depending on
|
|
700
|
+
# the value of `constraint_default` (if `ALLOW`, all; if
|
|
701
|
+
# `DENY`, none).
|
|
702
|
+
# Example 6 (ListConstraint allowing all):
|
|
703
|
+
# `organizations/foo` has a `Policy` with values:
|
|
704
|
+
# `allowed_values: "E1" allowed_values: "E2"`
|
|
705
|
+
# `projects/bar` has a `Policy` with:
|
|
706
|
+
# `all: ALLOW`
|
|
707
|
+
# The accepted values at `organizations/foo` are `E1`, E2`.
|
|
708
|
+
# Any value is accepted at `projects/bar`.
|
|
709
|
+
# Example 7 (ListConstraint allowing none):
|
|
710
|
+
# `organizations/foo` has a `Policy` with values:
|
|
711
|
+
# `allowed_values: "E1" allowed_values: "E2"`
|
|
712
|
+
# `projects/bar` has a `Policy` with:
|
|
713
|
+
# `all: DENY`
|
|
714
|
+
# The accepted values at `organizations/foo` are `E1`, E2`.
|
|
715
|
+
# No value is accepted at `projects/bar`.
|
|
716
|
+
# Example 10 (allowed and denied subtrees of Resource Manager hierarchy):
|
|
717
|
+
# Given the following resource hierarchy
|
|
718
|
+
# O1->`F1, F2`; F1->`P1`; F2->`P2, P3`,
|
|
719
|
+
# `organizations/foo` has a `Policy` with values:
|
|
720
|
+
# `allowed_values: "under:organizations/O1"`
|
|
721
|
+
# `projects/bar` has a `Policy` with:
|
|
722
|
+
# `allowed_values: "under:projects/P3"`
|
|
723
|
+
# `denied_values: "under:folders/F2"`
|
|
724
|
+
# The accepted values at `organizations/foo` are `organizations/O1`,
|
|
725
|
+
# `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`,
|
|
726
|
+
# `projects/P3`.
|
|
727
|
+
# The accepted values at `projects/bar` are `organizations/O1`,
|
|
728
|
+
# `folders/F1`, `projects/P1`.
|
|
729
|
+
# Corresponds to the JSON property `inheritFromParent`
|
|
730
|
+
# @return [Boolean]
|
|
731
|
+
attr_accessor :inherit_from_parent
|
|
732
|
+
alias_method :inherit_from_parent?, :inherit_from_parent
|
|
733
|
+
|
|
734
|
+
# Optional. The Google Cloud Console will try to default to a configuration
|
|
735
|
+
# that matches the value specified in this `Policy`. If `suggested_value`
|
|
736
|
+
# is not set, it will inherit the value specified higher in the hierarchy,
|
|
737
|
+
# unless `inherit_from_parent` is `false`.
|
|
738
|
+
# Corresponds to the JSON property `suggestedValue`
|
|
739
|
+
# @return [String]
|
|
740
|
+
attr_accessor :suggested_value
|
|
741
|
+
|
|
742
|
+
def initialize(**args)
|
|
743
|
+
update!(**args)
|
|
744
|
+
end
|
|
745
|
+
|
|
746
|
+
# Update properties of this object
|
|
747
|
+
def update!(**args)
|
|
748
|
+
@all_values = args[:all_values] if args.key?(:all_values)
|
|
749
|
+
@allowed_values = args[:allowed_values] if args.key?(:allowed_values)
|
|
750
|
+
@denied_values = args[:denied_values] if args.key?(:denied_values)
|
|
751
|
+
@inherit_from_parent = args[:inherit_from_parent] if args.key?(:inherit_from_parent)
|
|
752
|
+
@suggested_value = args[:suggested_value] if args.key?(:suggested_value)
|
|
753
|
+
end
|
|
754
|
+
end
|
|
755
|
+
|
|
756
|
+
# Defines a Cloud Organization `Policy` which is used to specify `Constraints`
|
|
757
|
+
# for configurations of Cloud Platform resources.
|
|
758
|
+
class GoogleCloudOrgpolicyV1Policy
|
|
759
|
+
include Google::Apis::Core::Hashable
|
|
760
|
+
|
|
761
|
+
# Used in `policy_type` to specify how `boolean_policy` will behave at this
|
|
762
|
+
# resource.
|
|
763
|
+
# Corresponds to the JSON property `booleanPolicy`
|
|
764
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1BooleanPolicy]
|
|
765
|
+
attr_accessor :boolean_policy
|
|
766
|
+
|
|
767
|
+
# The name of the `Constraint` the `Policy` is configuring, for example,
|
|
768
|
+
# `constraints/serviceuser.services`.
|
|
769
|
+
# A [list of available
|
|
770
|
+
# constraints](/resource-manager/docs/organization-policy/org-policy-constraints)
|
|
771
|
+
# is available.
|
|
772
|
+
# Immutable after creation.
|
|
773
|
+
# Corresponds to the JSON property `constraint`
|
|
774
|
+
# @return [String]
|
|
775
|
+
attr_accessor :constraint
|
|
776
|
+
|
|
777
|
+
# An opaque tag indicating the current version of the `Policy`, used for
|
|
778
|
+
# concurrency control.
|
|
779
|
+
# When the `Policy` is returned from either a `GetPolicy` or a
|
|
780
|
+
# `ListOrgPolicy` request, this `etag` indicates the version of the current
|
|
781
|
+
# `Policy` to use when executing a read-modify-write loop.
|
|
782
|
+
# When the `Policy` is returned from a `GetEffectivePolicy` request, the
|
|
783
|
+
# `etag` will be unset.
|
|
784
|
+
# When the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value
|
|
785
|
+
# that was returned from a `GetOrgPolicy` request as part of a
|
|
786
|
+
# read-modify-write loop for concurrency control. Not setting the `etag`in a
|
|
787
|
+
# `SetOrgPolicy` request will result in an unconditional write of the
|
|
788
|
+
# `Policy`.
|
|
789
|
+
# Corresponds to the JSON property `etag`
|
|
790
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
791
|
+
# @return [String]
|
|
792
|
+
attr_accessor :etag
|
|
793
|
+
|
|
794
|
+
# Used in `policy_type` to specify how `list_policy` behaves at this
|
|
795
|
+
# resource.
|
|
796
|
+
# `ListPolicy` can define specific values and subtrees of Cloud Resource
|
|
797
|
+
# Manager resource hierarchy (`Organizations`, `Folders`, `Projects`) that
|
|
798
|
+
# are allowed or denied by setting the `allowed_values` and `denied_values`
|
|
799
|
+
# fields. This is achieved by using the `under:` and optional `is:` prefixes.
|
|
800
|
+
# The `under:` prefix is used to denote resource subtree values.
|
|
801
|
+
# The `is:` prefix is used to denote specific values, and is required only
|
|
802
|
+
# if the value contains a ":". Values prefixed with "is:" are treated the
|
|
803
|
+
# same as values with no prefix.
|
|
804
|
+
# Ancestry subtrees must be in one of the following formats:
|
|
805
|
+
# - "projects/<project-id>", e.g. "projects/tokyo-rain-123"
|
|
806
|
+
# - "folders/<folder-id>", e.g. "folders/1234"
|
|
807
|
+
# - "organizations/<organization-id>", e.g. "organizations/1234"
|
|
808
|
+
# The `supports_under` field of the associated `Constraint` defines whether
|
|
809
|
+
# ancestry prefixes can be used. You can set `allowed_values` and
|
|
810
|
+
# `denied_values` in the same `Policy` if `all_values` is
|
|
811
|
+
# `ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
|
|
812
|
+
# values. If `all_values` is set to either `ALLOW` or `DENY`,
|
|
813
|
+
# `allowed_values` and `denied_values` must be unset.
|
|
814
|
+
# Corresponds to the JSON property `listPolicy`
|
|
815
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1ListPolicy]
|
|
816
|
+
attr_accessor :list_policy
|
|
817
|
+
|
|
818
|
+
# Ignores policies set above this resource and restores the
|
|
819
|
+
# `constraint_default` enforcement behavior of the specific `Constraint` at
|
|
820
|
+
# this resource.
|
|
821
|
+
# Suppose that `constraint_default` is set to `ALLOW` for the
|
|
822
|
+
# `Constraint` `constraints/serviceuser.services`. Suppose that organization
|
|
823
|
+
# foo.com sets a `Policy` at their Organization resource node that restricts
|
|
824
|
+
# the allowed service activations to deny all service activations. They
|
|
825
|
+
# could then set a `Policy` with the `policy_type` `restore_default` on
|
|
826
|
+
# several experimental projects, restoring the `constraint_default`
|
|
827
|
+
# enforcement of the `Constraint` for only those projects, allowing those
|
|
828
|
+
# projects to have all services activated.
|
|
829
|
+
# Corresponds to the JSON property `restoreDefault`
|
|
830
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1RestoreDefault]
|
|
831
|
+
attr_accessor :restore_default
|
|
832
|
+
|
|
833
|
+
# The time stamp the `Policy` was previously updated. This is set by the
|
|
834
|
+
# server, not specified by the caller, and represents the last time a call to
|
|
835
|
+
# `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
|
|
836
|
+
# be ignored.
|
|
837
|
+
# Corresponds to the JSON property `updateTime`
|
|
838
|
+
# @return [String]
|
|
839
|
+
attr_accessor :update_time
|
|
840
|
+
|
|
841
|
+
# Version of the `Policy`. Default version is 0;
|
|
842
|
+
# Corresponds to the JSON property `version`
|
|
843
|
+
# @return [Fixnum]
|
|
844
|
+
attr_accessor :version
|
|
845
|
+
|
|
846
|
+
def initialize(**args)
|
|
847
|
+
update!(**args)
|
|
848
|
+
end
|
|
849
|
+
|
|
850
|
+
# Update properties of this object
|
|
851
|
+
def update!(**args)
|
|
852
|
+
@boolean_policy = args[:boolean_policy] if args.key?(:boolean_policy)
|
|
853
|
+
@constraint = args[:constraint] if args.key?(:constraint)
|
|
854
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
855
|
+
@list_policy = args[:list_policy] if args.key?(:list_policy)
|
|
856
|
+
@restore_default = args[:restore_default] if args.key?(:restore_default)
|
|
857
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
|
858
|
+
@version = args[:version] if args.key?(:version)
|
|
859
|
+
end
|
|
860
|
+
end
|
|
861
|
+
|
|
862
|
+
# Ignores policies set above this resource and restores the
|
|
863
|
+
# `constraint_default` enforcement behavior of the specific `Constraint` at
|
|
864
|
+
# this resource.
|
|
865
|
+
# Suppose that `constraint_default` is set to `ALLOW` for the
|
|
866
|
+
# `Constraint` `constraints/serviceuser.services`. Suppose that organization
|
|
867
|
+
# foo.com sets a `Policy` at their Organization resource node that restricts
|
|
868
|
+
# the allowed service activations to deny all service activations. They
|
|
869
|
+
# could then set a `Policy` with the `policy_type` `restore_default` on
|
|
870
|
+
# several experimental projects, restoring the `constraint_default`
|
|
871
|
+
# enforcement of the `Constraint` for only those projects, allowing those
|
|
872
|
+
# projects to have all services activated.
|
|
873
|
+
class GoogleCloudOrgpolicyV1RestoreDefault
|
|
874
|
+
include Google::Apis::Core::Hashable
|
|
875
|
+
|
|
876
|
+
def initialize(**args)
|
|
877
|
+
update!(**args)
|
|
878
|
+
end
|
|
879
|
+
|
|
880
|
+
# Update properties of this object
|
|
881
|
+
def update!(**args)
|
|
882
|
+
end
|
|
883
|
+
end
|
|
884
|
+
|
|
885
|
+
# An `AccessLevel` is a label that can be applied to requests to Google Cloud
|
|
886
|
+
# services, along with a list of requirements necessary for the label to be
|
|
887
|
+
# applied.
|
|
888
|
+
class GoogleIdentityAccesscontextmanagerV1AccessLevel
|
|
889
|
+
include Google::Apis::Core::Hashable
|
|
890
|
+
|
|
891
|
+
# `BasicLevel` is an `AccessLevel` using a set of recommended features.
|
|
892
|
+
# Corresponds to the JSON property `basic`
|
|
893
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1BasicLevel]
|
|
894
|
+
attr_accessor :basic
|
|
895
|
+
|
|
896
|
+
# `CustomLevel` is an `AccessLevel` using the Cloud Common Expression Language
|
|
897
|
+
# to represent the necessary conditions for the level to apply to a request.
|
|
898
|
+
# See CEL spec at: https://github.com/google/cel-spec
|
|
899
|
+
# Corresponds to the JSON property `custom`
|
|
900
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1CustomLevel]
|
|
901
|
+
attr_accessor :custom
|
|
902
|
+
|
|
903
|
+
# Description of the `AccessLevel` and its use. Does not affect behavior.
|
|
904
|
+
# Corresponds to the JSON property `description`
|
|
905
|
+
# @return [String]
|
|
906
|
+
attr_accessor :description
|
|
907
|
+
|
|
908
|
+
# Required. Resource name for the Access Level. The `short_name` component
|
|
909
|
+
# must begin with a letter and only include alphanumeric and '_'. Format:
|
|
910
|
+
# `accessPolicies/`policy_id`/accessLevels/`short_name``. The maximum length
|
|
911
|
+
# of the `short_name` component is 50 characters.
|
|
912
|
+
# Corresponds to the JSON property `name`
|
|
913
|
+
# @return [String]
|
|
914
|
+
attr_accessor :name
|
|
915
|
+
|
|
916
|
+
# Human readable title. Must be unique within the Policy.
|
|
917
|
+
# Corresponds to the JSON property `title`
|
|
918
|
+
# @return [String]
|
|
919
|
+
attr_accessor :title
|
|
920
|
+
|
|
921
|
+
def initialize(**args)
|
|
922
|
+
update!(**args)
|
|
923
|
+
end
|
|
924
|
+
|
|
925
|
+
# Update properties of this object
|
|
926
|
+
def update!(**args)
|
|
927
|
+
@basic = args[:basic] if args.key?(:basic)
|
|
928
|
+
@custom = args[:custom] if args.key?(:custom)
|
|
929
|
+
@description = args[:description] if args.key?(:description)
|
|
930
|
+
@name = args[:name] if args.key?(:name)
|
|
931
|
+
@title = args[:title] if args.key?(:title)
|
|
932
|
+
end
|
|
933
|
+
end
|
|
934
|
+
|
|
935
|
+
# `AccessPolicy` is a container for `AccessLevels` (which define the necessary
|
|
936
|
+
# attributes to use Google Cloud services) and `ServicePerimeters` (which
|
|
937
|
+
# define regions of services able to freely pass data within a perimeter). An
|
|
938
|
+
# access policy is globally visible within an organization, and the
|
|
939
|
+
# restrictions it specifies apply to all projects within an organization.
|
|
940
|
+
class GoogleIdentityAccesscontextmanagerV1AccessPolicy
|
|
941
|
+
include Google::Apis::Core::Hashable
|
|
942
|
+
|
|
943
|
+
# Output only. An opaque identifier for the current version of the
|
|
944
|
+
# `AccessPolicy`. This will always be a strongly validated etag, meaning that
|
|
945
|
+
# two Access Polices will be identical if and only if their etags are
|
|
946
|
+
# identical. Clients should not expect this to be in any specific format.
|
|
947
|
+
# Corresponds to the JSON property `etag`
|
|
948
|
+
# @return [String]
|
|
949
|
+
attr_accessor :etag
|
|
950
|
+
|
|
951
|
+
# Output only. Resource name of the `AccessPolicy`. Format:
|
|
952
|
+
# `accessPolicies/`policy_id``
|
|
953
|
+
# Corresponds to the JSON property `name`
|
|
954
|
+
# @return [String]
|
|
955
|
+
attr_accessor :name
|
|
956
|
+
|
|
957
|
+
# Required. The parent of this `AccessPolicy` in the Cloud Resource
|
|
958
|
+
# Hierarchy. Currently immutable once created. Format:
|
|
959
|
+
# `organizations/`organization_id``
|
|
960
|
+
# Corresponds to the JSON property `parent`
|
|
961
|
+
# @return [String]
|
|
962
|
+
attr_accessor :parent
|
|
963
|
+
|
|
964
|
+
# Required. Human readable title. Does not affect behavior.
|
|
965
|
+
# Corresponds to the JSON property `title`
|
|
966
|
+
# @return [String]
|
|
967
|
+
attr_accessor :title
|
|
968
|
+
|
|
969
|
+
def initialize(**args)
|
|
970
|
+
update!(**args)
|
|
971
|
+
end
|
|
972
|
+
|
|
973
|
+
# Update properties of this object
|
|
974
|
+
def update!(**args)
|
|
975
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
976
|
+
@name = args[:name] if args.key?(:name)
|
|
977
|
+
@parent = args[:parent] if args.key?(:parent)
|
|
978
|
+
@title = args[:title] if args.key?(:title)
|
|
979
|
+
end
|
|
980
|
+
end
|
|
981
|
+
|
|
982
|
+
# `BasicLevel` is an `AccessLevel` using a set of recommended features.
|
|
983
|
+
class GoogleIdentityAccesscontextmanagerV1BasicLevel
|
|
984
|
+
include Google::Apis::Core::Hashable
|
|
985
|
+
|
|
986
|
+
# How the `conditions` list should be combined to determine if a request is
|
|
987
|
+
# granted this `AccessLevel`. If AND is used, each `Condition` in
|
|
988
|
+
# `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
|
|
989
|
+
# is used, at least one `Condition` in `conditions` must be satisfied for the
|
|
990
|
+
# `AccessLevel` to be applied. Default behavior is AND.
|
|
991
|
+
# Corresponds to the JSON property `combiningFunction`
|
|
992
|
+
# @return [String]
|
|
993
|
+
attr_accessor :combining_function
|
|
994
|
+
|
|
995
|
+
# Required. A list of requirements for the `AccessLevel` to be granted.
|
|
996
|
+
# Corresponds to the JSON property `conditions`
|
|
997
|
+
# @return [Array<Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1Condition>]
|
|
998
|
+
attr_accessor :conditions
|
|
999
|
+
|
|
1000
|
+
def initialize(**args)
|
|
1001
|
+
update!(**args)
|
|
1002
|
+
end
|
|
1003
|
+
|
|
1004
|
+
# Update properties of this object
|
|
1005
|
+
def update!(**args)
|
|
1006
|
+
@combining_function = args[:combining_function] if args.key?(:combining_function)
|
|
1007
|
+
@conditions = args[:conditions] if args.key?(:conditions)
|
|
1008
|
+
end
|
|
1009
|
+
end
|
|
1010
|
+
|
|
1011
|
+
# A condition necessary for an `AccessLevel` to be granted. The Condition is an
|
|
1012
|
+
# AND over its fields. So a Condition is true if: 1) the request IP is from one
|
|
1013
|
+
# of the listed subnetworks AND 2) the originating device complies with the
|
|
1014
|
+
# listed device policy AND 3) all listed access levels are granted AND 4) the
|
|
1015
|
+
# request was sent at a time allowed by the DateTimeRestriction.
|
|
1016
|
+
class GoogleIdentityAccesscontextmanagerV1Condition
|
|
1017
|
+
include Google::Apis::Core::Hashable
|
|
1018
|
+
|
|
1019
|
+
# `DevicePolicy` specifies device specific restrictions necessary to acquire a
|
|
1020
|
+
# given access level. A `DevicePolicy` specifies requirements for requests from
|
|
1021
|
+
# devices to be granted access levels, it does not do any enforcement on the
|
|
1022
|
+
# device. `DevicePolicy` acts as an AND over all specified fields, and each
|
|
1023
|
+
# repeated field is an OR over its elements. Any unset fields are ignored. For
|
|
1024
|
+
# example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type :
|
|
1025
|
+
# DESKTOP_LINUX, encryption_status: ENCRYPTED`, then the DevicePolicy will be
|
|
1026
|
+
# true for requests originating from encrypted Linux desktops and encrypted
|
|
1027
|
+
# Windows desktops.
|
|
1028
|
+
# Corresponds to the JSON property `devicePolicy`
|
|
1029
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1DevicePolicy]
|
|
1030
|
+
attr_accessor :device_policy
|
|
1031
|
+
|
|
1032
|
+
# CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
|
|
1033
|
+
# a CIDR IP address block, the specified IP address portion must be properly
|
|
1034
|
+
# truncated (i.e. all the host bits must be zero) or the input is considered
|
|
1035
|
+
# malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
|
|
1036
|
+
# not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
|
|
1037
|
+
# "2001:db8::1/32" is not. The originating IP of a request must be in one of
|
|
1038
|
+
# the listed subnets in order for this Condition to be true. If empty, all IP
|
|
1039
|
+
# addresses are allowed.
|
|
1040
|
+
# Corresponds to the JSON property `ipSubnetworks`
|
|
1041
|
+
# @return [Array<String>]
|
|
1042
|
+
attr_accessor :ip_subnetworks
|
|
1043
|
+
|
|
1044
|
+
# The request must be made by one of the provided user or service
|
|
1045
|
+
# accounts. Groups are not supported.
|
|
1046
|
+
# Syntax:
|
|
1047
|
+
# `user:`emailid``
|
|
1048
|
+
# `serviceAccount:`emailid``
|
|
1049
|
+
# If not specified, a request may come from any user.
|
|
1050
|
+
# Corresponds to the JSON property `members`
|
|
1051
|
+
# @return [Array<String>]
|
|
1052
|
+
attr_accessor :members
|
|
1053
|
+
|
|
1054
|
+
# Whether to negate the Condition. If true, the Condition becomes a NAND over
|
|
1055
|
+
# its non-empty fields, each field must be false for the Condition overall to
|
|
1056
|
+
# be satisfied. Defaults to false.
|
|
1057
|
+
# Corresponds to the JSON property `negate`
|
|
1058
|
+
# @return [Boolean]
|
|
1059
|
+
attr_accessor :negate
|
|
1060
|
+
alias_method :negate?, :negate
|
|
1061
|
+
|
|
1062
|
+
# The request must originate from one of the provided countries/regions.
|
|
1063
|
+
# Must be valid ISO 3166-1 alpha-2 codes.
|
|
1064
|
+
# Corresponds to the JSON property `regions`
|
|
1065
|
+
# @return [Array<String>]
|
|
1066
|
+
attr_accessor :regions
|
|
1067
|
+
|
|
1068
|
+
# A list of other access levels defined in the same `Policy`, referenced by
|
|
1069
|
+
# resource name. Referencing an `AccessLevel` which does not exist is an
|
|
1070
|
+
# error. All access levels listed must be granted for the Condition
|
|
1071
|
+
# to be true. Example:
|
|
1072
|
+
# "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
|
|
1073
|
+
# Corresponds to the JSON property `requiredAccessLevels`
|
|
1074
|
+
# @return [Array<String>]
|
|
1075
|
+
attr_accessor :required_access_levels
|
|
1076
|
+
|
|
1077
|
+
def initialize(**args)
|
|
1078
|
+
update!(**args)
|
|
1079
|
+
end
|
|
1080
|
+
|
|
1081
|
+
# Update properties of this object
|
|
1082
|
+
def update!(**args)
|
|
1083
|
+
@device_policy = args[:device_policy] if args.key?(:device_policy)
|
|
1084
|
+
@ip_subnetworks = args[:ip_subnetworks] if args.key?(:ip_subnetworks)
|
|
1085
|
+
@members = args[:members] if args.key?(:members)
|
|
1086
|
+
@negate = args[:negate] if args.key?(:negate)
|
|
1087
|
+
@regions = args[:regions] if args.key?(:regions)
|
|
1088
|
+
@required_access_levels = args[:required_access_levels] if args.key?(:required_access_levels)
|
|
1089
|
+
end
|
|
1090
|
+
end
|
|
1091
|
+
|
|
1092
|
+
# `CustomLevel` is an `AccessLevel` using the Cloud Common Expression Language
|
|
1093
|
+
# to represent the necessary conditions for the level to apply to a request.
|
|
1094
|
+
# See CEL spec at: https://github.com/google/cel-spec
|
|
1095
|
+
class GoogleIdentityAccesscontextmanagerV1CustomLevel
|
|
1096
|
+
include Google::Apis::Core::Hashable
|
|
1097
|
+
|
|
1098
|
+
# Represents a textual expression in the Common Expression Language (CEL)
|
|
1099
|
+
# syntax. CEL is a C-like expression language. The syntax and semantics of CEL
|
|
1100
|
+
# are documented at https://github.com/google/cel-spec.
|
|
1101
|
+
# Example (Comparison):
|
|
1102
|
+
# title: "Summary size limit"
|
|
1103
|
+
# description: "Determines if a summary is less than 100 chars"
|
|
1104
|
+
# expression: "document.summary.size() < 100"
|
|
1105
|
+
# Example (Equality):
|
|
1106
|
+
# title: "Requestor is owner"
|
|
1107
|
+
# description: "Determines if requestor is the document owner"
|
|
1108
|
+
# expression: "document.owner == request.auth.claims.email"
|
|
1109
|
+
# Example (Logic):
|
|
1110
|
+
# title: "Public documents"
|
|
1111
|
+
# description: "Determine whether the document should be publicly visible"
|
|
1112
|
+
# expression: "document.type != 'private' && document.type != 'internal'"
|
|
1113
|
+
# Example (Data Manipulation):
|
|
1114
|
+
# title: "Notification string"
|
|
1115
|
+
# description: "Create a notification string with a timestamp."
|
|
1116
|
+
# expression: "'New message received at ' + string(document.create_time)"
|
|
1117
|
+
# The exact variables and functions that may be referenced within an expression
|
|
1118
|
+
# are determined by the service that evaluates it. See the service
|
|
1119
|
+
# documentation for additional information.
|
|
1120
|
+
# Corresponds to the JSON property `expr`
|
|
1121
|
+
# @return [Google::Apis::CloudassetV1beta1::Expr]
|
|
1122
|
+
attr_accessor :expr
|
|
1123
|
+
|
|
1124
|
+
def initialize(**args)
|
|
1125
|
+
update!(**args)
|
|
1126
|
+
end
|
|
1127
|
+
|
|
1128
|
+
# Update properties of this object
|
|
1129
|
+
def update!(**args)
|
|
1130
|
+
@expr = args[:expr] if args.key?(:expr)
|
|
1131
|
+
end
|
|
1132
|
+
end
|
|
1133
|
+
|
|
1134
|
+
# `DevicePolicy` specifies device specific restrictions necessary to acquire a
|
|
1135
|
+
# given access level. A `DevicePolicy` specifies requirements for requests from
|
|
1136
|
+
# devices to be granted access levels, it does not do any enforcement on the
|
|
1137
|
+
# device. `DevicePolicy` acts as an AND over all specified fields, and each
|
|
1138
|
+
# repeated field is an OR over its elements. Any unset fields are ignored. For
|
|
1139
|
+
# example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type :
|
|
1140
|
+
# DESKTOP_LINUX, encryption_status: ENCRYPTED`, then the DevicePolicy will be
|
|
1141
|
+
# true for requests originating from encrypted Linux desktops and encrypted
|
|
1142
|
+
# Windows desktops.
|
|
1143
|
+
class GoogleIdentityAccesscontextmanagerV1DevicePolicy
|
|
1144
|
+
include Google::Apis::Core::Hashable
|
|
1145
|
+
|
|
1146
|
+
# Allowed device management levels, an empty list allows all management
|
|
1147
|
+
# levels.
|
|
1148
|
+
# Corresponds to the JSON property `allowedDeviceManagementLevels`
|
|
1149
|
+
# @return [Array<String>]
|
|
1150
|
+
attr_accessor :allowed_device_management_levels
|
|
1151
|
+
|
|
1152
|
+
# Allowed encryptions statuses, an empty list allows all statuses.
|
|
1153
|
+
# Corresponds to the JSON property `allowedEncryptionStatuses`
|
|
1154
|
+
# @return [Array<String>]
|
|
1155
|
+
attr_accessor :allowed_encryption_statuses
|
|
1156
|
+
|
|
1157
|
+
# Allowed OS versions, an empty list allows all types and all versions.
|
|
1158
|
+
# Corresponds to the JSON property `osConstraints`
|
|
1159
|
+
# @return [Array<Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1OsConstraint>]
|
|
1160
|
+
attr_accessor :os_constraints
|
|
1161
|
+
|
|
1162
|
+
# Whether the device needs to be approved by the customer admin.
|
|
1163
|
+
# Corresponds to the JSON property `requireAdminApproval`
|
|
1164
|
+
# @return [Boolean]
|
|
1165
|
+
attr_accessor :require_admin_approval
|
|
1166
|
+
alias_method :require_admin_approval?, :require_admin_approval
|
|
1167
|
+
|
|
1168
|
+
# Whether the device needs to be corp owned.
|
|
1169
|
+
# Corresponds to the JSON property `requireCorpOwned`
|
|
1170
|
+
# @return [Boolean]
|
|
1171
|
+
attr_accessor :require_corp_owned
|
|
1172
|
+
alias_method :require_corp_owned?, :require_corp_owned
|
|
1173
|
+
|
|
1174
|
+
# Whether or not screenlock is required for the DevicePolicy to be true.
|
|
1175
|
+
# Defaults to `false`.
|
|
1176
|
+
# Corresponds to the JSON property `requireScreenlock`
|
|
1177
|
+
# @return [Boolean]
|
|
1178
|
+
attr_accessor :require_screenlock
|
|
1179
|
+
alias_method :require_screenlock?, :require_screenlock
|
|
1180
|
+
|
|
1181
|
+
def initialize(**args)
|
|
1182
|
+
update!(**args)
|
|
1183
|
+
end
|
|
1184
|
+
|
|
1185
|
+
# Update properties of this object
|
|
1186
|
+
def update!(**args)
|
|
1187
|
+
@allowed_device_management_levels = args[:allowed_device_management_levels] if args.key?(:allowed_device_management_levels)
|
|
1188
|
+
@allowed_encryption_statuses = args[:allowed_encryption_statuses] if args.key?(:allowed_encryption_statuses)
|
|
1189
|
+
@os_constraints = args[:os_constraints] if args.key?(:os_constraints)
|
|
1190
|
+
@require_admin_approval = args[:require_admin_approval] if args.key?(:require_admin_approval)
|
|
1191
|
+
@require_corp_owned = args[:require_corp_owned] if args.key?(:require_corp_owned)
|
|
1192
|
+
@require_screenlock = args[:require_screenlock] if args.key?(:require_screenlock)
|
|
1193
|
+
end
|
|
1194
|
+
end
|
|
1195
|
+
|
|
1196
|
+
# A restriction on the OS type and version of devices making requests.
|
|
1197
|
+
class GoogleIdentityAccesscontextmanagerV1OsConstraint
|
|
1198
|
+
include Google::Apis::Core::Hashable
|
|
1199
|
+
|
|
1200
|
+
# The minimum allowed OS version. If not set, any version of this OS
|
|
1201
|
+
# satisfies the constraint. Format: `"major.minor.patch"`.
|
|
1202
|
+
# Examples: `"10.5.301"`, `"9.2.1"`.
|
|
1203
|
+
# Corresponds to the JSON property `minimumVersion`
|
|
1204
|
+
# @return [String]
|
|
1205
|
+
attr_accessor :minimum_version
|
|
1206
|
+
|
|
1207
|
+
# Required. The allowed OS type.
|
|
1208
|
+
# Corresponds to the JSON property `osType`
|
|
1209
|
+
# @return [String]
|
|
1210
|
+
attr_accessor :os_type
|
|
1211
|
+
|
|
1212
|
+
# Only allows requests from devices with a verified Chrome OS.
|
|
1213
|
+
# Verifications includes requirements that the device is enterprise-managed,
|
|
1214
|
+
# conformant to domain policies, and the caller has permission to call
|
|
1215
|
+
# the API targeted by the request.
|
|
1216
|
+
# Corresponds to the JSON property `requireVerifiedChromeOs`
|
|
1217
|
+
# @return [Boolean]
|
|
1218
|
+
attr_accessor :require_verified_chrome_os
|
|
1219
|
+
alias_method :require_verified_chrome_os?, :require_verified_chrome_os
|
|
1220
|
+
|
|
1221
|
+
def initialize(**args)
|
|
1222
|
+
update!(**args)
|
|
1223
|
+
end
|
|
1224
|
+
|
|
1225
|
+
# Update properties of this object
|
|
1226
|
+
def update!(**args)
|
|
1227
|
+
@minimum_version = args[:minimum_version] if args.key?(:minimum_version)
|
|
1228
|
+
@os_type = args[:os_type] if args.key?(:os_type)
|
|
1229
|
+
@require_verified_chrome_os = args[:require_verified_chrome_os] if args.key?(:require_verified_chrome_os)
|
|
1230
|
+
end
|
|
1231
|
+
end
|
|
1232
|
+
|
|
1233
|
+
# `ServicePerimeter` describes a set of Google Cloud resources which can freely
|
|
1234
|
+
# import and export data amongst themselves, but not export outside of the
|
|
1235
|
+
# `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
|
|
1236
|
+
# has a target outside of the `ServicePerimeter`, the request will be blocked.
|
|
1237
|
+
# Otherwise the request is allowed. There are two types of Service Perimeter -
|
|
1238
|
+
# Regular and Bridge. Regular Service Perimeters cannot overlap, a single
|
|
1239
|
+
# Google Cloud project can only belong to a single regular Service Perimeter.
|
|
1240
|
+
# Service Perimeter Bridges can contain only Google Cloud projects as members,
|
|
1241
|
+
# a single Google Cloud project may belong to multiple Service Perimeter
|
|
1242
|
+
# Bridges.
|
|
1243
|
+
class GoogleIdentityAccesscontextmanagerV1ServicePerimeter
|
|
1244
|
+
include Google::Apis::Core::Hashable
|
|
1245
|
+
|
|
1246
|
+
# Description of the `ServicePerimeter` and its use. Does not affect
|
|
1247
|
+
# behavior.
|
|
1248
|
+
# Corresponds to the JSON property `description`
|
|
1249
|
+
# @return [String]
|
|
1250
|
+
attr_accessor :description
|
|
1251
|
+
|
|
1252
|
+
# Required. Resource name for the ServicePerimeter. The `short_name`
|
|
1253
|
+
# component must begin with a letter and only include alphanumeric and '_'.
|
|
1254
|
+
# Format: `accessPolicies/`policy_id`/servicePerimeters/`short_name``
|
|
1255
|
+
# Corresponds to the JSON property `name`
|
|
1256
|
+
# @return [String]
|
|
1257
|
+
attr_accessor :name
|
|
1258
|
+
|
|
1259
|
+
# Perimeter type indicator. A single project is
|
|
1260
|
+
# allowed to be a member of single regular perimeter, but multiple service
|
|
1261
|
+
# perimeter bridges. A project cannot be a included in a perimeter bridge
|
|
1262
|
+
# without being included in regular perimeter. For perimeter bridges,
|
|
1263
|
+
# the restricted service list as well as access level lists must be
|
|
1264
|
+
# empty.
|
|
1265
|
+
# Corresponds to the JSON property `perimeterType`
|
|
1266
|
+
# @return [String]
|
|
1267
|
+
attr_accessor :perimeter_type
|
|
1268
|
+
|
|
1269
|
+
# `ServicePerimeterConfig` specifies a set of Google Cloud resources that
|
|
1270
|
+
# describe specific Service Perimeter configuration.
|
|
1271
|
+
# Corresponds to the JSON property `spec`
|
|
1272
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig]
|
|
1273
|
+
attr_accessor :spec
|
|
1274
|
+
|
|
1275
|
+
# `ServicePerimeterConfig` specifies a set of Google Cloud resources that
|
|
1276
|
+
# describe specific Service Perimeter configuration.
|
|
1277
|
+
# Corresponds to the JSON property `status`
|
|
1278
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig]
|
|
1279
|
+
attr_accessor :status
|
|
1280
|
+
|
|
1281
|
+
# Human readable title. Must be unique within the Policy.
|
|
1282
|
+
# Corresponds to the JSON property `title`
|
|
1283
|
+
# @return [String]
|
|
1284
|
+
attr_accessor :title
|
|
1285
|
+
|
|
1286
|
+
# Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
|
|
1287
|
+
# exists for all Service Perimeters, and that spec is identical to the
|
|
1288
|
+
# status for those Service Perimeters. When this flag is set, it inhibits the
|
|
1289
|
+
# generation of the implicit spec, thereby allowing the user to explicitly
|
|
1290
|
+
# provide a configuration ("spec") to use in a dry-run version of the Service
|
|
1291
|
+
# Perimeter. This allows the user to test changes to the enforced config
|
|
1292
|
+
# ("status") without actually enforcing them. This testing is done through
|
|
1293
|
+
# analyzing the differences between currently enforced and suggested
|
|
1294
|
+
# restrictions. use_explicit_dry_run_spec must bet set to True if any of the
|
|
1295
|
+
# fields in the spec are set to non-default values.
|
|
1296
|
+
# Corresponds to the JSON property `useExplicitDryRunSpec`
|
|
1297
|
+
# @return [Boolean]
|
|
1298
|
+
attr_accessor :use_explicit_dry_run_spec
|
|
1299
|
+
alias_method :use_explicit_dry_run_spec?, :use_explicit_dry_run_spec
|
|
1300
|
+
|
|
1301
|
+
def initialize(**args)
|
|
1302
|
+
update!(**args)
|
|
1303
|
+
end
|
|
1304
|
+
|
|
1305
|
+
# Update properties of this object
|
|
1306
|
+
def update!(**args)
|
|
1307
|
+
@description = args[:description] if args.key?(:description)
|
|
1308
|
+
@name = args[:name] if args.key?(:name)
|
|
1309
|
+
@perimeter_type = args[:perimeter_type] if args.key?(:perimeter_type)
|
|
1310
|
+
@spec = args[:spec] if args.key?(:spec)
|
|
1311
|
+
@status = args[:status] if args.key?(:status)
|
|
1312
|
+
@title = args[:title] if args.key?(:title)
|
|
1313
|
+
@use_explicit_dry_run_spec = args[:use_explicit_dry_run_spec] if args.key?(:use_explicit_dry_run_spec)
|
|
1314
|
+
end
|
|
1315
|
+
end
|
|
1316
|
+
|
|
1317
|
+
# `ServicePerimeterConfig` specifies a set of Google Cloud resources that
|
|
1318
|
+
# describe specific Service Perimeter configuration.
|
|
1319
|
+
class GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig
|
|
1320
|
+
include Google::Apis::Core::Hashable
|
|
1321
|
+
|
|
1322
|
+
# A list of `AccessLevel` resource names that allow resources within the
|
|
1323
|
+
# `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
|
|
1324
|
+
# must be in the same policy as this `ServicePerimeter`. Referencing a
|
|
1325
|
+
# nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
|
|
1326
|
+
# listed, resources within the perimeter can only be accessed via Google
|
|
1327
|
+
# Cloud calls with request origins within the perimeter. Example:
|
|
1328
|
+
# `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`.
|
|
1329
|
+
# For Service Perimeter Bridge, must be empty.
|
|
1330
|
+
# Corresponds to the JSON property `accessLevels`
|
|
1331
|
+
# @return [Array<String>]
|
|
1332
|
+
attr_accessor :access_levels
|
|
1333
|
+
|
|
1334
|
+
# A list of Google Cloud resources that are inside of the service perimeter.
|
|
1335
|
+
# Currently only projects are allowed. Format: `projects/`project_number``
|
|
1336
|
+
# Corresponds to the JSON property `resources`
|
|
1337
|
+
# @return [Array<String>]
|
|
1338
|
+
attr_accessor :resources
|
|
1339
|
+
|
|
1340
|
+
# Google Cloud services that are subject to the Service Perimeter
|
|
1341
|
+
# restrictions. For example, if `storage.googleapis.com` is specified, access
|
|
1342
|
+
# to the storage buckets inside the perimeter must meet the perimeter's
|
|
1343
|
+
# access restrictions.
|
|
1344
|
+
# Corresponds to the JSON property `restrictedServices`
|
|
1345
|
+
# @return [Array<String>]
|
|
1346
|
+
attr_accessor :restricted_services
|
|
1347
|
+
|
|
1348
|
+
# Specifies how APIs are allowed to communicate within the Service
|
|
1349
|
+
# Perimeter.
|
|
1350
|
+
# Corresponds to the JSON property `vpcAccessibleServices`
|
|
1351
|
+
# @return [Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices]
|
|
1352
|
+
attr_accessor :vpc_accessible_services
|
|
1353
|
+
|
|
1354
|
+
def initialize(**args)
|
|
1355
|
+
update!(**args)
|
|
1356
|
+
end
|
|
1357
|
+
|
|
1358
|
+
# Update properties of this object
|
|
1359
|
+
def update!(**args)
|
|
1360
|
+
@access_levels = args[:access_levels] if args.key?(:access_levels)
|
|
1361
|
+
@resources = args[:resources] if args.key?(:resources)
|
|
1362
|
+
@restricted_services = args[:restricted_services] if args.key?(:restricted_services)
|
|
1363
|
+
@vpc_accessible_services = args[:vpc_accessible_services] if args.key?(:vpc_accessible_services)
|
|
1364
|
+
end
|
|
1365
|
+
end
|
|
1366
|
+
|
|
1367
|
+
# Specifies how APIs are allowed to communicate within the Service
|
|
1368
|
+
# Perimeter.
|
|
1369
|
+
class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices
|
|
1370
|
+
include Google::Apis::Core::Hashable
|
|
1371
|
+
|
|
1372
|
+
# The list of APIs usable within the Service Perimeter. Must be empty
|
|
1373
|
+
# unless 'enable_restriction' is True.
|
|
1374
|
+
# Corresponds to the JSON property `allowedServices`
|
|
1375
|
+
# @return [Array<String>]
|
|
1376
|
+
attr_accessor :allowed_services
|
|
1377
|
+
|
|
1378
|
+
# Whether to restrict API calls within the Service Perimeter to the list of
|
|
1379
|
+
# APIs specified in 'allowed_services'.
|
|
1380
|
+
# Corresponds to the JSON property `enableRestriction`
|
|
1381
|
+
# @return [Boolean]
|
|
1382
|
+
attr_accessor :enable_restriction
|
|
1383
|
+
alias_method :enable_restriction?, :enable_restriction
|
|
1384
|
+
|
|
1385
|
+
def initialize(**args)
|
|
1386
|
+
update!(**args)
|
|
1387
|
+
end
|
|
1388
|
+
|
|
1389
|
+
# Update properties of this object
|
|
1390
|
+
def update!(**args)
|
|
1391
|
+
@allowed_services = args[:allowed_services] if args.key?(:allowed_services)
|
|
1392
|
+
@enable_restriction = args[:enable_restriction] if args.key?(:enable_restriction)
|
|
1393
|
+
end
|
|
1394
|
+
end
|
|
1395
|
+
|
|
487
1396
|
# This resource represents a long-running operation that is the result of a
|
|
488
1397
|
# network API call.
|
|
489
1398
|
class Operation
|
|
@@ -574,10 +1483,13 @@ module Google
|
|
|
574
1483
|
# Google groups, and domains (such as G Suite). A `role` is a named list of
|
|
575
1484
|
# permissions; each `role` can be an IAM predefined role or a user-created
|
|
576
1485
|
# custom role.
|
|
577
|
-
#
|
|
578
|
-
# expression that allows access to a resource
|
|
579
|
-
# to `true`. A condition can add constraints
|
|
580
|
-
# request, the resource, or both.
|
|
1486
|
+
# For some types of Google Cloud resources, a `binding` can also specify a
|
|
1487
|
+
# `condition`, which is a logical expression that allows access to a resource
|
|
1488
|
+
# only if the expression evaluates to `true`. A condition can add constraints
|
|
1489
|
+
# based on attributes of the request, the resource, or both. To learn which
|
|
1490
|
+
# resources support conditions in their IAM policies, see the
|
|
1491
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
1492
|
+
# policies).
|
|
581
1493
|
# **JSON example:**
|
|
582
1494
|
# `
|
|
583
1495
|
# "bindings": [
|
|
@@ -592,7 +1504,9 @@ module Google
|
|
|
592
1504
|
# `,
|
|
593
1505
|
# `
|
|
594
1506
|
# "role": "roles/resourcemanager.organizationViewer",
|
|
595
|
-
# "members": [
|
|
1507
|
+
# "members": [
|
|
1508
|
+
# "user:eve@example.com"
|
|
1509
|
+
# ],
|
|
596
1510
|
# "condition": `
|
|
597
1511
|
# "title": "expirable access",
|
|
598
1512
|
# "description": "Does not grant access after Sep 2020",
|
|
@@ -670,6 +1584,9 @@ module Google
|
|
|
670
1584
|
# the conditions in the version `3` policy are lost.
|
|
671
1585
|
# If a policy does not include any conditions, operations on that policy may
|
|
672
1586
|
# specify any valid version or leave the field unset.
|
|
1587
|
+
# To learn which resources support conditions in their IAM policies, see the
|
|
1588
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
|
|
1589
|
+
# policies).
|
|
673
1590
|
# Corresponds to the JSON property `version`
|
|
674
1591
|
# @return [Fixnum]
|
|
675
1592
|
attr_accessor :version
|
|
@@ -687,28 +1604,29 @@ module Google
|
|
|
687
1604
|
end
|
|
688
1605
|
end
|
|
689
1606
|
|
|
690
|
-
#
|
|
1607
|
+
# A representation of a Google Cloud resource.
|
|
691
1608
|
class Resource
|
|
692
1609
|
include Google::Apis::Core::Hashable
|
|
693
1610
|
|
|
694
|
-
# The content of the resource, in which some sensitive fields are
|
|
695
|
-
#
|
|
1611
|
+
# The content of the resource, in which some sensitive fields are removed
|
|
1612
|
+
# and may not be present.
|
|
696
1613
|
# Corresponds to the JSON property `data`
|
|
697
1614
|
# @return [Hash<String,Object>]
|
|
698
1615
|
attr_accessor :data
|
|
699
1616
|
|
|
700
1617
|
# The URL of the discovery document containing the resource's JSON schema.
|
|
701
|
-
#
|
|
702
|
-
# `
|
|
703
|
-
#
|
|
704
|
-
# such as Cloud Bigtable.
|
|
1618
|
+
# Example:
|
|
1619
|
+
# `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
|
|
1620
|
+
# This value is unspecified for resources that do not have an API based on a
|
|
1621
|
+
# discovery document, such as Cloud Bigtable.
|
|
705
1622
|
# Corresponds to the JSON property `discoveryDocumentUri`
|
|
706
1623
|
# @return [String]
|
|
707
1624
|
attr_accessor :discovery_document_uri
|
|
708
1625
|
|
|
709
|
-
# The JSON schema name listed in the discovery document.
|
|
710
|
-
#
|
|
711
|
-
#
|
|
1626
|
+
# The JSON schema name listed in the discovery document. Example:
|
|
1627
|
+
# `Project`
|
|
1628
|
+
# This value is unspecified for resources that do not have an API based on a
|
|
1629
|
+
# discovery document, such as Cloud Bigtable.
|
|
712
1630
|
# Corresponds to the JSON property `discoveryName`
|
|
713
1631
|
# @return [String]
|
|
714
1632
|
attr_accessor :discovery_name
|
|
@@ -717,25 +1635,25 @@ module Google
|
|
|
717
1635
|
# [Resource
|
|
718
1636
|
# Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
|
719
1637
|
# for more information.
|
|
720
|
-
# For
|
|
1638
|
+
# For Google Cloud assets, this value is the parent resource defined in the
|
|
1639
|
+
# [Cloud IAM policy
|
|
721
1640
|
# hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
|
|
722
|
-
#
|
|
723
|
-
#
|
|
724
|
-
# For third-party assets,
|
|
1641
|
+
# Example:
|
|
1642
|
+
# `//cloudresourcemanager.googleapis.com/projects/my_project_123`
|
|
1643
|
+
# For third-party assets, this field may be set differently.
|
|
725
1644
|
# Corresponds to the JSON property `parent`
|
|
726
1645
|
# @return [String]
|
|
727
1646
|
attr_accessor :parent
|
|
728
1647
|
|
|
729
|
-
# The REST URL for accessing the resource. An HTTP GET
|
|
730
|
-
# URL returns the resource itself.
|
|
731
|
-
#
|
|
732
|
-
#
|
|
733
|
-
# It will be left unspecified for resources without a REST API.
|
|
1648
|
+
# The REST URL for accessing the resource. An HTTP `GET` request using this
|
|
1649
|
+
# URL returns the resource itself. Example:
|
|
1650
|
+
# `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
|
|
1651
|
+
# This value is unspecified for resources without a REST API.
|
|
734
1652
|
# Corresponds to the JSON property `resourceUrl`
|
|
735
1653
|
# @return [String]
|
|
736
1654
|
attr_accessor :resource_url
|
|
737
1655
|
|
|
738
|
-
# The API version. Example:
|
|
1656
|
+
# The API version. Example: `v1`
|
|
739
1657
|
# Corresponds to the JSON property `version`
|
|
740
1658
|
# @return [String]
|
|
741
1659
|
attr_accessor :version
|
|
@@ -794,24 +1712,31 @@ module Google
|
|
|
794
1712
|
end
|
|
795
1713
|
end
|
|
796
1714
|
|
|
797
|
-
#
|
|
798
|
-
#
|
|
1715
|
+
# An asset in Google Cloud and its temporal metadata, including the time window
|
|
1716
|
+
# when it was observed and its status during that window.
|
|
799
1717
|
class TemporalAsset
|
|
800
1718
|
include Google::Apis::Core::Hashable
|
|
801
1719
|
|
|
802
|
-
#
|
|
803
|
-
#
|
|
1720
|
+
# An asset in Google Cloud. An asset can be any resource in the Google Cloud
|
|
1721
|
+
# [resource
|
|
1722
|
+
# hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
|
|
1723
|
+
# resource-hierarchy),
|
|
1724
|
+
# a resource outside the Google Cloud resource hierarchy (such as Google
|
|
1725
|
+
# Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
|
|
1726
|
+
# See [Supported asset
|
|
1727
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
|
1728
|
+
# for more information.
|
|
804
1729
|
# Corresponds to the JSON property `asset`
|
|
805
1730
|
# @return [Google::Apis::CloudassetV1beta1::Asset]
|
|
806
1731
|
attr_accessor :asset
|
|
807
1732
|
|
|
808
|
-
#
|
|
1733
|
+
# Whether the asset has been deleted or not.
|
|
809
1734
|
# Corresponds to the JSON property `deleted`
|
|
810
1735
|
# @return [Boolean]
|
|
811
1736
|
attr_accessor :deleted
|
|
812
1737
|
alias_method :deleted?, :deleted
|
|
813
1738
|
|
|
814
|
-
# A time window
|
|
1739
|
+
# A time window specified by its `start_time` and `end_time`.
|
|
815
1740
|
# Corresponds to the JSON property `window`
|
|
816
1741
|
# @return [Google::Apis::CloudassetV1beta1::TimeWindow]
|
|
817
1742
|
attr_accessor :window
|
|
@@ -828,12 +1753,12 @@ module Google
|
|
|
828
1753
|
end
|
|
829
1754
|
end
|
|
830
1755
|
|
|
831
|
-
# A time window
|
|
1756
|
+
# A time window specified by its `start_time` and `end_time`.
|
|
832
1757
|
class TimeWindow
|
|
833
1758
|
include Google::Apis::Core::Hashable
|
|
834
1759
|
|
|
835
|
-
# End time of the time window (inclusive).
|
|
836
|
-
#
|
|
1760
|
+
# End time of the time window (inclusive). If not specified, the current
|
|
1761
|
+
# timestamp is used instead.
|
|
837
1762
|
# Corresponds to the JSON property `endTime`
|
|
838
1763
|
# @return [String]
|
|
839
1764
|
attr_accessor :end_time
|