|
| 1 | +--- |
| 2 | +applyTo: "articles/key-vault/managed-hsm/**" |
| 3 | +--- |
| 4 | + |
| 5 | +# Azure Key Vault Managed HSM (MHSM) docset context |
| 6 | + |
| 7 | +## Scope |
| 8 | + |
| 9 | +The Managed HSM docset covers **Azure Key Vault Managed HSM**, a fully managed, single-tenant, FIPS 140-3 Level 3 validated HSM service. It supports only cryptographic key operations (no secrets or certificates). |
| 10 | + |
| 11 | +Key content areas: |
| 12 | +- Provisioning and quickstarts (CLI, PowerShell, ARM template, SDK) |
| 13 | +- Key management, rotation, and BYOK import |
| 14 | +- Access control (local RBAC, built-in roles, security domain) |
| 15 | +- Networking (private endpoints, IP firewall, network security) |
| 16 | +- Monitoring and logging (Azure Monitor, Sentinel, alerts) |
| 17 | +- Disaster recovery, backup/restore, multi-region replication |
| 18 | +- Compliance (key attestation, firmware updates, control-your-data) |
| 19 | + |
| 20 | +## Relationship to Azure Key Vault |
| 21 | + |
| 22 | +Managed HSM is **physically** a subdirectory of `articles/key-vault/` but is **logically a peer service**, not a subservice: |
| 23 | + |
| 24 | +- The MHSM engineering and PM team is **completely separate** from the AKV vault team. |
| 25 | +- MHSM shares `ms.service: azure-key-vault` with `ms.subservice: managed-hsm` only for historical/organizational reasons. |
| 26 | +- **Long-term goal**: Fully divorce the MHSM docset from AKV so it has zero dependencies on `general/`, `secrets/`, `keys/`, or `certificates/`. |
| 27 | + |
| 28 | +### Current cross-references into AKV (coupling to unwind) |
| 29 | + |
| 30 | +There are currently ~19 references from MHSM articles into AKV content: |
| 31 | + |
| 32 | +| AKV target | MHSM files referencing it | Count | Notes | |
| 33 | +|---|---|---|---| |
| 34 | +| `general/monitor-key-vault-reference.md` | `logging-azure-monitor.md`, `configure-alerts.md`, `sentinel.md` | ~11 | Heaviest dependency — monitoring data reference | |
| 35 | +| `general/` (other) | `index.yml`, `key-management.md`, `role-management.md`, `access-control.md` | ~5 | RBAC guide, developers guide, quickstart comparisons | |
| 36 | +| `keys/` | `overview.md`, `mhsm-control-data.md`, `key-management.md` | ~3 | Key types, BYOK, policy grammar | |
| 37 | +| `secrets/`, `certificates/` | (none) | 0 | No coupling | |
| 38 | + |
| 39 | +When editing MHSM content, prefer self-contained content or links to Azure-wide docs (e.g., Azure Monitor, Azure RBAC) over links into the AKV docset. Each cross-reference removed moves toward the divorce goal. |
| 40 | + |
| 41 | +### Guidelines |
| 42 | + |
| 43 | +- **Do not** assume MHSM and AKV vault share the same features, limits, or behavior. MHSM is keys-only, uses local RBAC (not vault access policies), and has different service limits. |
| 44 | +- **Do not** sweep MHSM into bulk AKV changes unless explicitly requested. |
| 45 | +- When told to work on "Key Vault docs," **assume MHSM is excluded** unless specifically mentioned. |
| 46 | +- MHSM has its own security baseline, its own soft-delete behavior, and its own network security model. |
| 47 | + |
| 48 | +## Authorization model |
| 49 | + |
| 50 | +MHSM uses **local RBAC only** (not Azure RBAC for data plane, not vault access policies): |
| 51 | +- Built-in roles: Managed HSM Administrator, Managed HSM Crypto Officer, Managed HSM Crypto User, and others |
| 52 | +- Role assignments are scoped to the HSM instance or individual keys |
| 53 | +- Azure Resource Manager authorization can be optionally enabled for management operations (see `authorize-azure-resource-manager.md`) |
| 54 | + |
| 55 | +This is fundamentally different from AKV vault authorization. Do not conflate the two. |
| 56 | + |
| 57 | +## Docset structure and key articles |
| 58 | + |
| 59 | +### Core conceptual articles |
| 60 | + |
| 61 | +- **overview.md** — Product overview: FIPS 140-3, BYOK, single-tenant isolation |
| 62 | +- **managed-hsm-technical-details.md** — Deep technical: key sovereignty, TEE architecture, Intel SGX, confidential computing |
| 63 | +- **mhsm-control-data.md** — Customer control narrative, encryption models, portfolio positioning vs Standard/Premium vaults |
| 64 | +- **access-control.md** — Dual-plane model (control vs data plane), local RBAC fundamentals |
| 65 | +- **security-domain.md** — Cryptographic ownership, Shamir Secret Sharing, DR foundation. **Most-linked article** (referenced by 11 files) |
| 66 | + |
| 67 | +### Content by theme |
| 68 | + |
| 69 | +| Theme | Articles | |
| 70 | +|---|---| |
| 71 | +| **Provisioning** | `quick-create-cli.md`, `quick-create-powershell.md`, `quick-create-template.md` | |
| 72 | +| **SDK quickstarts** | `quickstart-dotnet.md` (.NET 6+), `quickstart-python.md` (3.8+), `quickstart-javascript.md` (Node 18+) | |
| 73 | +| **Key management** | `key-management.md`, `key-rotation.md`, `key-attestation.md`, `hsm-protected-keys-byok.md` | |
| 74 | +| **Access control** | `access-control.md`, `built-in-roles.md`, `role-management.md`, `how-to-secure-access.md`, `authorize-azure-resource-manager.md` | |
| 75 | +| **Networking** | `network-security.md`, `configure-network-security.md` (IP firewall, preview), `private-link.md` | |
| 76 | +| **Monitoring** | `logging.md` (storage-based), `logging-azure-monitor.md`, `configure-alerts.md`, `sentinel.md`, `azure-policy.md` (preview) | |
| 77 | +| **DR & recovery** | `backup-restore.md`, `disaster-recovery-guide.md`, `multi-region-replication.md`, `recovery.md`, `soft-delete-overview.md` | |
| 78 | +| **Security** | `secure-managed-hsm.md` (best practices, ai-assisted), `security-domain.md` | |
| 79 | +| **Compliance** | `firmware-update.md`, `mhsm-control-data.md`, `key-attestation.md` | |
| 80 | +| **Advanced** | `tls-offload-library.md`, `third-party-solutions.md`, `scaling-guidance.md`, `policy-grammar.md` | |
| 81 | + |
| 82 | +### Reusable includes |
| 83 | + |
| 84 | +MHSM uses shared includes from `~/reusable-content/` and local includes: |
| 85 | +- `managed-hsm/intro.md` (5 quickstarts) |
| 86 | +- `managed-hsm/sdk-prerequisites.md` (3 SDK quickstarts) |
| 87 | +- `managed-hsm/cleanup-warning.md` (6 files) |
| 88 | +- `managed-hsm/security-domain-storage.md` (2 files) |
| 89 | +- `managed-hsm/cli-sign-in.md` (4 files) |
| 90 | + |
| 91 | +## Known limitations and gotchas |
| 92 | + |
| 93 | +These are important constraints documented across the docset: |
| 94 | + |
| 95 | +- **Key version hard limit: 100 per key** — rotation counts toward this; no recovery if limit reached |
| 96 | +- **Replication latency: up to 6 minutes** for cross-region writes (multi-region-replication.md) |
| 97 | +- **RSA 1024-bit import NOT supported** — 2048+ required |
| 98 | +- **Luna HSM RSA 4K** requires firmware 7.4.0+ |
| 99 | +- **Event Grid notifications NOT supported** for Managed HSM (unlike AKV vaults) |
| 100 | +- **IP Network Firewall** is in preview, max 10 CIDR ranges |
| 101 | +- **Azure Policy integration** is preview with 30-minute enforcement delay |
| 102 | +- **Immutability policies NOT supported** on backup storage accounts |
| 103 | + |
| 104 | +## Known documentation debt |
| 105 | + |
| 106 | +- **Monitoring fragmentation**: Logging split across `logging.md` (storage-based) and `logging-azure-monitor.md` with unclear delineation |
| 107 | +- **RBAC scattered across 4 articles**: Users must read access-control + built-in-roles + role-management + how-to-secure-access for full picture |
| 108 | +- **BYOK guidance spread** across 4+ files with no central decision flowchart |
| 109 | +- **Recovery/soft-delete overlap**: `recovery.md` and `soft-delete-overview.md` cover similar ground |
| 110 | +- **REST API versions undocumented**: No explicit api-version strings in articles |
| 111 | + |
| 112 | +## Compliance and hardware |
| 113 | + |
| 114 | +- **FIPS 140-3 Level 3** validated (Marvell LiquidSecurity HSM Adapter) |
| 115 | +- **NIST SP 800-57 Part 1** — 2-year key rotation recommendation |
| 116 | +- ISO 270x, SOC 1/2/3, FedRAMP-High, PCI |
| 117 | +- SLA: 99.99% for multi-region configurations |
| 118 | + |
| 119 | +## Audit history |
| 120 | + |
| 121 | +| PR | Date | Summary | |
| 122 | +|---|---|---| |
| 123 | +| #2707 | April 2026 | Added Cloud HSM Event Hub tutorial (related service, not MHSM directly) | |
| 124 | + |
| 125 | +## Article count (as of April 2026) |
| 126 | + |
| 127 | +39 markdown articles plus `index.yml` and `toc.yml` |
0 commit comments