This page lists the prerequisites to run the workshop and to follow the hands-on exercises for the 2HTD-LearningHub project. The content below covers required AWS permissions, recommended region, AWS services used, a minimal workshop IAM policy example, and PowerShell steps for Windows users.
AdministratorAccess if you prefer a frictionless experience during the lab.Quick verification after configuring the AWS CLI:
aws configure # enter Access Key, Secret, default region (e.g. us-east-1) and output format
aws sts get-caller-identity # verify credentials and account
us-east-1 (N. Virginia) for the workshop demos and CloudFormation examples. If you choose another region, adjust resource names and template URLs accordingly.npm (build Lambda code)aws configure)aws ssm start-session integration)This example covers common actions used by provisioning templates and deployment flows in this workshop. Review and scope resource ARNs before using in production.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"cloudformation:DescribeStacks",
"cloudformation:ListStacks",
"s3:CreateBucket",
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"ec2:Describe*",
"ec2:CreateTags",
"ec2:DeleteTags",
"lambda:CreateFunction",
"lambda:DeleteFunction",
"iam:PassRole",
"apigateway:POST",
"cognito-idp:CreateUserPool",
"cognito-idp:DeleteUserPool",
"ssm:StartSession",
"ssm:SendCommand",
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "*"
}
]
}
Notes:
"Resource": "*" with specific ARNs to narrow scope in production.CAPABILITY_NAMED_IAM when deploying; the iam:PassRole action is commonly necessary.Use the following PowerShell snippets to install the AWS CLI, configure credentials, verify access, and run common workshop commands.
Install AWS CLI v2 (download & install MSI):
# Download installer and run
Invoke-WebRequest -Uri "https://awscli.amazonaws.com/AWSCLIV2.msi" -OutFile "$env:TEMP\AWSCLIV2.msi"
Start-Process msiexec.exe -Wait -ArgumentList "/i $env:TEMP\AWSCLIV2.msi /qn"
Configure AWS CLI and verify identity:
aws configure
aws sts get-caller-identity
Start an SSM Session (example):
# Replace with your EC2 instance id
$instanceId = 'i-0123456789abcdef0'
aws ssm start-session --target $instanceId
Deploy a CloudFormation template:
aws cloudformation deploy --template-file .\cloudformation\stack.yaml --stack-name MyWorkshopStack --capabilities CAPABILITY_NAMED_IAM
Upload artifacts to S3 (example):
aws s3 mb s3://my-workshop-artifacts-$(Get-Random -Maximum 99999)
aws s3 cp .\lambda\package.zip s3://my-workshop-artifacts-12345/
aws configure (set default region to us-east-1).aws sts get-caller-identity.If you want, I can scope the minimal IAM policy to exact ARNs for your account, or produce a PowerShell script that automates AWS CLI install + aws configure with prompts.