registerAsDelegatedAdministrator()

in source/aws-bootstrap-kit/lib/account.ts [197:229]


  registerAsDelegatedAdministrator(accountId: string, servicePrincipal: string) {
    new cr.AwsCustomResource(this,
      "registerDelegatedAdministrator",
      {
        onCreate: {
          service: 'Organizations',
          action: 'registerDelegatedAdministrator', // https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Organizations.html#registerDelegatedAdministrator-property
          physicalResourceId: cr.PhysicalResourceId.of('registerDelegatedAdministrator'),
          region: 'us-east-1', //AWS Organizations API are only available in us-east-1 for root actions
          parameters: {
            AccountId: accountId,
            ServicePrincipal: servicePrincipal
          }
        },
        onDelete: {
          service: 'Organizations',
          action: 'deregisterDelegatedAdministrator', // https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Organizations.html#deregisterDelegatedAdministrator-property
          physicalResourceId: cr.PhysicalResourceId.of('registerDelegatedAdministrator'),
          region: 'us-east-1', //AWS Organizations API are only available in us-east-1 for root actions
          parameters: {
            AccountId: accountId,
            ServicePrincipal: servicePrincipal
          }
        },
        installLatestAwsSdk: false,
        policy: cr.AwsCustomResourcePolicy.fromSdkCalls(
          {
            resources: cr.AwsCustomResourcePolicy.ANY_RESOURCE
          }
        )
      }
    );
  }