UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 2.73 kB
"use strict";var __decorate=exports&&exports.__decorate||function(decorators,target,key,desc){var c=arguments.length,r=c<3?target:desc===null?desc=Object.getOwnPropertyDescriptor(target,key):desc,d;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(decorators,target,key,desc);else for(var i=decorators.length-1;i>=0;i--)(d=decorators[i])&&(r=(c<3?d(r):c>3?d(target,key,r):d(target,key))||r);return c>3&&r&&Object.defineProperty(target,key,r),r};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ImmutableRole=void 0;var constructs_1=()=>{var tmp=require("constructs");return constructs_1=()=>tmp,tmp},core_1=()=>{var tmp=require("../../../core");return core_1=()=>tmp,tmp},metadata_resource_1=()=>{var tmp=require("../../../core/lib/metadata-resource");return metadata_resource_1=()=>tmp,tmp};class ImmutableRole extends core_1().Resource{constructor(scope,id,role,addGrantsToResources){super(scope,id,{account:role.env.account,region:role.env.region}),this.role=role,this.addGrantsToResources=addGrantsToResources,this.assumeRoleAction=this.role.assumeRoleAction,this.policyFragment=this.role.policyFragment,this.grantPrincipal=this,this.principalAccount=this.role.principalAccount,this.roleArn=this.role.roleArn,this.roleName=this.role.roleName,this.stack=this.role.stack,(0,metadata_resource_1().addConstructMetadata)(this,role),constructs_1().Dependable.implement(this,{dependencyRoots:[role]}),this.node.defaultChild=role.node.defaultChild}attachInlinePolicy(_policy){}addManagedPolicy(_policy){}addToPolicy(statement){return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(_statement){return{statementAdded:!this.addGrantsToResources,policyDependable:new(constructs_1()).DependencyGroup}}grant(grantee,...actions){return this.role.grant(grantee,...actions)}grantPassRole(grantee){return this.role.grantPassRole(grantee)}grantAssumeRole(identity){return this.role.grantAssumeRole(identity)}}exports.ImmutableRole=ImmutableRole,__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"attachInlinePolicy",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"addManagedPolicy",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"addToPolicy",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"addToPrincipalPolicy",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"grant",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"grantPassRole",null),__decorate([(0,metadata_resource_1().MethodMetadata)()],ImmutableRole.prototype,"grantAssumeRole",null);