Repository navigation
🚀 Release v1.1.0 - ABAC Conditions & Enhanced Drift Detection
✨ New Features
ABAC Condition Support
- Role assignments with conditions are now fully supported during import and ongoing management
- The
map.ps1script capturesconditionandconditionVersionfrom Azure role assignments - Terraform configuration updated to pass conditions through to the Azure module
Enhanced Drift Detection
- Two drift types detected:
Missing- Role assignments in Azure not managed by TerraformConditionMismatch- Role assignments where ABAC conditions differ between Azure and Terraform
- Remediation instructions included in drift reports for missing role assignments:
- Ready-to-use
import.tfblocks - JSON entries for
terraform.tfvars.json - Git workflow instructions
- Ready-to-use
PIM/JIT Exclusion
- Time-based (PIM) role assignments with expiration dates are automatically excluded from both mapping and drift detection
- Prevents false positives for just-in-time access assignments
🔧 Improvements
Migrated to Az PowerShell Module
- Drift detection now uses Az PowerShell cmdlets instead of Azure CLI
- Better integration with
Get-AzRoleAssignmentScheduleInstancefor PIM detection - GitHub workflow updated with Az module installation and authentication
Improved Drift Reports
- New table format with Drift Type and Condition columns
- Formatted JSON in remediation instructions for better readability
- Clear step-by-step instructions for importing missing role assignments
📝 Documentation
- Updated README with ABAC conditions examples
- Added drift detection explanation with drift types table
- Documented PIM exclusion behavior
Breaking Changes
None
Dependencies
- Requires Az PowerShell modules (
Az.Accounts,Az.Resources) for drift detection workflow