getProtectedResourcesSummary method
Returns aggregate information about the resources protected by the given Cloud KMS CryptoKey.
By default, summary of resources within the same Cloud organization as the
key will be returned, which requires the KMS organization service account
to be configured(refer
https://docs.cloud.google.com/kms/docs/view-key-usage#required-roles). If
the KMS organization service account is not configured or key's project is
not part of an organization, set fallback_scope to
FALLBACK_SCOPE_PROJECT to retrieve a summary of protected resources
within the key's project.
Request parameters:
name - Required. The resource name of the CryptoKey.
Value must have pattern
^projects/\[^/\]+/locations/\[^/\]+/keyRings/\[^/\]+/cryptoKeys/.*$.
fallbackScope - Optional. The scope to use if the kms organization
service account is not configured.
Possible string values are:
- "FALLBACK_SCOPE_UNSPECIFIED" : Unspecified scope type.
- "FALLBACK_SCOPE_PROJECT" : If set to
FALLBACK_SCOPE_PROJECT, the API will fall back to using key's project as request scope if the kms organization service account is not configured.
$fields - Selector specifying which fields to include in a partial
response.
Completes with a GoogleCloudKmsInventoryV1ProtectedResourcesSummary.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<GoogleCloudKmsInventoryV1ProtectedResourcesSummary>
getProtectedResourcesSummary(
core.String name, {
core.String? fallbackScope,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
'fallbackScope': ?fallbackScope == null ? null : [fallbackScope],
'fields': ?$fields == null ? null : [$fields],
};
final url_ =
'v1/' + core.Uri.encodeFull('$name') + '/protectedResourcesSummary';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return GoogleCloudKmsInventoryV1ProtectedResourcesSummary.fromJson(
response_ as core.Map<core.String, core.dynamic>,
);
}