@gradientedge/cdk-utils 4.4.4 → 4.4.5
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.
- package/package.json +4 -5
- package/api-docs/AcmManager.html +0 -622
- package/api-docs/AcmProps.html +0 -238
- package/api-docs/AlarmProps.html +0 -238
- package/api-docs/AlarmStatusWidgetProps.html +0 -238
- package/api-docs/ApiDestinationEvent.html +0 -297
- package/api-docs/ApiDestinationEventType.html +0 -238
- package/api-docs/ApiDestinedLambda.html +0 -297
- package/api-docs/ApiDestinedLambdaEnvironment.html +0 -238
- package/api-docs/ApiDestinedLambdaType.html +0 -238
- package/api-docs/ApiDestinedRestApi.html +0 -297
- package/api-docs/ApiDestinedRestApiType.html +0 -238
- package/api-docs/ApiManager.html +0 -766
- package/api-docs/ApiToEventBridgeTarget.html +0 -1877
- package/api-docs/ApiToEventBridgeTarget.jpg +0 -0
- package/api-docs/ApiToEventBridgeTargetEventProps.html +0 -238
- package/api-docs/ApiToEventBridgeTargetLambdaProps.html +0 -238
- package/api-docs/ApiToEventBridgeTargetProps.html +0 -238
- package/api-docs/ApiToEventBridgeTargetRestApiProps.html +0 -238
- package/api-docs/AppConfigManager.html +0 -1203
- package/api-docs/AppConfigProps.html +0 -238
- package/api-docs/CloudFrontManager.html +0 -2402
- package/api-docs/CloudFrontProps.html +0 -238
- package/api-docs/CloudTrailManager.html +0 -637
- package/api-docs/CloudTrailProps.html +0 -238
- package/api-docs/CloudWatchManager.html +0 -2986
- package/api-docs/CloudfrontFunctionProps.html +0 -238
- package/api-docs/CodeBuildManager.html +0 -736
- package/api-docs/CommonConstruct.html +0 -1299
- package/api-docs/CommonStack.html +0 -813
- package/api-docs/CommonStackProps.html +0 -238
- package/api-docs/DashboardProps.html +0 -238
- package/api-docs/DistributionProps.html +0 -238
- package/api-docs/DynamodbManager.html +0 -530
- package/api-docs/EcrManager.html +0 -530
- package/api-docs/EcsClusterProps.html +0 -238
- package/api-docs/EcsManager.html +0 -880
- package/api-docs/EcsTaskProps.html +0 -238
- package/api-docs/EksClusterProps.html +0 -238
- package/api-docs/EksManager.html +0 -580
- package/api-docs/EventBusProps.html +0 -238
- package/api-docs/EventManager.html +0 -1454
- package/api-docs/EventRuleProps.html +0 -238
- package/api-docs/GraphQLApiLambda.html +0 -1671
- package/api-docs/GraphQLApiLambda.jpg +0 -0
- package/api-docs/GraphQlApiLambdaEnvironment.html +0 -238
- package/api-docs/GraphQlApiLambdaProps.html +0 -238
- package/api-docs/GraphWidgetProps.html +0 -238
- package/api-docs/HealthCheck.html +0 -238
- package/api-docs/IamManager.html +0 -3821
- package/api-docs/LambdaEdgeProps.html +0 -238
- package/api-docs/LambdaEnvironment.html +0 -238
- package/api-docs/LambdaManager.html +0 -2378
- package/api-docs/LambdaProps.html +0 -238
- package/api-docs/LifecycleRule.html +0 -238
- package/api-docs/LogManager.html +0 -955
- package/api-docs/LogProps.html +0 -238
- package/api-docs/LogQueryWidgetProps.html +0 -238
- package/api-docs/MetricFilterProps.html +0 -238
- package/api-docs/MetricProps.html +0 -238
- package/api-docs/NumericWidgetProps.html +0 -238
- package/api-docs/Route53Manager.html +0 -1460
- package/api-docs/Route53Props.html +0 -238
- package/api-docs/RuleProps.html +0 -238
- package/api-docs/S3BucketProps.html +0 -238
- package/api-docs/S3Manager.html +0 -1546
- package/api-docs/SSMParameterReader.html +0 -431
- package/api-docs/SSMParameterReaderProps.html +0 -238
- package/api-docs/SecretsManager.html +0 -1140
- package/api-docs/SiteWithEcsBackend.html +0 -2391
- package/api-docs/SiteWithEcsBackendProps.html +0 -238
- package/api-docs/SnsManager.html +0 -780
- package/api-docs/SsmManager.html +0 -955
- package/api-docs/StaticSite.html +0 -1358
- package/api-docs/StaticSiteProps.html +0 -238
- package/api-docs/SubscriptionProps.html +0 -238
- package/api-docs/TableProps.html +0 -238
- package/api-docs/TextWidgetProps.html +0 -238
- package/api-docs/VpcManager.html +0 -986
- package/api-docs/WafIPSetProps.html +0 -238
- package/api-docs/WafManager.html +0 -730
- package/api-docs/WafWebACLProps.html +0 -238
- package/api-docs/common_construct.ts.html +0 -279
- package/api-docs/common_stack.ts.html +0 -303
- package/api-docs/construct_api-to-eventbridge-target_api-destination-event.ts.html +0 -175
- package/api-docs/construct_api-to-eventbridge-target_api-destined-lambda.ts.html +0 -178
- package/api-docs/construct_api-to-eventbridge-target_api-destined-rest-api.ts.html +0 -190
- package/api-docs/construct_api-to-eventbridge-target_main.ts.html +0 -751
- package/api-docs/construct_graphql-api-lambda_main.ts.html +0 -408
- package/api-docs/construct_site-with-ecs-backend_main.ts.html +0 -544
- package/api-docs/construct_static-site_main.ts.html +0 -374
- package/api-docs/global.html +0 -1530
- package/api-docs/index.html +0 -208
- package/api-docs/logo.png +0 -0
- package/api-docs/manager_aws_acm-manager.ts.html +0 -236
- package/api-docs/manager_aws_api-manager.ts.html +0 -260
- package/api-docs/manager_aws_app-config-manager.ts.html +0 -310
- package/api-docs/manager_aws_cloudfront-manager.ts.html +0 -491
- package/api-docs/manager_aws_cloudtrail-manager.ts.html +0 -251
- package/api-docs/manager_aws_cloudwatch-manager.ts.html +0 -553
- package/api-docs/manager_aws_codebuild-manager.ts.html +0 -240
- package/api-docs/manager_aws_dynamodb-manager.ts.html +0 -219
- package/api-docs/manager_aws_ecr-manager.ts.html +0 -199
- package/api-docs/manager_aws_ecs-manager.ts.html +0 -259
- package/api-docs/manager_aws_eks-manager.ts.html +0 -260
- package/api-docs/manager_aws_event-manager.ts.html +0 -336
- package/api-docs/manager_aws_iam-manager.ts.html +0 -573
- package/api-docs/manager_aws_lambda-manager.ts.html +0 -400
- package/api-docs/manager_aws_log-manager.ts.html +0 -259
- package/api-docs/manager_aws_route53-manager.ts.html +0 -333
- package/api-docs/manager_aws_s3-manager.ts.html +0 -361
- package/api-docs/manager_aws_secrets-manager.ts.html +0 -274
- package/api-docs/manager_aws_sns-manager.ts.html +0 -246
- package/api-docs/manager_aws_ssm-manager.ts.html +0 -273
- package/api-docs/manager_aws_vpc-manager.ts.html +0 -244
- package/api-docs/manager_aws_waf-manager.ts.html +0 -232
- package/api-docs/scripts/app.min.js +0 -1
- package/api-docs/scripts/linenumber.js +0 -26
- package/api-docs/scripts/search.js +0 -39
- package/api-docs/styles/app.min.css +0 -1
- package/api-docs/styles/iframe.css +0 -13
- package/api-docs/styles/prettify-jsdoc.css +0 -111
- package/api-docs/styles/prettify-tomorrow.css +0 -132
- package/api-docs/styles/reset.css +0 -44
- package/api-docs/styles.css +0 -113
- package/api-docs/tutorial-Architecture.html +0 -151
- package/api-docs/tutorial-Build.html +0 -150
- package/api-docs/tutorial-CI-CD.html +0 -154
- package/api-docs/tutorial-Development.html +0 -227
- package/api-docs/types_aws_index.ts.html +0 -665
- package/api-docs/utils_aws_index.ts.html +0 -192
- package/api-docs/utils_index.ts.html +0 -227
- package/img/ApiToEventBridgeTarget.jpg +0 -0
- package/img/GraphQLApiLambda.jpg +0 -0
- package/img/logo.png +0 -0
- package/theme/styles.css +0 -113
|
@@ -1,573 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
<!DOCTYPE html>
|
|
4
|
-
<html lang="en">
|
|
5
|
-
|
|
6
|
-
<head>
|
|
7
|
-
|
|
8
|
-
<meta charset="utf-8">
|
|
9
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
10
|
-
<title>Gradient Edge CDK Utils manager/aws/iam-manager.ts</title>
|
|
11
|
-
|
|
12
|
-
<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"></script>
|
|
13
|
-
<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
|
|
14
|
-
<script src="./build/entry.js"></script>
|
|
15
|
-
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
16
|
-
<!--[if lt IE 9]>
|
|
17
|
-
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
18
|
-
<![endif]-->
|
|
19
|
-
<link href="https://fonts.googleapis.com/css?family=Roboto:100,400,700|Inconsolata,700" rel="stylesheet">
|
|
20
|
-
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous">
|
|
21
|
-
<link type="text/css" rel="stylesheet" href="https://jmblog.github.io/color-themes-for-google-code-prettify/themes/tomorrow-night.min.css">
|
|
22
|
-
<link type="text/css" rel="stylesheet" href="styles/app.min.css">
|
|
23
|
-
<link type="text/css" rel="stylesheet" href="styles/iframe.css">
|
|
24
|
-
<link type="text/css" rel="stylesheet" href="styles.css">
|
|
25
|
-
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
</head>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<body class="layout small-header">
|
|
33
|
-
<div id="stickyNavbarOverlay"></div>
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
<div class="top-nav">
|
|
37
|
-
<div class="inner">
|
|
38
|
-
<a id="hamburger" role="button" class="navbar-burger" aria-label="menu" aria-expanded="false">
|
|
39
|
-
<span aria-hidden="true"></span>
|
|
40
|
-
<span aria-hidden="true"></span>
|
|
41
|
-
<span aria-hidden="true"></span>
|
|
42
|
-
</a>
|
|
43
|
-
<div class="logo">
|
|
44
|
-
|
|
45
|
-
<a class="image" href="index.html">
|
|
46
|
-
<img src="logo.png" alt="logo">
|
|
47
|
-
</a>
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
<a href="index.html">
|
|
51
|
-
<h1 class="navbar-item">Gradient Edge CDK Utils Documentation</h1>
|
|
52
|
-
</a>
|
|
53
|
-
|
|
54
|
-
</div>
|
|
55
|
-
<div class="menu">
|
|
56
|
-
|
|
57
|
-
<div class="navigation">
|
|
58
|
-
<a
|
|
59
|
-
href="index.html"
|
|
60
|
-
class="link"
|
|
61
|
-
>
|
|
62
|
-
API Documentation
|
|
63
|
-
</a>
|
|
64
|
-
|
|
65
|
-
<div class="dropdown is-hoverable is-right">
|
|
66
|
-
<a class="dropdown-trigger link">
|
|
67
|
-
Tutorials
|
|
68
|
-
<i class="fas fa-chevron-down fa-xs"></i>
|
|
69
|
-
</a>
|
|
70
|
-
<div class="dropdown-menu">
|
|
71
|
-
<div class="dropdown-content">
|
|
72
|
-
|
|
73
|
-
<a class="dropdown-item" href="tutorial-Architecture.html">
|
|
74
|
-
Architecture
|
|
75
|
-
</a>
|
|
76
|
-
|
|
77
|
-
<a class="dropdown-item" href="tutorial-Build.html">
|
|
78
|
-
Build
|
|
79
|
-
</a>
|
|
80
|
-
|
|
81
|
-
<a class="dropdown-item" href="tutorial-CI-CD.html">
|
|
82
|
-
CI-CD
|
|
83
|
-
</a>
|
|
84
|
-
|
|
85
|
-
<a class="dropdown-item" href="tutorial-Development.html">
|
|
86
|
-
Development
|
|
87
|
-
</a>
|
|
88
|
-
|
|
89
|
-
</div>
|
|
90
|
-
</div>
|
|
91
|
-
</div>
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
<a
|
|
96
|
-
class="link user-link "
|
|
97
|
-
href="https://github.com/gradientedge/cdk-utils"
|
|
98
|
-
>
|
|
99
|
-
Github
|
|
100
|
-
</a>
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
</div>
|
|
105
|
-
</div>
|
|
106
|
-
</div>
|
|
107
|
-
</div>
|
|
108
|
-
<div id="main">
|
|
109
|
-
<div
|
|
110
|
-
class="sidebar "
|
|
111
|
-
id="sidebarNav"
|
|
112
|
-
>
|
|
113
|
-
|
|
114
|
-
<div class="search-wrapper">
|
|
115
|
-
<input id="search" type="text" placeholder="Search docs..." class="input">
|
|
116
|
-
</div>
|
|
117
|
-
|
|
118
|
-
<nav>
|
|
119
|
-
|
|
120
|
-
<h2><a href="index.html">Documentation</a></h2><div class="category"></div><div class="category"><h2>cdk-utils.acm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AcmManager.html">AcmManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AcmProps.html">AcmProps</a></li></ul></div><div class="category"><h2>cdk-utils.api-manager</h2><h3>Classes / Construct</h3><ul><li><a href="ApiManager.html">ApiManager</a></li></ul></div><div class="category"><h2>cdk-utils.api-to-eventbridge-target</h2><h3>Classes / member</h3><ul><li><a href="ApiDestinationEvent.html">ApiDestinationEvent</a></li><li><a href="ApiDestinedLambda.html">ApiDestinedLambda</a></li><li><a href="ApiDestinedRestApi.html">ApiDestinedRestApi</a></li></ul><h3>Classes / construct</h3><ul><li><a href="ApiToEventBridgeTarget.html">ApiToEventBridgeTarget</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="ApiDestinationEventType.html">ApiDestinationEventType</a></li><li><a href="ApiDestinedLambdaEnvironment.html">ApiDestinedLambdaEnvironment</a></li><li><a href="ApiDestinedLambdaType.html">ApiDestinedLambdaType</a></li><li><a href="ApiDestinedRestApiType.html">ApiDestinedRestApiType</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="ApiToEventBridgeTargetEventProps.html">ApiToEventBridgeTargetEventProps</a></li><li><a href="ApiToEventBridgeTargetLambdaProps.html">ApiToEventBridgeTargetLambdaProps</a></li><li><a href="ApiToEventBridgeTargetProps.html">ApiToEventBridgeTargetProps</a></li><li><a href="ApiToEventBridgeTargetRestApiProps.html">ApiToEventBridgeTargetRestApiProps</a></li></ul></div><div class="category"><h2>cdk-utils.app-config-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AppConfigManager.html">AppConfigManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AppConfigProps.html">AppConfigProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#ArnsByRegion">ArnsByRegion</a></li></ul></div><div class="category"><h2>cdk-utils.cloudfront-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudFrontManager.html">CloudFrontManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudfrontFunctionProps.html">CloudfrontFunctionProps</a></li><li><a href="CloudFrontProps.html">CloudFrontProps</a></li><li><a href="DistributionProps.html">DistributionProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudtrail-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudTrailManager.html">CloudTrailManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudTrailProps.html">CloudTrailProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudwatch-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudWatchManager.html">CloudWatchManager</a></li><li><a href="LogManager.html">LogManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AlarmProps.html">AlarmProps</a></li><li><a href="AlarmStatusWidgetProps.html">AlarmStatusWidgetProps</a></li><li><a href="DashboardProps.html">DashboardProps</a></li><li><a href="GraphWidgetProps.html">GraphWidgetProps</a></li><li><a href="LogProps.html">LogProps</a></li><li><a href="LogQueryWidgetProps.html">LogQueryWidgetProps</a></li><li><a href="MetricFilterProps.html">MetricFilterProps</a></li><li><a href="MetricProps.html">MetricProps</a></li><li><a href="NumericWidgetProps.html">NumericWidgetProps</a></li><li><a href="TextWidgetProps.html">TextWidgetProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CloudWatchWidgetType">CloudWatchWidgetType</a></li></ul></div><div class="category"><h2>cdk-utils.codebuild-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CodeBuildManager.html">CodeBuildManager</a></li></ul></div><div class="category"><h2>cdk-utils.common-construct</h2><h3>Classes / Construct</h3><ul><li><a href="CommonConstruct.html">CommonConstruct</a></li></ul></div><div class="category"><h2>cdk-utils.common-stack</h2><h3>Classes / Construct</h3><ul><li><a href="CommonStack.html">CommonStack</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CommonStackProps.html">CommonStackProps</a></li></ul></div><div class="category"><h2>cdk-utils.dynamodb-manager</h2><h3>Classes / Construct</h3><ul><li><a href="DynamodbManager.html">DynamodbManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="TableProps.html">TableProps</a></li></ul></div><div class="category"><h2>cdk-utils.ecr-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcrManager.html">EcrManager</a></li></ul></div><div class="category"><h2>cdk-utils.ecs-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcsManager.html">EcsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EcsClusterProps.html">EcsClusterProps</a></li><li><a href="EcsTaskProps.html">EcsTaskProps</a></li></ul></div><div class="category"><h2>cdk-utils.eks-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EksManager.html">EksManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EksClusterProps.html">EksClusterProps</a></li></ul></div><div class="category"><h2>cdk-utils.event-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EventManager.html">EventManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EventBusProps.html">EventBusProps</a></li><li><a href="EventRuleProps.html">EventRuleProps</a></li><li><a href="RuleProps.html">RuleProps</a></li></ul></div><div class="category"><h2>cdk-utils.graphql-api-lambda</h2><h3>Classes / construct</h3><ul><li><a href="GraphQLApiLambda.html">GraphQLApiLambda</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="GraphQlApiLambdaEnvironment.html">GraphQlApiLambdaEnvironment</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="GraphQlApiLambdaProps.html">GraphQlApiLambdaProps</a></li></ul></div><div class="category"><h2>cdk-utils.iam-manager</h2><h3>Classes / Construct</h3><ul><li><a href="IamManager.html">IamManager</a></li></ul></div><div class="category"><h2>cdk-utils.lambda-manager</h2><h3>Classes / Construct</h3><ul><li><a href="LambdaManager.html">LambdaManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LambdaEdgeProps.html">LambdaEdgeProps</a></li><li><a href="LambdaProps.html">LambdaProps</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="LambdaEnvironment.html">LambdaEnvironment</a></li></ul></div><div class="category"><h2>cdk-utils.route53-manager</h2><h3>Classes / Construct</h3><ul><li><a href="Route53Manager.html">Route53Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="Route53Props.html">Route53Props</a></li></ul></div><div class="category"><h2>cdk-utils.s3-manager</h2><h3>Classes / Construct</h3><ul><li><a href="S3Manager.html">S3Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LifecycleRule.html">LifecycleRule</a></li><li><a href="S3BucketProps.html">S3BucketProps</a></li></ul></div><div class="category"><h2>cdk-utils.secrets-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SecretsManager.html">SecretsManager</a></li></ul></div><div class="category"><h2>cdk-utils.site-with-ecs-backend</h2><h3>Classes / construct</h3><ul><li><a href="SiteWithEcsBackend.html">SiteWithEcsBackend</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="HealthCheck.html">HealthCheck</a></li><li><a href="SiteWithEcsBackendProps.html">SiteWithEcsBackendProps</a></li></ul></div><div class="category"><h2>cdk-utils.sns-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SnsManager.html">SnsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SubscriptionProps.html">SubscriptionProps</a></li></ul></div><div class="category"><h2>cdk-utils.ssm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SsmManager.html">SsmManager</a></li><li><a href="SSMParameterReader.html">SSMParameterReader</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SSMParameterReaderProps.html">SSMParameterReaderProps</a></li></ul></div><div class="category"><h2>cdk-utils.static-site</h2><h3>Classes / construct</h3><ul><li><a href="StaticSite.html">StaticSite</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="StaticSiteProps.html">StaticSiteProps</a></li></ul></div><div class="category"><h2>cdk-utils.utils</h2><h3>Global</h3><ul><li><a href="global.html#createCfnOutput">createCfnOutput</a></li><li><a href="global.html#defaultResponseObject">defaultResponseObject</a></li><li><a href="global.html#isDevStage">isDevStage</a></li><li><a href="global.html#isPrdStage">isPrdStage</a></li><li><a href="global.html#isTestStage">isTestStage</a></li><li><a href="global.html#isUatStage">isUatStage</a></li><li><a href="global.html#LogLevel">LogLevel</a></li><li><a href="global.html#redirectError">redirectError</a></li><li><a href="global.html#redirectSuccess">redirectSuccess</a></li></ul></div><div class="category"><h2>cdk-utils.vpc-manager</h2><h3>Classes / Construct</h3><ul><li><a href="VpcManager.html">VpcManager</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CommonVpcIdentifier">CommonVpcIdentifier</a></li></ul></div><div class="category"><h2>cdk-utils.waf-manager</h2><h3>Classes / Construct</h3><ul><li><a href="WafManager.html">WafManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="WafIPSetProps.html">WafIPSetProps</a></li><li><a href="WafWebACLProps.html">WafWebACLProps</a></li></ul></div>
|
|
121
|
-
|
|
122
|
-
</nav>
|
|
123
|
-
</div>
|
|
124
|
-
<div class="core" id="main-content-wrapper">
|
|
125
|
-
<div class="content">
|
|
126
|
-
<header class="page-title">
|
|
127
|
-
<p>Source</p>
|
|
128
|
-
<h1>manager/aws/iam-manager.ts</h1>
|
|
129
|
-
</header>
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
<section>
|
|
136
|
-
<article>
|
|
137
|
-
<pre class="prettyprint source linenums"><code>import * as cdk from 'aws-cdk-lib'
|
|
138
|
-
import * as ecs from 'aws-cdk-lib/aws-ecs'
|
|
139
|
-
import * as iam from 'aws-cdk-lib/aws-iam'
|
|
140
|
-
import * as logs from 'aws-cdk-lib/aws-logs'
|
|
141
|
-
import * as s3 from 'aws-cdk-lib/aws-s3'
|
|
142
|
-
import * as common from '../../common'
|
|
143
|
-
import * as utils from '../../utils'
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* @stability stable
|
|
147
|
-
* @category cdk-utils.iam-manager
|
|
148
|
-
* @subcategory Construct
|
|
149
|
-
* @classdesc Provides operations on AWS IAM.
|
|
150
|
-
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
151
|
-
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
152
|
-
* @example
|
|
153
|
-
* import * as common from '@gradientedge/cdk-utils'
|
|
154
|
-
*
|
|
155
|
-
* class CustomConstruct extends common.common.CommonConstruct {
|
|
156
|
-
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
157
|
-
* super(parent, id, props)
|
|
158
|
-
* this.props = props
|
|
159
|
-
* this.iamManager.createRoleForEcsEvent('MyEcsRole', this, cluster, task)
|
|
160
|
-
* }
|
|
161
|
-
* }
|
|
162
|
-
*
|
|
163
|
-
* @see [CDK IAM Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_iam-readme.html}
|
|
164
|
-
*/
|
|
165
|
-
export class IamManager {
|
|
166
|
-
/**
|
|
167
|
-
* @summary Method to create iam statement to read secrets
|
|
168
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
169
|
-
*/
|
|
170
|
-
public statementForReadSecrets(scope: common.CommonConstruct) {
|
|
171
|
-
return new iam.PolicyStatement({
|
|
172
|
-
effect: iam.Effect.ALLOW,
|
|
173
|
-
actions: ['secretsmanager:GetSecretValue'],
|
|
174
|
-
resources: [`arn:aws:secretsmanager:${cdk.Stack.of(scope).region}:${cdk.Stack.of(scope).account}:secret:*`],
|
|
175
|
-
})
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
/**
|
|
179
|
-
* @summary Method to create iam statement to put events
|
|
180
|
-
*/
|
|
181
|
-
public statementForPutEvents() {
|
|
182
|
-
return new iam.PolicyStatement({
|
|
183
|
-
effect: iam.Effect.ALLOW,
|
|
184
|
-
actions: ['events:PutEvents'],
|
|
185
|
-
resources: ['*'],
|
|
186
|
-
})
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* @summary Method to create iam statement to read app config
|
|
191
|
-
*/
|
|
192
|
-
public statementForReadAnyAppConfig() {
|
|
193
|
-
return new iam.PolicyStatement({
|
|
194
|
-
effect: iam.Effect.ALLOW,
|
|
195
|
-
actions: [
|
|
196
|
-
'ssm:GetDocument',
|
|
197
|
-
'ssm:ListDocuments',
|
|
198
|
-
'appconfig:ListApplications',
|
|
199
|
-
'appconfig:GetApplication',
|
|
200
|
-
'appconfig:ListEnvironments',
|
|
201
|
-
'appconfig:GetEnvironment',
|
|
202
|
-
'appconfig:ListConfigurationProfiles',
|
|
203
|
-
'appconfig:GetConfigurationProfile',
|
|
204
|
-
'appconfig:ListDeploymentStrategies',
|
|
205
|
-
'appconfig:GetDeploymentStrategy',
|
|
206
|
-
'appconfig:GetConfiguration',
|
|
207
|
-
'appconfig:ListDeployments',
|
|
208
|
-
],
|
|
209
|
-
resources: ['*'],
|
|
210
|
-
})
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
/**
|
|
214
|
-
* @summary Method to create iam statement to list s3 buckets
|
|
215
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
216
|
-
* @param {s3.IBucket} bucket
|
|
217
|
-
*/
|
|
218
|
-
public statementForListBucket(scope: common.CommonConstruct, bucket: s3.IBucket) {
|
|
219
|
-
return new iam.PolicyStatement({
|
|
220
|
-
effect: iam.Effect.ALLOW,
|
|
221
|
-
actions: ['s3:ListBucket'],
|
|
222
|
-
resources: [bucket.bucketArn],
|
|
223
|
-
})
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
/**
|
|
227
|
-
* @summary Method to create iam statement to list all s3 buckets
|
|
228
|
-
*/
|
|
229
|
-
public statementForListAllMyBuckets() {
|
|
230
|
-
return new iam.PolicyStatement({
|
|
231
|
-
effect: iam.Effect.ALLOW,
|
|
232
|
-
actions: ['s3:ListAllMyBuckets'],
|
|
233
|
-
resources: ['*'],
|
|
234
|
-
})
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
/**
|
|
238
|
-
* @summary Method to create iam statement to get s3 objects in buckets
|
|
239
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
240
|
-
* @param {s3.IBucket} bucket
|
|
241
|
-
*/
|
|
242
|
-
public statementForGetAnyS3Objects(scope: common.CommonConstruct, bucket: s3.IBucket) {
|
|
243
|
-
return new iam.PolicyStatement({
|
|
244
|
-
effect: iam.Effect.ALLOW,
|
|
245
|
-
actions: ['s3:GetObject', 's3:GetObjectAcl'],
|
|
246
|
-
resources: [bucket.arnForObjects(`*`)],
|
|
247
|
-
})
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
/**
|
|
251
|
-
* @summary Method to create iam statement to delete s3 objects in buckets
|
|
252
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
253
|
-
* @param {s3.IBucket} bucket
|
|
254
|
-
*/
|
|
255
|
-
public statementForDeleteAnyS3Objects(scope: common.CommonConstruct, bucket: s3.IBucket) {
|
|
256
|
-
return new iam.PolicyStatement({
|
|
257
|
-
effect: iam.Effect.ALLOW,
|
|
258
|
-
actions: ['s3:DeleteObject'],
|
|
259
|
-
resources: [bucket.arnForObjects(`*`)],
|
|
260
|
-
})
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
/**
|
|
264
|
-
* @summary Method to create iam statement to write s3 objects in buckets
|
|
265
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
266
|
-
* @param {s3.IBucket} bucket
|
|
267
|
-
*/
|
|
268
|
-
public statementForPutAnyS3Objects(scope: common.CommonConstruct, bucket: s3.IBucket) {
|
|
269
|
-
return new iam.PolicyStatement({
|
|
270
|
-
effect: iam.Effect.ALLOW,
|
|
271
|
-
actions: ['s3:PutObject', 's3:PutObjectAcl'],
|
|
272
|
-
resources: [bucket.arnForObjects(`*`)],
|
|
273
|
-
})
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
/**
|
|
277
|
-
* @summary Method to create iam statement to pass iam role
|
|
278
|
-
*/
|
|
279
|
-
public statementForPassRole() {
|
|
280
|
-
return new iam.PolicyStatement({
|
|
281
|
-
effect: iam.Effect.ALLOW,
|
|
282
|
-
actions: ['iam:PassRole'],
|
|
283
|
-
resources: ['*'],
|
|
284
|
-
})
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
/**
|
|
288
|
-
* @summary Method to create iam statement to invalidate cloudfront cache
|
|
289
|
-
*/
|
|
290
|
-
public statementForCloudfrontInvalidation() {
|
|
291
|
-
return new iam.PolicyStatement({
|
|
292
|
-
effect: iam.Effect.ALLOW,
|
|
293
|
-
actions: ['cloudfront:GetInvalidation', 'cloudfront:CreateInvalidation'],
|
|
294
|
-
resources: ['*'],
|
|
295
|
-
})
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
/**
|
|
299
|
-
* @summary Method to create iam policy to invalidate cloudfront cache
|
|
300
|
-
*/
|
|
301
|
-
public policyForCloudfrontInvalidation() {
|
|
302
|
-
return new iam.PolicyDocument({
|
|
303
|
-
statements: [
|
|
304
|
-
this.statementForCreateAnyLogStream(),
|
|
305
|
-
this.statementForPutAnyLogEvent(),
|
|
306
|
-
this.statementForCloudfrontInvalidation(),
|
|
307
|
-
new iam.PolicyStatement({
|
|
308
|
-
effect: iam.Effect.ALLOW,
|
|
309
|
-
actions: [
|
|
310
|
-
'ecr:GetDownloadUrlForLayer',
|
|
311
|
-
'ecr:BatchGetImage',
|
|
312
|
-
'ecr:BatchCheckLayerAvailability',
|
|
313
|
-
'ecr:GetAuthorizationToken',
|
|
314
|
-
],
|
|
315
|
-
resources: ['*'],
|
|
316
|
-
}),
|
|
317
|
-
],
|
|
318
|
-
})
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
/**
|
|
322
|
-
* @summary Method to create iam role to invalidate cloudfront cache
|
|
323
|
-
* @param {string} id scoped id of the resource
|
|
324
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
325
|
-
*/
|
|
326
|
-
public roleForCloudfrontInvalidation(id: string, scope: common.CommonConstruct) {
|
|
327
|
-
return new iam.Role(scope, `${id}-install-deps-project-role`, {
|
|
328
|
-
assumedBy: new iam.ServicePrincipal('codebuild.amazonaws.com'),
|
|
329
|
-
inlinePolicies: {
|
|
330
|
-
codeBuildPolicy: this.policyForCloudfrontInvalidation(),
|
|
331
|
-
},
|
|
332
|
-
})
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
/**
|
|
336
|
-
* @summary Method to create iam statement to assume iam role
|
|
337
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
338
|
-
* @param {iam.ServicePrincipal[]} servicePrincipals
|
|
339
|
-
*/
|
|
340
|
-
public statementForAssumeRole(scope: common.CommonConstruct, servicePrincipals: iam.ServicePrincipal[]) {
|
|
341
|
-
return new iam.PolicyStatement({
|
|
342
|
-
effect: iam.Effect.ALLOW,
|
|
343
|
-
actions: ['sts:AssumeRole'],
|
|
344
|
-
principals: servicePrincipals,
|
|
345
|
-
})
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
/**
|
|
349
|
-
* @summary Method to create iam statement to pass ecs role
|
|
350
|
-
*/
|
|
351
|
-
public statementForEcsPassRole() {
|
|
352
|
-
return new iam.PolicyStatement({
|
|
353
|
-
effect: iam.Effect.ALLOW,
|
|
354
|
-
actions: ['iam:PassRole'],
|
|
355
|
-
resources: ['*'],
|
|
356
|
-
conditions: { StringLike: { 'iam:PassedToService': 'ecs-tasks.amazonaws.com' } },
|
|
357
|
-
})
|
|
358
|
-
}
|
|
359
|
-
|
|
360
|
-
/**
|
|
361
|
-
* @summary Method to create iam statement to run ecs task
|
|
362
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
363
|
-
* @param {ecs.ICluster} cluster
|
|
364
|
-
* @param {ecs.ITaskDefinition} task
|
|
365
|
-
*/
|
|
366
|
-
public statementForRunEcsTask(scope: common.CommonConstruct, cluster: ecs.ICluster, task: ecs.ITaskDefinition) {
|
|
367
|
-
return new iam.PolicyStatement({
|
|
368
|
-
effect: iam.Effect.ALLOW,
|
|
369
|
-
actions: ['ecs:RunTask'],
|
|
370
|
-
resources: [task.taskDefinitionArn],
|
|
371
|
-
conditions: { ArnLike: { 'ecs:cluster': cluster.clusterArn } },
|
|
372
|
-
})
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
/**
|
|
376
|
-
* @summary Method to create iam statement to create log stream
|
|
377
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
378
|
-
* @param {logs.CfnLogGroup} logGroup
|
|
379
|
-
*/
|
|
380
|
-
public statementForCreateLogStream(scope: common.CommonConstruct, logGroup: logs.CfnLogGroup) {
|
|
381
|
-
return new iam.PolicyStatement({
|
|
382
|
-
effect: iam.Effect.ALLOW,
|
|
383
|
-
actions: ['logs:CreateLogStream'],
|
|
384
|
-
resources: [
|
|
385
|
-
`arn:aws:logs:${cdk.Stack.of(scope).region}:${cdk.Stack.of(scope).account}:log-group:${
|
|
386
|
-
logGroup.logGroupName
|
|
387
|
-
}:log-stream:${cdk.Stack.of(scope).account}_CloudTrail_eu-west-1*`,
|
|
388
|
-
],
|
|
389
|
-
sid: 'AWSCloudTrailCreateLogStream2014110',
|
|
390
|
-
})
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
/**
|
|
394
|
-
* @summary Method to create iam statement to create any log stream
|
|
395
|
-
*/
|
|
396
|
-
public statementForCreateAnyLogStream() {
|
|
397
|
-
return new iam.PolicyStatement({
|
|
398
|
-
effect: iam.Effect.ALLOW,
|
|
399
|
-
actions: ['logs:CreateLogStream'],
|
|
400
|
-
resources: ['*'],
|
|
401
|
-
})
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
/**
|
|
405
|
-
* @summary Method to create iam statement to write log events
|
|
406
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
407
|
-
* @param {logs.CfnLogGroup} logGroup
|
|
408
|
-
*/
|
|
409
|
-
public statementForPutLogEvent(scope: common.CommonConstruct, logGroup: logs.CfnLogGroup) {
|
|
410
|
-
return new iam.PolicyStatement({
|
|
411
|
-
effect: iam.Effect.ALLOW,
|
|
412
|
-
actions: ['logs:PutLogEvents'],
|
|
413
|
-
resources: [
|
|
414
|
-
`arn:aws:logs:${cdk.Stack.of(scope).region}:${cdk.Stack.of(scope).account}:log-group:${
|
|
415
|
-
logGroup.logGroupName
|
|
416
|
-
}:log-stream:${cdk.Stack.of(scope).account}_CloudTrail_eu-west-1*`,
|
|
417
|
-
],
|
|
418
|
-
sid: 'AWSCloudTrailPutLogEvents20141101',
|
|
419
|
-
})
|
|
420
|
-
}
|
|
421
|
-
|
|
422
|
-
/**
|
|
423
|
-
* @summary Method to create iam statement to write any log events
|
|
424
|
-
*/
|
|
425
|
-
public statementForPutAnyLogEvent() {
|
|
426
|
-
return new iam.PolicyStatement({
|
|
427
|
-
effect: iam.Effect.ALLOW,
|
|
428
|
-
actions: ['logs:PutLogEvents'],
|
|
429
|
-
resources: ['*'],
|
|
430
|
-
})
|
|
431
|
-
}
|
|
432
|
-
|
|
433
|
-
/**
|
|
434
|
-
* @summary Method to create iam statement for cloud trail
|
|
435
|
-
* @param {string} id scoped id of the resource
|
|
436
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
437
|
-
* @param {logs.CfnLogGroup} logGroup
|
|
438
|
-
*/
|
|
439
|
-
public createRoleForCloudTrail(id: string, scope: common.CommonConstruct, logGroup: logs.CfnLogGroup) {
|
|
440
|
-
const policy = new iam.PolicyDocument({
|
|
441
|
-
statements: [this.statementForCreateLogStream(scope, logGroup), this.statementForPutLogEvent(scope, logGroup)],
|
|
442
|
-
})
|
|
443
|
-
const role = new iam.CfnRole(scope, `${id}`, {
|
|
444
|
-
assumeRolePolicyDocument: new iam.PolicyDocument({
|
|
445
|
-
statements: [this.statementForAssumeRole(scope, [new iam.ServicePrincipal('cloudtrail.amazonaws.com')])],
|
|
446
|
-
}),
|
|
447
|
-
policies: [
|
|
448
|
-
{
|
|
449
|
-
policyName: `${id}-policy-${scope.props.stage}`,
|
|
450
|
-
policyDocument: policy,
|
|
451
|
-
},
|
|
452
|
-
],
|
|
453
|
-
roleName: `${id}-${scope.props.stage}`,
|
|
454
|
-
})
|
|
455
|
-
|
|
456
|
-
utils.createCfnOutput(`${id}Arn`, scope, role.attrArn)
|
|
457
|
-
utils.createCfnOutput(`${id}Name`, scope, role.roleName)
|
|
458
|
-
|
|
459
|
-
return role
|
|
460
|
-
}
|
|
461
|
-
|
|
462
|
-
/**
|
|
463
|
-
* @summary Method to create iam statement for ecs event
|
|
464
|
-
* @param {string} id scoped id of the resource
|
|
465
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
466
|
-
* @param {ecs.ICluster} cluster
|
|
467
|
-
* @param {ecs.ITaskDefinition} task
|
|
468
|
-
*/
|
|
469
|
-
public createRoleForEcsEvent(
|
|
470
|
-
id: string,
|
|
471
|
-
scope: common.CommonConstruct,
|
|
472
|
-
cluster: ecs.ICluster,
|
|
473
|
-
task: ecs.ITaskDefinition
|
|
474
|
-
) {
|
|
475
|
-
const policy = new iam.PolicyDocument({
|
|
476
|
-
statements: [this.statementForRunEcsTask(scope, cluster, task), this.statementForEcsPassRole()],
|
|
477
|
-
})
|
|
478
|
-
|
|
479
|
-
const role = new iam.Role(scope, `${id}`, {
|
|
480
|
-
assumedBy: new iam.ServicePrincipal('events.amazonaws.com'),
|
|
481
|
-
description: `Role for ${id} ECS Task execution from EventBridge`,
|
|
482
|
-
inlinePolicies: { policy },
|
|
483
|
-
roleName: `${id}-${scope.props.stage}`,
|
|
484
|
-
})
|
|
485
|
-
|
|
486
|
-
utils.createCfnOutput(`${id}Arn`, scope, role.roleArn)
|
|
487
|
-
utils.createCfnOutput(`${id}Name`, scope, role.roleName)
|
|
488
|
-
|
|
489
|
-
return role
|
|
490
|
-
}
|
|
491
|
-
|
|
492
|
-
/**
|
|
493
|
-
* @summary Method to create iam statement for ecs execution
|
|
494
|
-
* @param {string} id scoped id of the resource
|
|
495
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
496
|
-
* @param {iam.PolicyDocument} policy
|
|
497
|
-
*/
|
|
498
|
-
public createRoleForEcsExecution(id: string, scope: common.CommonConstruct, policy: iam.PolicyDocument) {
|
|
499
|
-
const role = new iam.Role(scope, `${id}`, {
|
|
500
|
-
assumedBy: new iam.ServicePrincipal('ecs-tasks.amazonaws.com'),
|
|
501
|
-
description: `Role for ${id} ECS Task execution`,
|
|
502
|
-
inlinePolicies: { policy },
|
|
503
|
-
managedPolicies: [
|
|
504
|
-
iam.ManagedPolicy.fromManagedPolicyArn(
|
|
505
|
-
scope,
|
|
506
|
-
'AmazonECSTaskExecutionRolePolicy',
|
|
507
|
-
'arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy'
|
|
508
|
-
),
|
|
509
|
-
],
|
|
510
|
-
roleName: `${id}-${scope.props.stage}`,
|
|
511
|
-
})
|
|
512
|
-
|
|
513
|
-
utils.createCfnOutput(`${id}Arn`, scope, role.roleArn)
|
|
514
|
-
utils.createCfnOutput(`${id}Name`, scope, role.roleName)
|
|
515
|
-
|
|
516
|
-
return role
|
|
517
|
-
}
|
|
518
|
-
|
|
519
|
-
/**
|
|
520
|
-
* @summary Method to create iam statement for lambda execution
|
|
521
|
-
* @param {string} id scoped id of the resource
|
|
522
|
-
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
523
|
-
* @param {iam.PolicyDocument} policy
|
|
524
|
-
* @param {iam.ServicePrincipal} servicePrinicpal
|
|
525
|
-
*/
|
|
526
|
-
public createRoleForLambda(
|
|
527
|
-
id: string,
|
|
528
|
-
scope: common.CommonConstruct,
|
|
529
|
-
policy: iam.PolicyDocument,
|
|
530
|
-
servicePrinicpal?: iam.ServicePrincipal
|
|
531
|
-
) {
|
|
532
|
-
const role = new iam.Role(scope, `${id}`, {
|
|
533
|
-
assumedBy: servicePrinicpal ?? new iam.ServicePrincipal('lambda.amazonaws.com'),
|
|
534
|
-
description: `Role for ${id} Lambda function`,
|
|
535
|
-
inlinePolicies: { policy },
|
|
536
|
-
managedPolicies: [
|
|
537
|
-
iam.ManagedPolicy.fromManagedPolicyArn(
|
|
538
|
-
scope,
|
|
539
|
-
`${id}-AWSLambdaBasicExecutionRole`,
|
|
540
|
-
'arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole'
|
|
541
|
-
),
|
|
542
|
-
],
|
|
543
|
-
roleName: `${id}-${scope.props.stage}`,
|
|
544
|
-
})
|
|
545
|
-
|
|
546
|
-
utils.createCfnOutput(`${id}Arn`, scope, role.roleArn)
|
|
547
|
-
utils.createCfnOutput(`${id}Name`, scope, role.roleName)
|
|
548
|
-
|
|
549
|
-
return role
|
|
550
|
-
}
|
|
551
|
-
}
|
|
552
|
-
</code></pre>
|
|
553
|
-
</article>
|
|
554
|
-
</section>
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
</div>
|
|
560
|
-
|
|
561
|
-
</div>
|
|
562
|
-
<div id="side-nav" class="side-nav">
|
|
563
|
-
</div>
|
|
564
|
-
</div>
|
|
565
|
-
<script src="scripts/app.min.js"></script>
|
|
566
|
-
<script>PR.prettyPrint();</script>
|
|
567
|
-
<script src="scripts/linenumber.js"> </script>
|
|
568
|
-
|
|
569
|
-
<script src="scripts/search.js"> </script>
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
</body>
|
|
573
|
-
</html>
|