Types of IAM Policies
Impossible Cloud supports IAM policies that allow its users to have granular control over the use, access and administration of their cloud storage. Currently the Impossible Cloud Console can manage the following types of policies:
Managed Policies
Inline Policies
An inline policy is attached directly to a specific IAM user. If that user is deleted, the inline policy is deleted too, it can’t be reused.
A managed policy exists as its own separate item in IAM. If the group or user it’s linked to is deleted, the policy still exists and can be attached to another IAM user.
1. Managed Policies
Managed Policies are a reusable set of permissions that you can attach to multiple users or groups to control what actions they can perform. Impossible Cloud allows you to have custom policies created and managed by you. Customer managed policies offer greater flexibility as you can define specific permissions based on your requirements. You can also reuse these policies across multiple users or groups within your ICSC environment.
You can either put this on a .JSON and attach via CLI or paste in the ICSC console under “Policies”. A Managed Policy can look like this:
File example: my-impossible-cloud-policy.json
{
"Statement": [
{
"Action": [
"s3:ListAllMyBuckets",
"s3:PutObject",
"s3:ListBucket"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::my-impossible-cloud-bucket",
"arn:aws:s3:::my-impossible-cloud-bucket/*"
],
"Sid": "AllowCommonS3Actions"
}
],
"Version": "2012-10-17"
}
Remember to configure your profile:
aws configure --profile your-profile-name
To attach that Managed Policy to an IAM User using CLI, you can write:
aws iam create-policy \
--policy-name MyICPolicy \
--policy-document file://my-impossible-cloud-policy.json \
--endpoint-url https://iam.impossibleapi.net \
--profile your-profile-name
aws iam attach-user-policy \
--user-name "[email protected]" \
--policy-arn arn:aws:iam::123456789012:policy/MyICPolicy \
--endpoint-url https://iam.impossibleapi.net/
--profile your-profile-name
2. Inline Policies
Inline policies are directly embedded into a single IAM user or group. These type of policies have the following conditions:
Directly Attached: When you create an inline policy, it becomes part of that specific user or group.
Unique to the Identity: It cannot be attached to any other user or group.
No Versioning: Unlike managed policies, inline policies do not have versioning, meaning you can't easily roll back to a previous version of the policy.
Lifecycle: If you delete the IAM identity, the inline policy is also automatically deleted.
You can assign inline policies via CLI like this:
aws iam put-user-policy \
--user-name "[email protected]" \
--policy-name CustomInlinePolicy \
--policy-document file://my-impossible-cloud-policy.json \
--endpoint-url https://iam.impossibleapi.net/ \
--profile your-profile-name
Last updated
Was this helpful?