Skip to content

Simplify deployment: use app registration instead of managed identity#1

Merged
JacobWLMS merged 3 commits intomainfrom
claude/simplify-deploy-permissions-5J6Pk
Jan 27, 2026
Merged

Simplify deployment: use app registration instead of managed identity#1
JacobWLMS merged 3 commits intomainfrom
claude/simplify-deploy-permissions-5J6Pk

Conversation

@JacobWLMS
Copy link
Copy Markdown
Owner

  • Remove deployment script and user-assigned managed identity
  • Support client secret auth (AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID)
  • Simplify templates: just storage account, app service plan, function app
  • User uploads code manually via Deployment Center
  • Both ADX and Log Analytics backends updated

https://claude.ai/code/session_01BhLDKYffqvD2B2V71qLeV2

- Remove deployment script and user-assigned managed identity
- Support client secret auth (AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID)
- Simplify templates: just storage account, app service plan, function app
- User uploads code manually via Deployment Center
- Both ADX and Log Analytics backends updated

https://claude.ai/code/session_01BhLDKYffqvD2B2V71qLeV2
- BUGFIX: Function files now use get_ingestion_client() instead of
  hardcoded ADXClient, enabling Log Analytics backend to work
- Remove unused imports from shared/__init__.py (Protocol, KustoClient)
- Remove unused Config fields (dry_run, output_path)
- Move StringIO import to top level
- Delete obsolete Grant-AzureRoles.ps1 (no longer using managed identity RBAC)
- Update Grant-GraphPermissions.ps1 to work with both app registrations
  and managed identities, with backwards-compatible parameter aliases

https://claude.ai/code/session_01BhLDKYffqvD2B2V71qLeV2
- Simplify Bicep templates: credentials added manually after deployment
- Remove incomplete CosmosDB template (dead code)
- Use DRY pattern in Log Analytics template (table schemas reused)
- Update .env.example with correct variable names
- Clean up .bicepparam files

Deployment flow is now:
1. Deploy Bicep template (just baseName required)
2. Add credentials in portal: AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET
3. Grant Graph permissions + ADX Ingestor role (or DCR role for Log Analytics)
4. Upload code via Deployment Center

https://claude.ai/code/session_01BhLDKYffqvD2B2V71qLeV2
@JacobWLMS JacobWLMS merged commit 9813b37 into main Jan 27, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants