Create your own AD in AWS, manage users locally, supports MFA
Establish “trust” connections with your on-premises AD
AD Connector
Directory Gateway (proxy) to redirect to on-premises AD, supports MFA
Users are managed on the on-premises AD
Simple AD
AD-compatible managed directory on AWS
Cannot be joined with on-premises AD
AWS Organizations
Global service
Allows to manage multiple AWS accounts
The main account is the master account – you can’t change it
Other accounts are member accounts
Member accounts can only be part of one organiztion
Consolidated Billing across all accounts - single payment method
Pricing benefits from aggregated usage (volume discount for EC2, S3…)
API is available to automate AWS account creation
Multi Account Strategies
Create accounts per department, per cost center, per dev / test / prod, based on regulatory restrictions (using SCP), for better resource isolation (ex: VPC), to have separate per-account service limit, isolated account for logging
Multi Account vs One Account Multi VPC
Use tagging standards for billing purposes
Enable CloudTrail on all accounts, send logs to central S3 account
Send CloudWatch logs to central logging account
Establish cross account roles for admin purposes
Organizational Units (OU) - Examples
AWS Organization
Service Control Policies (SCP)
Whitelist or blacklist IAM actions
Applied at the OU or Account level
Does not apply to the Master Account
SCP is applied to all the Users and Roles of the Account, including Root user
The SCP does not affect service-linked roles
Service-linked roles enable other AWS services to integrate with AWS Organizations and can’t be restricted by SCPs.
SCP must have an explicit Allow (does not allow anything by default)
Use cases:
Restrict access to certain services (for example: can’t use EMR)
Enforce PCI compliance by explicitly disabling services
SCP Hierarchy
AWS Organization – Moving Accounts
To migrate accounts from one organization to another
Remove the member account from the old organization
Send an invite to the new organiztion
Accept the invite to the new organization from the member account
If you want the master account of the old organization to also join the new organization, do the following:
Remove the member accounts from the organizations using procedure above
Delete the old organization
Repeat the process above to invite the old master account to the new org
IAM Conditions
IAM for S3
ListBucket permission applies to arn:aws:s3:::test
=> bucket level permission
GetObject, PutObject, DeleteObject applies to arn:awn:s3:::test/*
=> object level permission
IAM Roles vs Resource Based Policies
Attach a policy to a resource (example: S3 bucket policy) versus attaching of a using a role as a proxy
IAM Roles vs Resource Based Policies
When you assume a role (user, application or service), you give up your
original permissions and take the permissions assigned to the role
When using a resource based policy, the principal doesn’t have to give
up his permissions
Example: User in account A needs to scan a DynamoDB table in Account A and dump it in an S3 bucket in Account B
IAM Permission Boundaries are supported for users and roles (not groups)
Advanced feature to use a managed policy to set the maximum permissions
an IAM entity can get.
IAM Permission Boundaries
Can be used in combinations of AWS Organizations SCP
Use cases
Delegate responsibilities to non administrators within their permission
Allow developers to self-assign policies and manage their own permissions, while making sure they can’t escalate their privileges (= make themselves admin)
Useful to restrict one specific user (instead of a whole account using Organizations & SCP)
IAM Policy Evaluation Logic
Example IAM Policy
Can you perform sqs:CreateQueue?
Can you perform sqs:DeleteQueue?
Can you perform ec2:DescribeInstances?
AWS Resource Access Manager (RAM)
Share AWS resources that you own with other AWS accounts
Share with any account or within your Organization
Avoid resource duplication!
VPC Subnets:
allow to have all the resources launched in the same subnets
must be from the same AWS Organizations.
Cannot share security groups and default VPC
Participants can manage their own resources in there
Participants can’t view, modify, delete resources that belong to other participants or the owner
AWS Transit Gateway
Route53 Resolver Rules
License Manager Configurations
Resource Access Manager – VPC example
Each account…
is responsible for its own resources
cannot view, modify or delete other resources in other accounts
Network is shared so…
Anything deployed in the VPC can talk to other resources in the VPC
Applications are accessed easily across accounts, using private IP!
Security groups from other accounts can be referenced for maximum security
AWS Single Sign-On (SSO)
Centrally manage Single Sign-On to access multiple accounts and 3rd -party business applications.