iam — community claude-skill-registry, community, ide skills, Claude Code, Cursor, Windsurf

v1.0.0
GitHub

About this Skill

Perfect for Cloud Security Agents needing advanced AWS Identity and Access Management (IAM) capabilities. The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app

majiayu000 majiayu000
[0]
[0]
Updated: 2/20/2026

Agent Capability Analysis

The iam skill by majiayu000 is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance.

Ideal Agent Persona

Perfect for Cloud Security Agents needing advanced AWS Identity and Access Management (IAM) capabilities.

Core Value

Empowers agents to manage secure access control to AWS services and resources through authenticated and authorized API calls using AWS IAM, enabling core concepts like principals, common patterns, and best practices for troubleshooting and CLI reference.

Capabilities Granted for iam

Authenticating AWS API calls
Authorizing access to AWS resources
Troubleshooting IAM-related issues
Implementing best practices for IAM

! Prerequisites & Limits

  • Requires AWS account and IAM setup
  • AWS-specific functionality
Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

iam

Install iam, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly

AWS IAM

AWS Identity and Access Management (IAM) enables secure access control to AWS services and resources. IAM is foundational to AWS security—every AWS API call is authenticated and authorized through IAM.

Table of Contents

Core Concepts

Principals

Entities that can make requests to AWS: IAM users, roles, federated users, and applications.

Policies

JSON documents defining permissions. Types:

  • Identity-based: Attached to users, groups, or roles
  • Resource-based: Attached to resources (S3 buckets, SQS queues)
  • Permission boundaries: Maximum permissions an identity can have
  • Service control policies (SCPs): Organization-wide limits

Roles

Identities with permissions that can be assumed by trusted entities. No permanent credentials—uses temporary security tokens.

Trust Relationships

Define which principals can assume a role. Configured via the role's trust policy.

Common Patterns

Create a Service Role for Lambda

AWS CLI:

bash
1# Create the trust policy 2cat > trust-policy.json << 'EOF' 3{ 4 "Version": "2012-10-17", 5 "Statement": [ 6 { 7 "Effect": "Allow", 8 "Principal": { "Service": "lambda.amazonaws.com" }, 9 "Action": "sts:AssumeRole" 10 } 11 ] 12} 13EOF 14 15# Create the role 16aws iam create-role \ 17 --role-name MyLambdaRole \ 18 --assume-role-policy-document file://trust-policy.json 19 20# Attach a managed policy 21aws iam attach-role-policy \ 22 --role-name MyLambdaRole \ 23 --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole

boto3:

python
1import boto3 2import json 3 4iam = boto3.client('iam') 5 6trust_policy = { 7 "Version": "2012-10-17", 8 "Statement": [ 9 { 10 "Effect": "Allow", 11 "Principal": {"Service": "lambda.amazonaws.com"}, 12 "Action": "sts:AssumeRole" 13 } 14 ] 15} 16 17# Create role 18iam.create_role( 19 RoleName='MyLambdaRole', 20 AssumeRolePolicyDocument=json.dumps(trust_policy) 21) 22 23# Attach managed policy 24iam.attach_role_policy( 25 RoleName='MyLambdaRole', 26 PolicyArn='arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole' 27)

Create Custom Policy with Least Privilege

bash
1cat > policy.json << 'EOF' 2{ 3 "Version": "2012-10-17", 4 "Statement": [ 5 { 6 "Effect": "Allow", 7 "Action": [ 8 "dynamodb:GetItem", 9 "dynamodb:PutItem", 10 "dynamodb:Query" 11 ], 12 "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/MyTable" 13 } 14 ] 15} 16EOF 17 18aws iam create-policy \ 19 --policy-name MyDynamoDBPolicy \ 20 --policy-document file://policy.json

Cross-Account Role Assumption

