Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content

Commit 0fabaa2

Browse files
committed
Merge branch 'main' into shwetasohu_update_per_AB#168909
# Conflicts: # docs/relational-databases/sql-server-transaction-log-architecture-and-management-guide.md
2 parents ac0859b + d33bfd1 commit 0fabaa2

14,749 files changed

Lines changed: 30702 additions & 38259 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

azure-sql/database/data-discovery-and-classification-overview.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ An important aspect of the classification is the ability to monitor access to se
150150
These are the activities that are actually auditable with sensitivity information:
151151
- ALTER TABLE ... DROP COLUMN
152152
- BULK INSERT
153+
- SELECT
153154
- DELETE
154155
- INSERT
155156
- MERGE

azure-sql/database/high-availability-sla.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ The zone-redundant version of the high availability architecture is illustrated
9191

9292
> [!IMPORTANT]
9393
> - This feature is currently in preview for SQL Managed Instance, and only available on the Business Critical service tier. In SQL Database, when using the Business Critical tier, zone-redundant configuration is only available when the Gen5 hardware is selected. For up to date information about the regions that support zone-redundant databases, see [Services support by region](/azure/availability-zones/az-region).
94-
> - For zone redundant availability, choosing a [maintenance window](/azure/azure-sql/database/maintenance-window) other than the default is currently available in [select regions](maintenance-window.md#azure-region-support).
94+
> - For zone redundant availability, choosing a [maintenance window](./maintenance-window.md) other than the default is currently available in [select regions](maintenance-window.md#azure-region-support).
9595
9696
### Supported regions for SQL MI zone redundancy
9797

@@ -138,7 +138,7 @@ Consider the following limitations:
138138
> At least 1 high availability compute replica and the use of zone-redundant or geo-zone-redundant backup storage is required for enabling the zone redundant configuration for Hyperscale.
139139
140140
> [!IMPORTANT]
141-
> For zone redundant availability, choosing a [maintenance window](/azure/azure-sql/database/maintenance-window) other than the default is currently available in [select regions](maintenance-window.md#azure-region-support).
141+
> For zone redundant availability, choosing a [maintenance window](./maintenance-window.md) other than the default is currently available in [select regions](maintenance-window.md#azure-region-support).
142142
143143

144144
### Create a zone redundant Hyperscale database
@@ -283,4 +283,4 @@ Azure SQL Database and Azure SQL Managed Instance feature a built-in high availa
283283
- Learn about [Service Fabric](/azure/service-fabric/service-fabric-overview)
284284
- Learn about [Azure Traffic Manager](/azure/traffic-manager/traffic-manager-overview)
285285
- Learn [How to initiate a manual failover on SQL Managed Instance](../managed-instance/user-initiated-failover.md)
286-
- For more options for high availability and disaster recovery, see [Business Continuity](business-continuity-high-availability-disaster-recover-hadr-overview.md)
286+
- For more options for high availability and disaster recovery, see [Business Continuity](business-continuity-high-availability-disaster-recover-hadr-overview.md)

azure-sql/database/resource-limits-vcore-single-databases.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: This page describes some common vCore resource limits for a single
44
author: dimitri-furman
55
ms.author: dfurman
66
ms.reviewer: wiassaf, mathoma
7-
ms.date: 09/30/2022
7+
ms.date: 11/18/2022
88
ms.service: sql-database
99
ms.subservice: service-overview
1010
ms.topic: reference
@@ -64,7 +64,7 @@ The [serverless compute tier](serverless-tier-overview.md) is currently availabl
6464
|Columnstore support|Yes <sup>1</sup>|Yes|Yes|Yes|Yes|
6565
|In-memory OLTP storage (GB)|N/A|N/A|N/A|N/A|N/A|
6666
|Max data size (GB)|512|1024|1024|1024|2048|
67-
|Max log size (GB) <sup>2</sup>|154|307|307|307|461|
67+
|Max log size (GB) <sup>2</sup>|154|307|307|307|614|
6868
|Tempdb max data size (GB)|32|64|128|192|256|
6969
|Storage type|Remote SSD|Remote SSD|Remote SSD|Remote SSD|Remote SSD|
7070
|Read IO latency (approximate)|5-10 ms|5-10 ms|5-10 ms|5-10 ms|5-10 ms|
@@ -98,7 +98,7 @@ The [serverless compute tier](serverless-tier-overview.md) is currently availabl
9898
|Columnstore support|Yes|Yes|Yes|Yes|Yes|
9999
|In-memory OLTP storage (GB)|N/A|N/A|N/A|N/A|N/A|
100100
|Max data size (GB)|2048|3072|3072|3072|3072|
101-
|Max log size (GB) <sup>1</sup>|461|461|461|922|922|
101+
|Max log size (GB) <sup>1</sup>|614|922|922|922|922|
102102
|Tempdb max data size (GB)|320|384|448|512|576|
103103
|Storage type|Remote SSD|Remote SSD|Remote SSD|Remote SSD|Remote SSD|
104104
|Read IO latency (approximate)|5-10 ms|5-10 ms|5-10 ms|5-10 ms|5-10 ms|
@@ -272,7 +272,7 @@ The [serverless compute tier](serverless-tier-overview.md) is currently availabl
272272
|Columnstore support|Yes|Yes|Yes|Yes|Yes|Yes|Yes|
273273
|In-memory OLTP storage (GB)|N/A|N/A|N/A|N/A|N/A|N/A|N/A|
274274
|Max data size (GB)|1024|1024|1536|2048|2048|3072|3072|
275-
|Max log size (GB) <sup>1</sup>|307|307|461|461|461|922|922|
275+
|Max log size (GB) <sup>1</sup>|307|307|461|614|614|922|922|
276276
|Tempdb max data size (GB)|64|128|192|256|320|384|384|
277277
|Storage type|Remote SSD|Remote SSD|Remote SSD|Remote SSD|Remote SSD|Remote SSD|Remote SSD|
278278
|Read IO latency (approximate)|5-10 ms|5-10 ms|5-10 ms|5-10 ms|5-10 ms|5-10 ms|5-10 ms|
@@ -433,7 +433,7 @@ The [serverless compute tier](serverless-tier-overview.md) is currently availabl
433433
|Columnstore support|Yes|Yes|Yes|Yes|Yes|Yes|Yes|
434434
|In-memory OLTP storage (GB)|1.57|3.14|4.71|6.28|8.65|11.02|13.39|
435435
|Max data size (GB)|1024|1024|1536|2048|2048|3072|3072|
436-
|Max log size (GB) <sup>1</sup>|307|307|461|461|461|922|922|
436+
|Max log size (GB) <sup>1</sup>|307|307|461|614|614|922|922|
437437
|Tempdb max data size (GB)|64|128|192|256|320|384|448|
438438
|[Max local storage size](resource-limits-logical-server.md#storage-space-governance) (GB)|4829|4829|4829|4829|4829|4829|4829|
439439
|Storage type|Local SSD|Local SSD|Local SSD|Local SSD|Local SSD|Local SSD|Local SSD|
Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,27 @@
11
---
2-
title: Customer-managed transparent data encryption using user-assigned managed identity
2+
title: Customer-managed keys with transparent data encryption using user-assigned managed identity
33
description: Bring Your Own Key (BYOK) support for transparent data encryption (TDE) using user-assigned managed identity (UMI)
4-
author: rwestMSFT
5-
ms.author: randolphwest
4+
author: GithubMirek
5+
ms.author: mireks
66
ms.reviewer: vanto
7-
ms.date: 12/16/2021
7+
ms.date: 11/22/2022
88
ms.service: sql-db-mi
99
ms.subservice: security
1010
ms.topic: conceptual
1111
monikerRange: "= azuresql || = azuresql-db || = azuresql-mi"
1212
---
1313

14-
# Managed identities for transparent data encryption with BYOK
14+
# Managed identities for transparent data encryption with customer-managed key
1515
[!INCLUDE[appliesto-sqldb-sqlmi](../includes/appliesto-sqldb-sqlmi.md)]
1616

17-
> [!NOTE]
18-
> Assigning a user-assigned managed identity for Azure SQL logical servers and Managed Instances is in **public preview**.
19-
20-
Managed identities in Azure Active Directory (Azure AD) provide Azure services with an automatically managed identity in Azure AD. This identity can be used to authenticate to any service that supports Azure AD authentication, such as [Azure Key Vault](/azure/key-vault/general/overview), without any credentials in the code. For more information, see [Managed identity types](/azure/active-directory/managed-identities-azure-resources/overview#managed-identity-types) in Azure.
17+
Managed identities in Azure Active Directory (Azure AD) provide Azure services with an automatically managed identity in Azure AD. This identity can be used to authenticate to any service that supports Azure AD authentication, such as [Azure Key Vault](/azure/key-vault/general/overview), without any credentials in the code. For more information, see [Managed identity types](/azure/active-directory/managed-identities-azure-resources/overview#managed-identity-types) in Azure.
2118

2219
Managed Identities can be of two types:
2320

2421
- **System-assigned**
2522
- **User-assigned**
2623

27-
Enabling system-assigned managed identity for Azure SQL logical servers and Managed Instances are already supported today. [Assigning user-assigned managed identity](authentication-azure-ad-user-assigned-managed-identity.md) to the server is now in public preview.
24+
For more information, see [Managed identities in Azure AD for Azure SQL](authentication-azure-ad-user-assigned-managed-identity.md).
2825

2926
For [TDE with customer-managed key (CMK)](transparent-data-encryption-byok-overview.md) in Azure SQL, a managed identity on the server is used for providing access rights to the server on the key vault. For instance, the system-assigned managed identity of the server should be provided with [key vault permissions](transparent-data-encryption-byok-overview.md#how-customer-managed-tde-works) prior to enabling TDE with CMK on the server.
3027

@@ -41,29 +38,34 @@ In addition to the system-assigned managed identity that is already supported fo
4138

4239
- Enables the same user-assigned managed identity to be assigned to multiple servers, eliminating the need to individually turn on system-assigned managed identity for each Azure SQL logical server or managed instance, and providing it access to key vault
4340

44-
- Provides the capability to enforce CMK at server or database creation time with an available built-in Azure policy
41+
- Provides the capability to enforce CMK at server creation time with an available built-in Azure policy
4542

4643
## Considerations while using UMI for customer-managed TDE
4744

4845
- By default, TDE in Azure SQL uses the primary user-assigned managed identity set on the server for key vault access. If no user-assigned identities have been assigned to the server, then the system-assigned managed identity of the server is used for key vault access.
49-
- When using the system-assigned managed identity for TDE with CMK, no user-assigned managed identities should be assigned to the server
5046
- When using a user-assigned managed identity for TDE with CMK, assign the identity to the server and set it as the primary identity for the server
51-
- The primary user-assigned managed identity requires continuous key vault access (*get, wrapKey, unwrapKey* permissions). If the identity's access to key vault is revoked or sufficient permissions are not provided, the database will move to *Inaccessible* state
47+
- The primary user-assigned managed identity requires continuous key vault access (*get, wrapKey, unwrapKey* permissions). If the identity's access to key vault is revoked or sufficient permissions aren't provided, the database will move to *Inaccessible* state
5248
- If the primary user-assigned managed identity is being updated to a different user-assigned managed identity, the new identity must be given required permissions to the key vault prior to updating the primary
5349
- To switch the server from user-assigned to system-assigned managed identity for key vault access, provide the system-assigned managed identity with the required key vault permissions, then remove all user-assigned managed identities from the server
5450

55-
> [!Important]
51+
> [!IMPORTANT]
5652
> The primary user-assigned managed identity being used for TDE with CMK should not be deleted from Azure. Deleting this identity will lead to the server losing access to key vault and databases becoming *inaccessible*.
57-
53+
5854
## Limitations and known issues
5955

60-
- If the key vault is behind a VNet, a user-assigned managed identity cannot be used with customer-managed TDE. A system-assigned managed identity must be used in this case. A user-assigned managed identity can only be used when the key vault is not behind a VNet.
61-
- When multiple user-assigned managed identities are assigned to the server or managed instance, if a single identity is removed from the server using the *Identity* blade of the Azure Portal, the operation succeeds but the identity does not get removed from the server. Removing all user-assigned managed identities together from the Azure portal works successfully.
62-
- When the server or managed instance is configured with customer-managed TDE and both system-assigned and user-assigned managed identities are enabled on the server, removing the user-assigned managed identities from the server without first giving the system-assigned managed identity access to the key vault results in an *Unexpected error occurred* message. Ensure the system-assigned managed identity has been provided key vault access prior to removing the primary user-assigned managed identity (and any other user-assigned managed identities) from the server.
56+
- If the key vault is behind a VNet that uses a firewall, the option to **Allow Trusted Microsoft Services to bypass this firewall** must be enabled in the key vault's **Networking** menu if you want to use a user-assigned managed identity. Once this option is enabled, available keys can't be listed in the SQL server TDE menu in the Azure portal. To set an individual CMK, a *key identifier* must be used. When the option to **Allow Trusted Microsoft Services to bypass this firewall** isn't enabled, the following error is returned:
57+
- `The managed identity with ID '/subscriptions/subsriptionID/resourcegroups/resource_name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/umi_name' requires the following Azure Key Vault permissions: 'Get, WrapKey, UnwrapKey' to the key 'https://keyvault_name/keys/key_name'. Please grant the missing permissions to the identity. (https://aka.ms/sqltdebyokcreateserver).`
58+
- If you get the above error, check if the key vault is behind a virtual network or firewall, and make sure the option **Allow Trusted Microsoft Services to bypass this firewall** is enabled.
59+
- A system-assigned managed identity can be used without the option to **Allow Trusted Microsoft Services to bypass this firewall** enabled. For more information, see [Configure Azure Key Vault firewalls and virtual networks](/azure/key-vault/general/network-security).
6360
- User Assigned Managed Identity for SQL Managed Instance is currently not supported when AKV firewall is enabled.
64-
61+
- When multiple user-assigned managed identities are assigned to the server or managed instance, if a single identity is removed from the server using the *Identity* blade of the Azure portal, the operation succeeds but the identity doesn't get removed from the server. Removing all user-assigned managed identities together from the Azure portal works successfully.
62+
- When the server or managed instance is configured with customer-managed TDE and both system-assigned and user-assigned managed identities are enabled on the server, removing the user-assigned managed identities from the server without first giving the system-assigned managed identity access to the key vault results in an *Unexpected error occurred* message. Ensure the system-assigned managed identity has been provided key vault access prior to removing the primary user-assigned managed identity (and any other user-assigned managed identities) from the server.
6563

6664
## Next steps
6765

6866
> [!div class="nextstepaction"]
6967
> [Create Azure SQL database configured with user-assigned managed identity and customer-managed TDE](transparent-data-encryption-byok-create-server.md)
68+
69+
## See also
70+
71+
- [Create an Azure SQL Managed Instance with a user-assigned managed identity](/azure/azure-sql/managed-instance/authentication-azure-ad-user-assigned-managed-identity-create-managed-instance)

azure-sql/database/transparent-data-encryption-byok-overview.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Bring Your Own Key (BYOK) support for transparent data encryption (
55
author: GithubMirek
66
ms.author: mireks
77
ms.reviewer: wiassaf, vanto, mathoma
8-
ms.date: 10/17/2022
8+
ms.date: 11/21/2022
99
ms.service: sql-db-mi
1010
ms.subservice: security
1111
ms.topic: conceptual
@@ -79,7 +79,7 @@ Auditors can use Azure Monitor to review key vault AuditEvent logs, if logging i
7979
- Grant the server or managed instance access to the key vault (*get*, *wrapKey*, *unwrapKey*) using its Azure Active Directory identity. The server identity can be a system-assigned managed identity or a user-assigned managed identity assigned to the server. When using the Azure portal, the Azure AD identity gets automatically created when the server is created. When using PowerShell or Azure CLI, the Azure AD identity must be explicitly created and should be verified. See [Configure TDE with BYOK](transparent-data-encryption-byok-configure.md) and [Configure TDE with BYOK for SQL Managed Instance](../managed-instance/scripts/transparent-data-encryption-byok-powershell.md) for detailed step-by-step instructions when using PowerShell.
8080
- Depending on the permission model of the key vault (access policy or Azure RBAC), key vault access can be granted either by creating an access policy on the key vault, or by creating a new Azure RBAC role assignment with the role [Key Vault Crypto Service Encryption User](/azure/key-vault/general/rbac-guide#azure-built-in-roles-for-key-vault-data-plane-operations).
8181

82-
- When using firewall with AKV, you must enable option *Allow trusted Microsoft services to bypass the firewall*.
82+
- When using a firewall with AKV, you must enable the option **Allow trusted Microsoft services to bypass the firewall**. For more information, see [Configure Azure Key Vault firewalls and virtual networks](/azure/key-vault/general/network-security).
8383

8484
### Enable soft-delete and purge protection for AKV
8585

@@ -198,21 +198,21 @@ Learn more about [the common causes for database to become inaccessible](/sql/re
198198

199199
### Blocked connectivity between SQL Managed Instance and Key Vault
200200

201-
On SQL Managed Instance, network errors while trying to access TDE protector in Azure Key Vault may not cause the databases to change its state to *Inaccessible* but will render the instance unavailable afterwards. This happens mostly when the key vault resource exists but it's endpoint cannot be reached from the managed instance. All scenarios where the key vault endpoint can be reached but connection is denied, missing permissions, etc., will cause the databases to change its state to *Inaccessible*.
201+
On SQL Managed Instance, network errors while trying to access TDE protector in Azure Key Vault may not cause the databases to change its state to *Inaccessible* but will render the instance unavailable afterwards. This happens mostly when the key vault resource exists but its endpoint can't be reached from the managed instance. All scenarios where the key vault endpoint can be reached but connection is denied, missing permissions, etc., will cause the databases to change its state to *Inaccessible*.
202202

203203
The most common causes for lack of networking connectivity to Key Vault are:
204204

205-
- Key Vault is exposed via private endpoint and the private IP address of the AKV service is not allowed in the outbound rules of the Network Security Group (NSG) associated with the managed instance subnet.
206-
- Bad DNS resolution, like when the key vault FQDN is not resolved or resolves to an invalid IP address.
205+
- Key Vault is exposed via private endpoint and the private IP address of the AKV service isn't allowed in the outbound rules of the Network Security Group (NSG) associated with the managed instance subnet.
206+
- Bad DNS resolution, like when the key vault FQDN isn't resolved or resolves to an invalid IP address.
207207

208208
[Test the connectivity](https://techcommunity.microsoft.com/t5/azure-sql-blog/how-to-test-tcp-connectivity-from-a-sql-managed-instance/ba-p/3058458) from SQL Managed Instance to the Key Vault hosting the TDE protector.
209209

210210
- The endpoint is your vault FQDN, like *<vault_name>.vault.azure.net* (without the https://).
211211
- The port to be tested is 443.
212212
- The result for RemoteAddress should exist and be the correct IP address
213-
- The result for TCP test should be *TcpTestSucceeded : True*.
213+
- The result for TCP test should be *TcpTestSucceeded: True*.
214214

215-
In case the test returns *TcpTestSucceeded : False*, review the networking configuration:
215+
In case the test returns *TcpTestSucceeded: False*, review the networking configuration:
216216

217217
- Check the resolved IP address, confirm it's valid. A missing value means there's issues with DNS resolution.
218218
- Confirm that the network security group on the managed instance has an **outbound** rule that covers the resolved IP address on port 443, especially when the resolved address belongs to the key vault's private endpoint.

azure-sql/includes/appliesto-sqlserver-sqldb-sqlmi-asvm.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
author: rwestMSFT
33
ms.author: randolphwest
44
ms.date: 09/09/2022
5-
ms.service: sql-server
5+
ms.service: sql
66
ms.topic: include
77
---
88

0 commit comments

Comments
 (0)