You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: iam-roles/cloudformation-management/README.md
+34-41Lines changed: 34 additions & 41 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,32 +1,45 @@
1
-
# Secure All-Patterns Deployer Role for GenAI IDP Accelerator
1
+
# CloudFormation Service Role for GenAI IDP Accelerator
2
2
3
-
This directory contains the `all-patterns-deployer-role-secure.yaml` CloudFormation template that creates a secure IAM role for deploying, managing and modifying all GenAI IDP Accelerator patterns deployments.
3
+
This directory contains the `all-patterns-deployer-role-secure.yaml` CloudFormation template that creates a dedicated IAM service role for CloudFormation to deploy, manage and modify all GenAI IDP Accelerator patterns deployments.
4
4
5
5
## What This Role Does
6
6
7
-
The **AllPatternsDeployerRole** provides comprehensive permissions to deploy, update, and manage GenAI IDP Accelerator CloudFormation stacks across all patterns (Pattern 1: BDA, Pattern 2: Textract+Bedrock, Pattern 3: Textract+UDOP+Bedrock).
7
+
The **AllPatternsDeployerRole**is a CloudFormation service role that provides the necessary permissions for AWS CloudFormation to deploy, update, and manage GenAI IDP Accelerator stacks across all patterns (Pattern 1: BDA, Pattern 2: Textract+Bedrock, Pattern 3: Textract+UDOP+Bedrock). This role can only be assumed by the CloudFormation service, not by users directly.
-**Full CloudFormation Management**: Create, update, delete IDP stacks - This IAM role (which CloudFormation assumes) gives necessary privileges to create/update/delete the stack which is helpful in development and sandbox environments. In production environments, admins can further limit these permissions to their discretion (e.g. disabling stack deletion).
11
11
-**All Pattern Support**: Works with Pattern 1 (BDA), Pattern 2 (Textract+Bedrock), and Pattern 3 (UDOP)
12
12
-**Comprehensive AWS Service Access**: All services required by IDP Accelerator
13
13
14
14
15
15
## Security Features
16
16
17
17
### Region Restrictions
18
-
-**Deployment Regions**: Limited to `us-east-1` and `us-west-2` only
19
-
-**Cross-Region Prevention**: Denies all actions outside approved regions
20
-
-**Same-Region Assumption**: Role can only be assumed in the region where it's deployed
18
+
-**Same-Region Operations**: Only allows the role to be assumed in the region where the master/existing deployment stack already exists
19
+
-**Cross-Region Prevention**: Denies all actions outside the deployment region
20
+
-**Regional Isolation**: Ensures all operations remain within the same region as the existing IDP infrastructure
21
21
22
22
### Session Management
23
23
-**Session Duration**: Maximum 1 hour (3600 seconds)
-**Administrator Note**: Administrators must add an inline IAM policy to users wanting to deploy CloudFormation stacks with this service role, allowing them to pass the `IDP-AllPatterns-Deployer-Secure` role to the CloudFormation principal:
-**Account-Scoped**: Only IAM entities within the same AWS account can assume the role
28
-
-**Permission-Based**: roles/users need individual `sts:AssumeRole` permissions
29
-
-**CloudFormation Service**: AWS CloudFormation service can also assume the role
42
+
30
43
31
44
## Files in this Directory
32
45
@@ -36,43 +49,27 @@ The **AllPatternsDeployerRole** provides comprehensive permissions to deploy, up
36
49
37
50
## Parameters
38
51
39
-
-**MasterStackName**: Name of the master GenAI IDP stack (used in role naming)
40
-
- Must follow CloudFormation stack naming pattern: `^[a-zA-Z][a-zA-Z0-9-]*$`
52
+
-**ExistingIDPStackName**: Name of an existing IDP stack (must start with IDP or idp). It is assumed that the administrator has deployed the first IDP solution deployment.
53
+
- Must follow CloudFormation stack naming pattern: `^[Ii][Dd][Pp][a-zA-Z0-9-]*$`
41
54
42
55
## Quick Start
43
56
44
57
1.**Deploy the IAM Role***(Administrator Required)*:
--template-file all-patterns-deployer-role-secure.yaml \# (Note: Ensure the template file is in your current directory or provide the full path to your template file location)
# Export the assumed role credentials first, then:
73
68
aws cloudformation deploy \
74
-
--template-file ../../template.yaml \
75
-
--stack-name my-idp-stack \
69
+
--template-file ../../template.yaml \ (path to your template.yaml file)
70
+
--stack-name my-idp-stack \ (Name of your stack, starting with prefix IDP or idp)
71
+
--role-arn arn:aws:iam::123456789012:role/All-Patterns-Deployer-Role-Secure \ (The ARN of the idp-deployer-role provided in the Output tab of the deployed role stack)
Copy file name to clipboardExpand all lines: iam-roles/cloudformation-management/all-patterns-deployer-role-secure.yaml
+32-23Lines changed: 32 additions & 23 deletions
Original file line number
Diff line number
Diff line change
@@ -1,45 +1,56 @@
1
1
AWSTemplateFormatVersion: '2010-09-09'
2
-
Description: 'Least Privileges Secure IAM role for deploying GenAI IDP patterns'
2
+
Description: >
3
+
This template creates a dedicated IAM Service Role for CloudFormation.
4
+
This role grants permissions to create, update, and delete CloudFormation
5
+
stacks and their resources. It follows the principle of least privilege
6
+
by allowing only the necessary actions for stack management.
7
+
This role requires an existing master/IDP stack to be already deployed
8
+
as it only operates on stacks with the IDP prefix.
3
9
4
10
Parameters:
5
-
MasterStackName:
11
+
ExistingIDPStackName:
6
12
Type: String
7
-
Description: Name of the master GenAI IDP stack
8
-
Default: 'IDP'
9
-
AllowedPattern: '^[a-zA-Z][a-zA-Z0-9-]*$'
10
-
ConstraintDescription: Must be a valid CloudFormation stack name
13
+
Description: Name of an existing IDP stack (must start with IDP or idp). It is assumed that the administrator has deployed the first IDP solution deployment.
14
+
AllowedPattern: '^[Ii][Dd][Pp][a-zA-Z0-9-]*$'
15
+
ConstraintDescription: Must be an existing stack name starting with IDP or idp
0 commit comments