bash
1# In Account B (trusted account), create role with trust for Account A 2cat > cross-account-trust.json << 'EOF' 3{ 4 "Version": "2012-10-17", 5 "Statement": [ 6 { 7 "Effect": "Allow", 8 "Principal": { "AWS": "arn:aws:iam::111111111111:root" }, 9 "Action": "sts:AssumeRole", 10 "Condition": { 11 "StringEquals": { "sts:ExternalId": "unique-external-id" } 12 } 13 } 14 ] 15} 16EOF 17 18# From Account A, assume the role 19aws sts assume-role \ 20 --role-arn arn:aws:iam::222222222222:role/CrossAccountRole \ 21 --role-session-name MySession \ 22 --external-id unique-external-id

CLI Reference

Essential Commands

CommandDescription
aws iam create-roleCreate a new IAM role
aws iam create-policyCreate a customer managed policy
aws iam attach-role-policyAttach a managed policy to a role
aws iam put-role-policyAdd an inline policy to a role
aws iam get-roleGet role details
aws iam list-rolesList all roles
aws iam simulate-principal-policyTest policy permissions
aws sts assume-roleAssume a role and get temporary credentials
aws sts get-caller-identityGet current identity

Useful Flags

  • --query: Filter output with JMESPath
  • --output table: Human-readable output
  • --no-cli-pager: Disable pager for scripting

Best Practices

Security

  • Never use root account for daily tasks
  • Enable MFA for all human users
  • Use roles instead of long-term access keys
  • Apply least privilege — grant only required permissions
  • Use conditions to restrict access by IP, time, or MFA
  • Rotate credentials regularly
  • Use permission boundaries for delegated administration

Policy Design

  • Start with AWS managed policies, customize as needed
  • Use policy variables (${aws:username}) for dynamic policies
  • Prefer explicit denies for sensitive actions
  • Group related permissions logically

Monitoring

  • Enable CloudTrail for API auditing
  • Use IAM Access Analyzer to identify overly permissive policies
  • Review credential reports regularly
  • Set up alerts for root account usage

Troubleshooting

Access Denied Errors

Symptom: AccessDeniedException or UnauthorizedAccess

Debug steps:

  1. Verify identity: aws sts get-caller-identity
  2. Check attached policies: aws iam list-attached-role-policies --role-name MyRole
  3. Simulate the action:
    bash
    1aws iam simulate-principal-policy \ 2 --policy-source-arn arn:aws:iam::123456789012:role/MyRole \ 3 --action-names dynamodb:GetItem \ 4 --resource-arns arn:aws:dynamodb:us-east-1:123456789012:table/MyTable
  4. Check for explicit denies in SCPs or permission boundaries
  5. Verify resource-based policies allow the principal

Role Cannot Be Assumed

Symptom: AccessDenied when calling AssumeRole

Causes:

  • Trust policy doesn't include the calling principal
  • Missing sts:AssumeRole permission on the caller
  • ExternalId mismatch (for cross-account roles)
  • Session duration exceeds maximum

Fix: Review and update the role's trust relationship.

Policy Size Limits

  • Managed policy: 6,144 characters
  • Inline policy: 2,048 characters (user), 10,240 characters (role/group)
  • Trust policy: 2,048 characters

Solution: Use multiple policies, reference resources by prefix/wildcard, or use tags-based access control.

References

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is iam?

Perfect for Cloud Security Agents needing advanced AWS Identity and Access Management (IAM) capabilities. The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app

How do I install iam?

Run the command: npx killer-skills add majiayu000/claude-skill-registry/iam. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for iam?

Key use cases include: Authenticating AWS API calls, Authorizing access to AWS resources, Troubleshooting IAM-related issues, Implementing best practices for IAM.

Which IDEs are compatible with iam?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for iam?

Requires AWS account and IAM setup. AWS-specific functionality.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add majiayu000/claude-skill-registry/iam. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use iam immediately in the current project.

Related Skills

Looking for an alternative to iam or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

149.6k
0
AI

flags

Logo of vercel
vercel

flags is a Next.js feature management skill that enables developers to efficiently add or modify framework feature flags, streamlining React application development.

138.4k
0
Browser

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI