Skip to content

Commit 162d5a7

Browse files
add Security overview
1 parent b54e128 commit 162d5a7

File tree

2 files changed

+10
-35
lines changed

2 files changed

+10
-35
lines changed

articles/container-apps/TOC.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,9 @@
384384
displayName: Cross origin resource sharing
385385
- name: Security
386386
items:
387+
- name: Overview
388+
href: security.md
389+
displayName: Security overview
387390
- name: Configure WAF Application Gateway
388391
href: waf-app-gateway.md
389392
- name: Enable User Defined Routes (UDR)

articles/container-apps/security.md

Lines changed: 7 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@ services: container-apps
55
author: craigshoemaker
66
ms.service: azure-container-apps
77
ms.topic: conceptual
8-
ms.date: 07/16/2025
8+
ms.date: 07/17/2025
99
ms.author: cshoe
1010
---
1111

1212
# Security principles in Azure Container Apps
1313

14-
Azure Container Apps provides several built-in security features that help you build secure containerized applications. This article introduces the core security principles and capabilities available in Azure Container Apps.
14+
Azure Container Apps provides several built-in security features that help you build secure containerized applications. This guide explores key security principles, including managed identities, secrets management, and token store, while providing best practices to help you design secure and scalable applications.
1515

1616
## Managed identities
1717

18-
Managed identities eliminate the need to store credentials in your code or configuration by providing an automatically managed identity in Microsoft Entra ID. Container apps can use these identities to authenticate to any service that supports Microsoft Entra authentication, such as Azure Key Vault, Azure Storage, or Azure SQL Database.
18+
[Managed identities](managed-identity.md) eliminate the need to store credentials in your code or configuration by providing an automatically managed identity in Microsoft Entra ID. Container apps can use these identities to authenticate to any service that supports Microsoft Entra authentication, such as Azure Key Vault, Azure Storage, or Azure SQL Database.
1919

2020
### Types of managed identities
2121

@@ -44,23 +44,14 @@ Azure Container Apps supports two types of managed identities:
4444

4545
### Managed identity for image pulls
4646

47-
A common security pattern is using managed identities to pull images from private repositories in Azure Container Registry. This approach:
47+
A common security pattern is using [managed identities to pull images](managed-identity-image-pull.md) from private repositories in Azure Container Registry. This approach:
4848

4949
- Avoids using administrative credentials for the registry
5050
- Provides fine-grained access control through the ACRPull role
5151
- Supports both system-assigned and user-assigned identities
5252
- Can be controlled to limit access to specific containers
5353

54-
### Controlling managed identity access
55-
56-
Container Apps allows you to control which managed identities are available to different containers:
57-
58-
- **Init**: Available only to init containers
59-
- **Main**: Available only to main containers
60-
- **All**: Available to all containers (default)
61-
- **None**: Not available to any containers
62-
63-
This granular control follows the principle of least privilege, limiting potential attack vectors if a container is compromised.
54+
For more information, see [Managed identities](managed-identity.md) and [Image pull from Azure Container Registry with managed identity](managed-identity-image-pull.md) for more details on how to set up a managed identities for your application.
6455

6556
## Secrets management
6657

@@ -82,19 +73,7 @@ Azure Container Apps provides built-in mechanisms to securely store and access s
8273
- Use volume mounts to access secrets as files when appropriate
8374
- Implement proper secret rotation practices
8475

85-
### Key Vault integration
86-
87-
For production workloads, store secrets in Azure Key Vault and reference them from your container app:
88-
89-
1. Enable managed identity for your container app
90-
1. Grant the identity access to Key Vault secrets
91-
1. Reference the Key Vault secret URI in your container app configuration
92-
93-
This approach provides:
94-
95-
- Centralized secret management
96-
- Access control and audit logging
97-
- Automatic secret rotation
76+
For more information, see [Import certificates from Azure Key Vault](key-vault-certificates-manage.md) for more details on how to set up secrets management for your application.
9877

9978
## Token store for secure authentication
10079

@@ -107,14 +86,7 @@ The token store feature provides a secure way to manage authentication tokens in
10786
- Container Apps handles token refresh automatically
10887
- The feature reduces the attack surface by eliminating custom token management code
10988

110-
### Setting up token store
111-
112-
To enable token store:
113-
114-
1. Create a private blob container in Azure Storage
115-
1. Generate a SAS URL with read, write, and delete permissions
116-
1. Store the SAS URL as a secret in your container app
117-
1. Enable token store using the container app authentication configuration
89+
For more information, see [Enable an authentication token store](token-store.md) for more details on how to set up a token store for your application.
11890

11991
## Security architecture considerations
12092

0 commit comments

Comments
 (0)