cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
874 lines • 84.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Auditmanager = void 0;
const shared_1 = require("../../shared");
/**
* Statement provider for service [auditmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsauditmanager.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
class Auditmanager extends shared_1.PolicyStatement {
/**
* Grants permission to associate an evidence folder with an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_AssociateAssessmentReportEvidenceFolder.html
*/
toAssociateAssessmentReportEvidenceFolder() {
return this.to('AssociateAssessmentReportEvidenceFolder');
}
/**
* Grants permission to associate a list of evidence to an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_BatchAssociateAssessmentReportEvidence.html
*/
toBatchAssociateAssessmentReportEvidence() {
return this.to('BatchAssociateAssessmentReportEvidence');
}
/**
* Grants permission to create delegations for an assessment in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_BatchCreateDelegationByAssessment.html
*/
toBatchCreateDelegationByAssessment() {
return this.to('BatchCreateDelegationByAssessment');
}
/**
* Grants permission to delete delegations for an assessment in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_BatchDeleteDelegationByAssessment.html
*/
toBatchDeleteDelegationByAssessment() {
return this.to('BatchDeleteDelegationByAssessment');
}
/**
* Grants permission to disassociate a list of evidence from an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_BatchDisassociateAssessmentReportEvidence.html
*/
toBatchDisassociateAssessmentReportEvidence() {
return this.to('BatchDisassociateAssessmentReportEvidence');
}
/**
* Grants permission to import a list of evidence to an assessment control in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_BatchImportEvidenceToAssessmentControl.html
*/
toBatchImportEvidenceToAssessmentControl() {
return this.to('BatchImportEvidenceToAssessmentControl');
}
/**
* Grants permission to create an assessment to be used with AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
* - .ifAwsResourceTag()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_CreateAssessment.html
*/
toCreateAssessment() {
return this.to('CreateAssessment');
}
/**
* Grants permission to create a framework for use in AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
* - .ifAwsResourceTag()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_CreateAssessmentFramework.html
*/
toCreateAssessmentFramework() {
return this.to('CreateAssessmentFramework');
}
/**
* Grants permission to create an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_CreateAssessmentReport.html
*/
toCreateAssessmentReport() {
return this.to('CreateAssessmentReport');
}
/**
* Grants permission to create a control to be used in AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
* - .ifAwsResourceTag()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_CreateControl.html
*/
toCreateControl() {
return this.to('CreateControl');
}
/**
* Grants permission to delete an assessment in AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessment.html
*/
toDeleteAssessment() {
return this.to('DeleteAssessment');
}
/**
* Grants permission to delete an assessment framework in AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFramework.html
*/
toDeleteAssessmentFramework() {
return this.to('DeleteAssessmentFramework');
}
/**
* Grants permission to delete a share request for a custom framework in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFrameworkShare.html
*/
toDeleteAssessmentFrameworkShare() {
return this.to('DeleteAssessmentFrameworkShare');
}
/**
* Grants permission to delete an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentReport.html
*/
toDeleteAssessmentReport() {
return this.to('DeleteAssessmentReport');
}
/**
* Grants permission to delete a control in AWS Audit Manager
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteControl.html
*/
toDeleteControl() {
return this.to('DeleteControl');
}
/**
* Grants permission to deregister an account in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeregisterAccount.html
*/
toDeregisterAccount() {
return this.to('DeregisterAccount');
}
/**
* Grants permission to deregister the delegated administrator account for AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeregisterOrganizationAdminAccount.html
*/
toDeregisterOrganizationAdminAccount() {
return this.to('DeregisterOrganizationAdminAccount');
}
/**
* Grants permission to disassociate an evidence folder from an assessment report in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DisassociateAssessmentReportEvidenceFolder.html
*/
toDisassociateAssessmentReportEvidenceFolder() {
return this.to('DisassociateAssessmentReportEvidenceFolder');
}
/**
* Grants permission to get the status of an account in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetAccountStatus.html
*/
toGetAccountStatus() {
return this.to('GetAccountStatus');
}
/**
* Grants permission to get an assessment created in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetAssessment.html
*/
toGetAssessment() {
return this.to('GetAssessment');
}
/**
* Grants permission to get an assessment framework in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetAssessmentFramework.html
*/
toGetAssessmentFramework() {
return this.to('GetAssessmentFramework');
}
/**
* Grants permission to get the URL for an assessment report in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetAssessmentReportUrl.html
*/
toGetAssessmentReportUrl() {
return this.to('GetAssessmentReportUrl');
}
/**
* Grants permission to get changelogs for an assessment in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetChangeLogs.html
*/
toGetChangeLogs() {
return this.to('GetChangeLogs');
}
/**
* Grants permission to get a control in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetControl.html
*/
toGetControl() {
return this.to('GetControl');
}
/**
* Grants permission to get all delegations in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetDelegations.html
*/
toGetDelegations() {
return this.to('GetDelegations');
}
/**
* Grants permission to get evidence from AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidence.html
*/
toGetEvidence() {
return this.to('GetEvidence');
}
/**
* Grants permission to get all the evidence from an evidence folder in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidenceByEvidenceFolder.html
*/
toGetEvidenceByEvidenceFolder() {
return this.to('GetEvidenceByEvidenceFolder');
}
/**
* Grants permission to get a presigned Amazon S3 URL that can be used to upload a file as manual evidence
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidenceFileUploadUrl.html
*/
toGetEvidenceFileUploadUrl() {
return this.to('GetEvidenceFileUploadUrl');
}
/**
* Grants permission to get the evidence folder from AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidenceFolder.html
*/
toGetEvidenceFolder() {
return this.to('GetEvidenceFolder');
}
/**
* Grants permission to get the evidence folders from an assessment in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidenceFoldersByAssessment.html
*/
toGetEvidenceFoldersByAssessment() {
return this.to('GetEvidenceFoldersByAssessment');
}
/**
* Grants permission to get the evidence folders from an assessment control in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetEvidenceFoldersByAssessmentControl.html
*/
toGetEvidenceFoldersByAssessmentControl() {
return this.to('GetEvidenceFoldersByAssessmentControl');
}
/**
* Grants permission to get analytics data for all active assessments
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetInsights.html
*/
toGetInsights() {
return this.to('GetInsights');
}
/**
* Grants permission to get analytics data for a specific active assessment
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetInsightsByAssessment.html
*/
toGetInsightsByAssessment() {
return this.to('GetInsightsByAssessment');
}
/**
* Grants permission to get the delegated administrator account in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetOrganizationAdminAccount.html
*/
toGetOrganizationAdminAccount() {
return this.to('GetOrganizationAdminAccount');
}
/**
* Grants permission to get the services in scope for an assessment in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetServicesInScope.html
*/
toGetServicesInScope() {
return this.to('GetServicesInScope');
}
/**
* Grants permission to get all settings configured in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_GetSettings.html
*/
toGetSettings() {
return this.to('GetSettings');
}
/**
* Grants permission to list analytics data for controls in a specific control domain and active assessment
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListAssessmentControlInsightsByControlDomain.html
*/
toListAssessmentControlInsightsByControlDomain() {
return this.to('ListAssessmentControlInsightsByControlDomain');
}
/**
* Grants permission to list all sent or received share requests for custom frameworks in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListAssessmentFrameworkShareRequests.html
*/
toListAssessmentFrameworkShareRequests() {
return this.to('ListAssessmentFrameworkShareRequests');
}
/**
* Grants permission to list all assessment frameworks in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListAssessmentFrameworks.html
*/
toListAssessmentFrameworks() {
return this.to('ListAssessmentFrameworks');
}
/**
* Grants permission to list all assessment reports in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListAssessmentReports.html
*/
toListAssessmentReports() {
return this.to('ListAssessmentReports');
}
/**
* Grants permission to list all assessments in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListAssessments.html
*/
toListAssessments() {
return this.to('ListAssessments');
}
/**
* Grants permission to list analytics data for control domains across all active assessments
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListControlDomainInsights.html
*/
toListControlDomainInsights() {
return this.to('ListControlDomainInsights');
}
/**
* Grants permission to list analytics data for control domains in a specific active assessment
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListControlDomainInsightsByAssessment.html
*/
toListControlDomainInsightsByAssessment() {
return this.to('ListControlDomainInsightsByAssessment');
}
/**
* Grants permission to list analytics data for controls in a specific control domain across all active assessments
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListControlInsightsByControlDomain.html
*/
toListControlInsightsByControlDomain() {
return this.to('ListControlInsightsByControlDomain');
}
/**
* Grants permission to list all controls in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListControls.html
*/
toListControls() {
return this.to('ListControls');
}
/**
* Grants permission to list all the data source keywords in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListKeywordsForDataSource.html
*/
toListKeywordsForDataSource() {
return this.to('ListKeywordsForDataSource');
}
/**
* Grants permission to list all notifications in AWS Audit Manager
*
* Access Level: List
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListNotifications.html
*/
toListNotifications() {
return this.to('ListNotifications');
}
/**
* Grants permission to list tags for an AWS Audit Manager resource
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ListTagsForResource.html
*/
toListTagsForResource() {
return this.to('ListTagsForResource');
}
/**
* Grants permission to register an account in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_RegisterAccount.html
*/
toRegisterAccount() {
return this.to('RegisterAccount');
}
/**
* Grants permission to register an account within the organization as the delegated administrator for AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_RegisterOrganizationAdminAccount.html
*/
toRegisterOrganizationAdminAccount() {
return this.to('RegisterOrganizationAdminAccount');
}
/**
* Grants permission to create a share request for a custom framework in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_StartAssessmentFrameworkShare.html
*/
toStartAssessmentFrameworkShare() {
return this.to('StartAssessmentFrameworkShare');
}
/**
* Grants permission to tag an AWS Audit Manager resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_TagResource.html
*/
toTagResource() {
return this.to('TagResource');
}
/**
* Grants permission to untag an AWS Audit Manager resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UntagResource.html
*/
toUntagResource() {
return this.to('UntagResource');
}
/**
* Grants permission to update an assessment in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessment.html
*/
toUpdateAssessment() {
return this.to('UpdateAssessment');
}
/**
* Grants permission to update an assessment control in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessmentControl.html
*/
toUpdateAssessmentControl() {
return this.to('UpdateAssessmentControl');
}
/**
* Grants permission to update the status of an assessment control set in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessmentControlSetStatus.html
*/
toUpdateAssessmentControlSetStatus() {
return this.to('UpdateAssessmentControlSetStatus');
}
/**
* Grants permission to update an assessment framework in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessmentFramework.html
*/
toUpdateAssessmentFramework() {
return this.to('UpdateAssessmentFramework');
}
/**
* Grants permission to update a share request for a custom framework in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessmentFrameworkShare.html
*/
toUpdateAssessmentFrameworkShare() {
return this.to('UpdateAssessmentFrameworkShare');
}
/**
* Grants permission to update the status of an assessment in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateAssessmentStatus.html
*/
toUpdateAssessmentStatus() {
return this.to('UpdateAssessmentStatus');
}
/**
* Grants permission to update a control in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateControl.html
*/
toUpdateControl() {
return this.to('UpdateControl');
}
/**
* Grants permission to update settings in AWS Audit Manager
*
* Access Level: Write
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateSettings.html
*/
toUpdateSettings() {
return this.to('UpdateSettings');
}
/**
* Grants permission to validate the integrity of an assessment report in AWS Audit Manager
*
* Access Level: Read
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_ValidateAssessmentReportIntegrity.html
*/
toValidateAssessmentReportIntegrity() {
return this.to('ValidateAssessmentReportIntegrity');
}
/**
* Adds a resource of type assessment to the statement
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_Assessment.html
*
* @param assessmentId - Identifier for the assessmentId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onAssessment(assessmentId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:auditmanager:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:assessment/${assessmentId}`);
}
/**
* Adds a resource of type assessmentFramework to the statement
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_AssessmentFramework.html
*
* @param assessmentFrameworkId - Identifier for the assessmentFrameworkId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onAssessmentFramework(assessmentFrameworkId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:auditmanager:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:assessmentFramework/${assessmentFrameworkId}`);
}
/**
* Adds a resource of type assessmentControlSet to the statement
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_AssessmentControlSet.html
*
* @param assessmentId - Identifier for the assessmentId.
* @param controlSetId - Identifier for the controlSetId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*/
onAssessmentControlSet(assessmentId, controlSetId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:auditmanager:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:assessment/${assessmentId}/controlSet/${controlSetId}`);
}
/**
* Adds a resource of type control to the statement
*
* https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_Control.html
*
* @param controlId - Identifier for the controlId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onControl(controlId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:auditmanager:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:control/${controlId}`);
}
/**
* Filters access by the tags that are passed in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
*
* Applies to actions:
* - .toCreateAssessment()
* - .toCreateAssessmentFramework()
* - .toCreateControl()
* - .toDeleteAssessment()
* - .toDeleteAssessmentFramework()
* - .toDeleteControl()
* - .toTagResource()
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsRequestTag(tagKey, value, operator) {
return this.if(`aws:RequestTag/${tagKey}`, value, operator ?? 'StringLike');
}
/**
* Filters access by the tags associated with the resource
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
*
* Applies to actions:
* - .toCreateAssessment()
* - .toCreateAssessmentFramework()
* - .toCreateControl()
* - .toUntagResource()
*
* Applies to resource types:
* - assessment
* - assessmentFramework
* - control
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsResourceTag(tagKey, value, operator) {
return this.if(`aws:ResourceTag/${tagKey}`, value, operator ?? 'StringLike');
}
/**
* Filters access by the tag keys that are passed in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
*
* Applies to actions:
* - .toCreateAssessment()
* - .toCreateAssessmentFramework()
* - .toCreateControl()
* - .toDeleteAssessment()
* - .toDeleteAssessmentFramework()
* - .toDeleteControl()
* - .toTagResource()
* - .toUntagResource()
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsTagKeys(value, operator) {
return this.if(`aws:TagKeys`, value, operator ?? 'StringLike');
}
/**
* Statement provider for service [auditmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsauditmanager.html).
*
*/
constructor(props) {
super(props);
this.servicePrefix = 'auditmanager';
this.accessLevelList = {
Write: [
'AssociateAssessmentReportEvidenceFolder',
'BatchAssociateAssessmentReportEvidence',
'BatchCreateDelegationByAssessment',
'BatchDeleteDelegationByAssessment',
'BatchDisassociateAssessmentReportEvidence',
'BatchImportEvidenceToAssessmentControl',
'CreateAssessment',
'CreateAssessmentFramework',
'CreateAssessmentReport',
'CreateControl',
'DeleteAssessment',
'DeleteAssessmentFramework',
'DeleteAssessmentFrameworkShare',
'DeleteAssessmentReport',
'DeleteControl',
'DeregisterAccount',
'DeregisterOrganizationAdminAccount',
'DisassociateAssessmentReportEvidenceFolder',
'RegisterAccount',
'RegisterOrganizationAdminAccount',
'StartAssessmentFrameworkShare',
'UpdateAssessment',
'UpdateAssessmentControl',
'UpdateAssessmentControlSetStatus',
'UpdateAssessmentFramework',
'UpdateAssessmentFrameworkShare',
'UpdateAssessmentStatus',
'UpdateControl',
'UpdateSettings'
],
Read: [
'GetAccountStatus',
'GetAssessment',
'GetAssessmentFramework',
'GetAssessmentReportUrl',
'GetChangeLogs',
'GetControl',
'GetEvidence',
'GetEvidenceByEvidenceFolder',
'GetEvidenceFileUploadUrl',
'GetEvidenceFolder',
'GetEvidenceFoldersByAssessment',
'GetEvidenceFoldersByAssessmentControl',
'GetInsights',
'GetInsightsByAssessment',
'GetOrganizationAdminAccount',
'GetServicesInScope',
'GetSettings',
'ListTagsForResource',
'ValidateAssessmentReportIntegrity'
],
List: [
'GetDelegations',
'ListAssessmentControlInsightsByControlDomain',
'ListAssessmentFrameworkShareRequests',
'ListAssessmentFrameworks',
'ListAssessmentReports',
'ListAssessments',
'ListControlDomainInsights',
'ListControlDomainInsightsByAssessment',
'ListControlInsightsByControlDomain',
'ListControls',
'ListKeywordsForDataSource',
'ListNotifications'
],
Tagging: [
'TagResource',
'UntagResource'
]
};
}
}
exports.Auditmanager = Auditmanager;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXRtYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXVkaXRtYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5RDtBQUd6RDs7OztHQUlHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsd0JBQWU7SUFHL0M7Ozs7OztPQU1HO0lBQ0kseUNBQXlDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx3Q0FBd0M7UUFDN0MsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG1DQUFtQztRQUN4QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksbUNBQW1DO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSwyQ0FBMkM7UUFDaEQsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLDJDQUEyQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLHdDQUF3QztRQUM3QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxrQkFBa0I7UUFDdkIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0ksMkJBQTJCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx3QkFBd0I7UUFDN0IsT0FBTyxJ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QkFDZixrQkFBa0I7Z0JBQ2xCLDJCQUEyQjtnQkFDM0IsZ0NBQWdDO2dCQUNoQyx3QkFBd0I7Z0JBQ3hCLGVBQWU7Z0JBQ2YsbUJBQW1CO2dCQUNuQixvQ0FBb0M7Z0JBQ3BDLDRDQUE0QztnQkFDNUMsaUJBQWlCO2dCQUNqQixrQ0FBa0M7Z0JBQ2xDLCtCQUErQjtnQkFDL0Isa0JBQWtCO2dCQUNsQix5QkFBeUI7Z0JBQ3pCLGtDQUFrQztnQkFDbEMsMkJBQTJCO2dCQUMzQixnQ0FBZ0M7Z0JBQ2hDLHdCQUF3QjtnQkFDeEIsZUFBZTtnQkFDZixnQkFBZ0I7YUFDakI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osa0JBQWtCO2dCQUNsQixlQUFlO2dCQUNmLHdCQUF3QjtnQkFDeEIsd0JBQXdCO2dCQUN4QixlQUFlO2dCQUNmLFlBQVk7Z0JBQ1osYUFBYTtnQkFDYiw2QkFBNkI7Z0JBQzdCLDBCQUEwQjtnQkFDMUIsbUJBQW1CO2dCQUNuQixnQ0FBZ0M7Z0JBQ2hDLHVDQUF1QztnQkFDdkMsYUFBYTtnQkFDYix5QkFBeUI7Z0JBQ3pCLDZCQUE2QjtnQkFDN0Isb0JBQW9CO2dCQUNwQixhQUFhO2dCQUNiLHFCQUFxQjtnQkFDckIsbUNBQW1DO2FBQ3BDO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLGdCQUFnQjtnQkFDaEIsOENBQThDO2dCQUM5QyxzQ0FBc0M7Z0JBQ3RDLDBCQUEwQjtnQkFDMUIsdUJBQXVCO2dCQUN2QixpQkFBaUI7Z0JBQ2pCLDJCQUEyQjtnQkFDM0IsdUNBQXVDO2dCQUN2QyxvQ0FBb0M7Z0JBQ3BDLGNBQWM7Z0JBQ2QsMkJBQTJCO2dCQUMzQixtQkFBbUI7YUFDcEI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsYUFBYTtnQkFDYixlQUFlO2FBQ2hCO1NBQ0YsQ0FBQztJQThJRixDQUFDO0NBQ0Y7QUFyNkJELG9DQXE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY2Nlc3NMZXZlbExpc3QgfSBmcm9tICcuLi8uLi9zaGFyZWQvYWNjZXNzLWxldmVsJztcbmltcG9ydCB7IFBvbGljeVN0YXRlbWVudCwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgYXdzX2lhbSBhcyBpYW0gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2F1ZGl0bWFuYWdlcl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfYXdzYXVkaXRtYW5hZ2VyLmh0bWwpLlxuICpcbiAqIEBwYXJhbSBzaWQgW1NJRF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19zaWQuaHRtbCkgb2YgdGhlIHN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgQXVkaXRtYW5hZ2VyIGV4dGVuZHMgUG9saWN5U3RhdGVtZW50IHtcbiAgcHVibGljIHNlcnZpY2VQcmVmaXggPSAnYXVkaXRtYW5hZ2VyJztcblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gYXNzb2NpYXRlIGFuIGV2aWRlbmNlIGZvbGRlciB3aXRoIGFuIGFzc2Vzc21lbnQgcmVwb3J0IGluIEFXUyBBdWRpdCBNYW5hZ2VyXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1ZGl0LW1hbmFnZXIvbGF0ZXN0L0FQSVJlZmVyZW5jZS9BUElfQXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlRm9sZGVyLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0Fzc29jaWF0ZUFzc2Vzc21lbnRSZXBvcnRFdmlkZW5jZUZvbGRlcigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlRm9sZGVyJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gYXNzb2NpYXRlIGEgbGlzdCBvZiBldmlkZW5jZSB0byBhbiBhc3Nlc3NtZW50IHJlcG9ydCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0JhdGNoQXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0JhdGNoQXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdCYXRjaEFzc29jaWF0ZUFzc2Vzc21lbnRSZXBvcnRFdmlkZW5jZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBkZWxlZ2F0aW9ucyBmb3IgYW4gYXNzZXNzbWVudCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0JhdGNoQ3JlYXRlRGVsZWdhdGlvbkJ5QXNzZXNzbWVudC5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9CYXRjaENyZWF0ZURlbGVnYXRpb25CeUFzc2Vzc21lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0JhdGNoQ3JlYXRlRGVsZWdhdGlvbkJ5QXNzZXNzbWVudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBkZWxlZ2F0aW9ucyBmb3IgYW4gYXNzZXNzbWVudCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0JhdGNoRGVsZXRlRGVsZWdhdGlvbkJ5QXNzZXNzbWVudC5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9CYXRjaERlbGV0ZURlbGVnYXRpb25CeUFzc2Vzc21lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0JhdGNoRGVsZXRlRGVsZWdhdGlvbkJ5QXNzZXNzbWVudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRpc2Fzc29jaWF0ZSBhIGxpc3Qgb2YgZXZpZGVuY2UgZnJvbSBhbiBhc3Nlc3NtZW50IHJlcG9ydCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0JhdGNoRGlzYXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0JhdGNoRGlzYXNzb2NpYXRlQXNzZXNzbWVudFJlcG9ydEV2aWRlbmNlKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdCYXRjaERpc2Fzc29jaWF0ZUFzc2Vzc21lbnRSZXBvcnRFdmlkZW5jZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGltcG9ydCBhIGxpc3Qgb2YgZXZpZGVuY2UgdG8gYW4gYXNzZXNzbWVudCBjb250cm9sIGluIEFXUyBBdWRpdCBNYW5hZ2VyXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1ZGl0LW1hbmFnZXIvbGF0ZXN0L0FQSVJlZmVyZW5jZS9BUElfQmF0Y2hJbXBvcnRFdmlkZW5jZVRvQXNzZXNzbWVudENvbnRyb2wuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQmF0Y2hJbXBvcnRFdmlkZW5jZVRvQXNzZXNzbWVudENvbnRyb2woKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0JhdGNoSW1wb3J0RXZpZGVuY2VUb0Fzc2Vzc21lbnRDb250cm9sJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIGFuIGFzc2Vzc21lbnQgdG8gYmUgdXNlZCB3aXRoIEFXUyBBdWRpdCBNYW5hZ2VyXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogUG9zc2libGUgY29uZGl0aW9uczpcbiAgICogLSAuaWZBd3NSZXF1ZXN0VGFnKClcbiAgICogLSAuaWZBd3NUYWdLZXlzKClcbiAgICogLSAuaWZBd3NSZXNvdXJjZVRhZygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0NyZWF0ZUFzc2Vzc21lbnQuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ3JlYXRlQXNzZXNzbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ3JlYXRlQXNzZXNzbWVudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBhIGZyYW1ld29yayBmb3IgdXNlIGluIEFXUyBBdWRpdCBNYW5hZ2VyXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogUG9zc2libGUgY29uZGl0aW9uczpcbiAgICogLSAuaWZBd3NSZXF1ZXN0VGFnKClcbiAgICogLSAuaWZBd3NUYWdLZXlzKClcbiAgICogLSAuaWZBd3NSZXNvdXJjZVRhZygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0NyZWF0ZUFzc2Vzc21lbnRGcmFtZXdvcmsuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ3JlYXRlQXNzZXNzbWVudEZyYW1ld29yaygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ3JlYXRlQXNzZXNzbWVudEZyYW1ld29yaycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBhbiBhc3Nlc3NtZW50IHJlcG9ydCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0NyZWF0ZUFzc2Vzc21lbnRSZXBvcnQuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ3JlYXRlQXNzZXNzbWVudFJlcG9ydCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ3JlYXRlQXNzZXNzbWVudFJlcG9ydCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBhIGNvbnRyb2wgdG8gYmUgdXNlZCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIFBvc3NpYmxlIGNvbmRpdGlvbnM6XG4gICAqIC0gLmlmQXdzUmVxdWVzdFRhZygpXG4gICAqIC0gLmlmQXdzVGFnS2V5cygpXG4gICAqIC0gLmlmQXdzUmVzb3VyY2VUYWcoKVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXVkaXQtbWFuYWdlci9sYXRlc3QvQVBJUmVmZXJlbmNlL0FQSV9DcmVhdGVDb250cm9sLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0NyZWF0ZUNvbnRyb2woKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0NyZWF0ZUNvbnRyb2wnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgYW4gYXNzZXNzbWVudCBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIFBvc3NpYmxlIGNvbmRpdGlvbnM6XG4gICAqIC0gLmlmQXdzUmVxdWVzdFRhZygpXG4gICAqIC0gLmlmQXdzVGFnS2V5cygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0RlbGV0ZUFzc2Vzc21lbnQuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvRGVsZXRlQXNzZXNzbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnRGVsZXRlQXNzZXNzbWVudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBhbiBhc3Nlc3NtZW50IGZyYW1ld29yayBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIFBvc3NpYmxlIGNvbmRpdGlvbnM6XG4gICAqIC0gLmlmQXdzUmVxdWVzdFRhZygpXG4gICAqIC0gLmlmQXdzVGFnS2V5cygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdWRpdC1tYW5hZ2VyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0RlbGV0ZUFzc2Vzc21lbnRGcmFtZXdvcmsuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvRGVsZXRlQXNzZXNzbWVudEZyYW1ld29yaygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnRGVsZXRlQXNzZXNzbWVudEZyYW1ld29yaycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBhIHNoYXJlIHJlcXVlc3QgZm9yIGEgY3VzdG9tIGZyYW1ld29yayBpbiBBV1MgQXVkaXQgTWFuYWdlclxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLm