secure-defaults

Enforce managed identity, RBAC, and credential-free authentication in Azure project generation.

6|3|Updated Feb 9, 2026
One-click install
npx skills add https://github.com/jongio/azd-copilot --skill secure-defaults
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: secure-defaults
Source: https://github.com/jongio/azd-copilot/tree/main/cli/src/internal/assets/skills/secure-defaults
Command: npx skills add https://github.com/jongio/azd-copilot --skill secure-defaults

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill ensures that all Azure resources and application code generated adhere to mandatory security best practices, preventing common insecure configurations.

Core Features & Use Cases

  • Mandatory Security Rules: Enforces managed identity, RBAC, and credential-free authentication.
  • Overrides Insecure Patterns: Actively prevents the use of connection strings, account keys, and admin passwords.
  • Use Case: When generating Bicep for a new web application, this skill automatically configures System-Assigned Managed Identity for the App Service and assigns the necessary RBAC roles for Cosmos DB access, overriding any default insecure patterns.

Quick Start

Use the secure-defaults skill to ensure all generated Bicep infrastructure follows mandatory security rules.

Frequently Asked Questions about secure-defaults

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce managed identity and RBAC in Azure Bicep templates?

This Skill enforces mandatory security rules for Azure project creation by prioritizing managed identity, RBAC role assignments, and credential-free authentication, actively overriding insecure patterns like connection strings, account keys, and admin passwords.

How do I prevent connection strings and account keys in generated Azure SDK code?

To prevent connection strings and account keys in Azure SDK code, enforce credential-free authentication patterns that override upstream insecure service references. This ensures all generated application code adheres to mandatory security best practices using managed identities.

Does secure-defaults work with existing Azure agents for Bicep generation?

Yes, secure-defaults is invoked automatically by azure-manager, azure-architect, and azure-dev agents during Bicep generation and SDK code generation to ensure every new Azure project adheres to mandatory security configurations.

What is the best way to apply credential-free authentication across new Azure projects?

The best way to apply credential-free authentication across new Azure projects is to enforce mandatory security rules that prioritize managed identity and RBAC role assignments, actively preventing the use of connection strings, account keys, and admin passwords.

Why does my Azure Bicep deployment still use admin passwords and access keys?

Your Azure Bicep deployment might use admin passwords and access keys due to default insecure patterns from upstream service references. Enforcing mandatory security rules overrides these patterns to ensure managed identity and RBAC are used instead.