Security Provisioner Tool documentation¶
Welcome to the Security Provisioner Tool documentation. This tool provides config-driven IAM provisioning for AWS — managing groups, roles, and policies via CloudFormation with tier-specific templates (startup/medium/enterprise).
📚 Getting Started (Read First)¶
- CLIENT_README
Quick start guide — Docker commands, volume mounts, directory setup, and common workflows.
- USER_GUIDE
Complete command reference — All 12 actions with Docker commands, volume mounts, configuration, deployment workflows, and best practices.
- TIER_COMPARISON
Tier comparison — Compare features across Startup-5, Medium-10, and Enterprise-12 tiers. Interactive tier filter.
- POLICY_GUIDE
Complete policy reference — All IAM policy levels for ECR, SageMaker, S3, Lambda, Bedrock, Pipeline, KMS, and Trusted Advisor. Includes JSON samples, action tables, and per-level explanations.
- ROLES_ARCHITECTURE
Roles and groups architecture — How groups, roles, and policies connect. Covers service roles, assumable roles, cross-account roles, and the assignment model.
📖 Core Documentation (Essential)¶
- NAMING_CONVENTIONS
Resource naming patterns — Naming rules for groups, roles, policies, stacks, and test resources. Includes tenant ID structure and examples.
- ASSUMABLE_ROLES_DESIGN
Assumable roles design — Design rationale for human-assumable roles with
sts:AssumeRoleand trust policies.- IAM_PERMISSIONS
IAM permissions reference — Required AWS permissions for operating the provisioner, scoped by action.
- APPLICATION_ARCHITECTURE
System architecture — Design decisions, component structure, CloudFormation implementation, and deployment patterns.
🔧 Operations¶
- UPDATE_PROCEDURES
Update and maintenance procedures — How to update Docker images, modify configurations, upgrade tiers, and maintain deployed infrastructure.
- COST_OPTIMIZATION
Cost optimization — IAM is free, tier value comparison, time savings analysis, and cost considerations for related services.
- PERFORMANCE_TUNING
Performance tuning — Deployment times by tier, IAM API rate limits, SSM parameter caching, and optimization strategies.
🔒 Security & Compliance¶
- SECURITY
Security policy — Known vulnerabilities, container security features, compliance, and incident response.
🐛 Troubleshooting and Support¶
- TROUBLESHOOTING
Troubleshooting guide — Common errors, IAM-specific issues, and advanced debugging.
- SUPPORT
Support information — How to get help, support channels, and what to include in support requests.
- FEEDBACK
Feedback and feature requests — Submit feature requests, vote on planned features, and provide documentation feedback.
📋 Reference¶
- RELEASE_NOTES
Release notes — Version history, features, and known issues.
- ROADMAP
Product roadmap — Planned features, enhancements, and items under consideration. Your feedback influences priorities.
- SAMPLE_REPORTS
Sample HTML reports — Example template, policies, and deployment reports generated by the SEC Provisioner.
📊 Advanced Topics¶
- APPLICATION_ARCHITECTURE
System architecture — Design decisions, component structure, CloudFormation implementation, and deployment patterns.
- INTEGRATION_EXAMPLES
Integration examples — Adding users, assuming roles, SageMaker/Lambda/CI-CD integration patterns.
- MIGRATION_GUIDE
Migration guide — Migrating from manual IAM setup, Terraform, or CDK to the SEC Provisioner. Includes tier upgrade paths.
🔌 API Reference¶
- api_reference
Auto-generated API documentation from source code docstrings.
📚 Getting Started:
- README
- User Guide
- Table of Contents
- Quick Start
- Pre-Deployment Checklist
- 1. Create Directories and Copy Documentation
- 2. Copy Master Config Template
- 3. Validate Configuration
- 4. Export and Review IAM Policy
- 5. Review Groups, Roles, and Policies
- 6. Generate and Validate Template
- 7. Test Deploy (Optional but Recommended)
- 8. Deploy to Production
- 9. Verify Deployment
- 10. Expected Output Files
- Security Scanning
- Configuration
- Commands Reference
- Command Summary
- Common Workflows
- Volume Mounts
- AWS Credentials
- Best Practices
- 1. Always Validate First
- 2. Export and Review Before Deploying
- 3. Test Deploy Before Production
- 4. Use show-changes Before Updating
- 5. Run Drift Detection Regularly
- 6. Follow Least Privilege
- 7. Protect the Platform Administrators Group
- 8. Use Assumable Roles for Cross-Function Access
- 9. Version Control Configurations
- 10. Separate Environments
- 11. Monitor Logs
- 12. Secure Cross-Account Roles
- Frequently Asked Questions
- Tier Comparison
- Policy Guide
- Table of Contents
- Overview
- Quick Reference
- S3 Policies
- ECR Policies
- Pipeline Policies
- Inference Policies
- KMS Policies
- Trusted Advisor Policies
- Combined Policies
- Assignment Recommendations
- Troubleshooting
- Common AccessDenied Scenarios
- “Access Denied when uploading to S3”
- “Access Denied when deleting S3 objects”
- “Access Denied when pushing to ECR”
- “Access Denied when invoking SageMaker endpoint”
- “Cannot authenticate to ECR”
- “Access Denied when starting or stopping a pipeline”
- “Access Denied when invoking a Lambda function”
- “Access Denied when deleting a Lambda function”
- “Access Denied when invoking a Bedrock foundation model”
- “Access Denied when creating or deleting a Bedrock guardrail”
- “Access Denied when creating provisioned throughput in Bedrock”
- “Access Denied when passing a role (PassRole)”
- “Action explicitly denied despite having Allow permissions”
- Common AccessDenied Scenarios
- Security Best Practices
- Getting Help
- Appendix: Policy Type Summary
- Roles Architecture
- Table of Contents
- Overview
- Architectural Decisions
- Architecture Overview
- Naming Conventions
- Config Schema Design
- CloudFormation Resource Generation
- Service Roles and Policy Assignments
- Implementation Plan
- v2 Roadmap
- Motivating Scenarios — Why Groups-Only Is Insufficient
- Why 1:1 Mapping Was Rejected
- References
📖 Core Documentation:
- Naming Conventions
- Assumable Roles Design
- IAM Permissions
🔧 Operations:
- Update Procedures
- Cost Optimization
- Performance Tuning Guide
🔒 Security & Compliance:
🐛 Troubleshooting and Support:
- Troubleshooting
- Table of Contents
- Quick Diagnostics
- Common Pitfalls
- Common Errors
- IAM-Specific Issues
- Performance Issues
- Advanced Troubleshooting
- Getting Help
- Support
- Feedback
📊 Advanced Topics:
- Application Architecture
- Integration Examples
- Migration Guide
- Table of Contents
- Migrating from Manual IAM Setup
- Step 1: Inventory Existing IAM Resources
- Step 2: Map to SEC Configuration
- Step 3: Choose Your Tier
- Step 4: Document User-to-Group Mappings
- Step 5: Validate Configuration
- Step 6: Export and Review
- Step 7: Test Deploy
- Step 8: Deploy Production
- Step 9: Re-Add Users to New Groups
- Step 10: Decommission Old IAM Resources
- Migrating from Terraform
- Migrating from AWS CDK
- Tier Migration
- Rollback Procedures
📋 Reference:
- Release Notes
- Roadmap
- Sample Reports
🔌 API Reference:
- API Reference
- Core Modules
- Configuration
- Utilities
- License
- CLI Interface
SecProvisionerCLISecProvisionerCLI.__init__()SecProvisionerCLI.is_action_required()SecProvisionerCLI.get_actions()SecProvisionerCLI.get_actions_help()SecProvisionerCLI.get_manager_class()SecProvisionerCLI.get_example_usage()SecProvisionerCLI.add_custom_arguments()SecProvisionerCLI.create_manager_instance()SecProvisionerCLI.requires_force()
main()
📖 Recommended Reading Order¶
For New Users¶
README - Quick start and Docker commands
Policy Guide - Policy levels and permissions
Roles Architecture - Architecture overview
Naming Conventions - Naming patterns
IAM Permissions - Required AWS permissions
For Developers¶
API Reference - Source code API