Обновляет существующий средство защиты шифрования.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector/current?api-version=2025-01-01
Параметры URI
| Имя |
В |
Обязательно |
Тип |
Описание |
|
encryptionProtectorName
|
path |
True
|
EncryptionProtectorName
|
Имя извлекаемого предохранителя шифрования.
|
|
resourceGroupName
|
path |
True
|
string
minLength: 1 maxLength: 90
|
Имя группы ресурсов. Имя регистронезависимо.
|
|
serverName
|
path |
True
|
string
|
Имени сервера.
|
|
subscriptionId
|
path |
True
|
string
(uuid)
|
Идентификатор целевой подписки. Значение должно быть Универсальным Уникальным Идентификатором (UUID).
|
|
api-version
|
query |
True
|
string
minLength: 1
|
Версия API, используемая для данной операции.
|
Текст запроса
| Имя |
Обязательно |
Тип |
Описание |
|
properties.serverKeyType
|
True
|
ServerKeyType
|
Тип защиты шифрования, например ServiceManaged, AzureKeyVault.
|
|
properties.autoRotationEnabled
|
|
boolean
|
Флаг автоматического поворота клавиши. Значение true или false.
|
|
properties.serverKeyName
|
|
string
|
Имя ключа сервера.
|
Ответы
| Имя |
Тип |
Описание |
|
200 OK
|
EncryptionProtector
|
Операция обновления ресурса 'EncryptionProtector' была успешна
|
|
202 Accepted
|
|
Операция ресурса принята.
Заголовки
- Location: string
- Retry-After: integer
|
|
Other Status Codes
|
ErrorResponse
|
Непредвиденное сообщение об ошибке.
|
Безопасность
azure_auth
Поток OAuth2 в Azure Active Directory.
Тип:
oauth2
Flow:
implicit
URL-адрес авторизации:
https://login.microsoftonline.com/common/oauth2/authorize
Области
| Имя |
Описание |
|
user_impersonation
|
олицетворения учетной записи пользователя
|
Примеры
Update the encryption protector to key vault
Образец запроса
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current?api-version=2025-01-01
{
"properties": {
"autoRotationEnabled": false,
"serverKeyName": "someVault_someKey_01234567890123456789012345678901",
"serverKeyType": "AzureKeyVault"
}
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python encryption_protector_create_or_update_key_vault.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.encryption_protectors.begin_create_or_update(
resource_group_name="sqlcrudtest-7398",
server_name="sqlcrudtest-4645",
encryption_protector_name="current",
parameters={
"properties": {
"autoRotationEnabled": False,
"serverKeyName": "someVault_someKey_01234567890123456789012345678901",
"serverKeyType": "AzureKeyVault",
}
},
).result()
print(response)
# x-ms-original-file: 2025-01-01/EncryptionProtectorCreateOrUpdateKeyVault.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/EncryptionProtectorCreateOrUpdateKeyVault.json
// this example is just showing the usage of "EncryptionProtectors_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SqlServerResource created on azure
// for more information of creating SqlServerResource, please refer to the document of SqlServerResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "sqlcrudtest-7398";
string serverName = "sqlcrudtest-4645";
ResourceIdentifier sqlServerResourceId = SqlServerResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serverName);
SqlServerResource sqlServer = client.GetSqlServerResource(sqlServerResourceId);
// get the collection of this EncryptionProtectorResource
EncryptionProtectorCollection collection = sqlServer.GetEncryptionProtectors();
// invoke the operation
EncryptionProtectorName encryptionProtectorName = EncryptionProtectorName.Current;
EncryptionProtectorData data = new EncryptionProtectorData
{
ServerKeyName = "someVault_someKey_01234567890123456789012345678901",
ServerKeyType = SqlServerKeyType.AzureKeyVault,
IsAutoRotationEnabled = false,
};
ArmOperation<EncryptionProtectorResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, encryptionProtectorName, data);
EncryptionProtectorResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
EncryptionProtectorData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Пример ответа
{
"name": "current",
"type": "Microsoft.Sql/servers/encryptionProtector",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current",
"kind": "azurekeyvault",
"location": "West US",
"properties": {
"autoRotationEnabled": false,
"serverKeyName": "someVault_someKey_01234567890123456789012345678901",
"serverKeyType": "AzureKeyVault"
}
}
Update the encryption protector to key vault with versionless key
Образец запроса
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current?api-version=2025-01-01
{
"properties": {
"autoRotationEnabled": false,
"serverKeyName": "someVault_someKey",
"serverKeyType": "AzureKeyVault"
}
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python encryption_protector_create_or_update_key_vault_with_versionless_key.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.encryption_protectors.begin_create_or_update(
resource_group_name="sqlcrudtest-7398",
server_name="sqlcrudtest-4645",
encryption_protector_name="current",
parameters={
"properties": {
"autoRotationEnabled": False,
"serverKeyName": "someVault_someKey",
"serverKeyType": "AzureKeyVault",
}
},
).result()
print(response)
# x-ms-original-file: 2025-01-01/EncryptionProtectorCreateOrUpdateKeyVaultWithVersionlessKey.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/EncryptionProtectorCreateOrUpdateKeyVaultWithVersionlessKey.json
// this example is just showing the usage of "EncryptionProtectors_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SqlServerResource created on azure
// for more information of creating SqlServerResource, please refer to the document of SqlServerResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "sqlcrudtest-7398";
string serverName = "sqlcrudtest-4645";
ResourceIdentifier sqlServerResourceId = SqlServerResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serverName);
SqlServerResource sqlServer = client.GetSqlServerResource(sqlServerResourceId);
// get the collection of this EncryptionProtectorResource
EncryptionProtectorCollection collection = sqlServer.GetEncryptionProtectors();
// invoke the operation
EncryptionProtectorName encryptionProtectorName = EncryptionProtectorName.Current;
EncryptionProtectorData data = new EncryptionProtectorData
{
ServerKeyName = "someVault_someKey",
ServerKeyType = SqlServerKeyType.AzureKeyVault,
IsAutoRotationEnabled = false,
};
ArmOperation<EncryptionProtectorResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, encryptionProtectorName, data);
EncryptionProtectorResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
EncryptionProtectorData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Пример ответа
{
"name": "current",
"type": "Microsoft.Sql/servers/encryptionProtector",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current",
"kind": "azurekeyvault",
"location": "West US",
"properties": {
"autoRotationEnabled": false,
"keyVersion": "01234567890123456789012345678901",
"serverKeyName": "someVault_someKey",
"serverKeyType": "AzureKeyVault"
}
}
Update the encryption protector to service managed
Образец запроса
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current?api-version=2025-01-01
{
"properties": {
"serverKeyName": "ServiceManaged",
"serverKeyType": "ServiceManaged"
}
}
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python encryption_protector_create_or_update_service_managed.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.encryption_protectors.begin_create_or_update(
resource_group_name="sqlcrudtest-7398",
server_name="sqlcrudtest-4645",
encryption_protector_name="current",
parameters={"properties": {"serverKeyName": "ServiceManaged", "serverKeyType": "ServiceManaged"}},
).result()
print(response)
# x-ms-original-file: 2025-01-01/EncryptionProtectorCreateOrUpdateServiceManaged.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/EncryptionProtectorCreateOrUpdateServiceManaged.json
// this example is just showing the usage of "EncryptionProtectors_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SqlServerResource created on azure
// for more information of creating SqlServerResource, please refer to the document of SqlServerResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "sqlcrudtest-7398";
string serverName = "sqlcrudtest-4645";
ResourceIdentifier sqlServerResourceId = SqlServerResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serverName);
SqlServerResource sqlServer = client.GetSqlServerResource(sqlServerResourceId);
// get the collection of this EncryptionProtectorResource
EncryptionProtectorCollection collection = sqlServer.GetEncryptionProtectors();
// invoke the operation
EncryptionProtectorName encryptionProtectorName = EncryptionProtectorName.Current;
EncryptionProtectorData data = new EncryptionProtectorData
{
ServerKeyName = "ServiceManaged",
ServerKeyType = SqlServerKeyType.ServiceManaged,
};
ArmOperation<EncryptionProtectorResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, encryptionProtectorName, data);
EncryptionProtectorResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
EncryptionProtectorData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Пример ответа
{
"name": "current",
"type": "Microsoft.Sql/servers/encryptionProtector",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current",
"kind": "servicemanaged",
"location": "West US",
"properties": {
"serverKeyName": "ServiceManaged",
"serverKeyType": "ServiceManaged"
}
}
Определения
createdByType
Перечисление
Тип удостоверения, создавшего ресурс.
| Значение |
Описание |
|
User
|
|
|
Application
|
|
|
ManagedIdentity
|
|
|
Key
|
|
EncryptionProtector
Объект
Средство защиты шифрования сервера.
| Имя |
Тип |
Описание |
|
id
|
string
(arm-id)
|
Полный идентификатор ресурса для ресурса. Например, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
|
|
kind
|
string
|
Тип защиты шифрования. Это метаданные, используемые для работы с порталом Azure.
|
|
location
|
string
|
Расположение ресурса.
|
|
name
|
string
|
Имя ресурса
|
|
properties.autoRotationEnabled
|
boolean
|
Флаг автоматического поворота клавиши. Значение true или false.
|
|
properties.keyVersion
|
string
|
Версия ключа сервера, используемого в качестве протектора шифрования
|
|
properties.serverKeyName
|
string
|
Имя ключа сервера.
|
|
properties.serverKeyType
|
ServerKeyType
|
Тип защиты шифрования, например ServiceManaged, AzureKeyVault.
|
|
properties.subregion
|
string
|
Защита шифрования.
|
|
properties.thumbprint
|
string
|
Отпечаток ключа сервера.
|
|
properties.uri
|
string
|
Универсальный код ресурса (URI) ключа сервера.
|
|
systemData
|
systemData
|
Azure Resource Manager метаданные, содержащие информацию createdBy и modifiedBy.
|
|
type
|
string
|
Тип ресурса. Например, «Microsoft. Compute/virtualMachines» или «Microsoft. Аккаунты хранения/хранения»
|
EncryptionProtectorName
Перечисление
Имя извлекаемого предохранителя шифрования.
| Значение |
Описание |
|
current
|
текущий
|
ErrorAdditionalInfo
Объект
Ошибка управления ресурсами дополнительная информация.
| Имя |
Тип |
Описание |
|
info
|
object
|
Дополнительная информация.
|
|
type
|
string
|
Тип дополнительной информации.
|
ErrorDetail
Объект
Детали ошибки.
| Имя |
Тип |
Описание |
|
additionalInfo
|
ErrorAdditionalInfo[]
|
Ошибка дополнительная информация.
|
|
code
|
string
|
Код ошибки.
|
|
details
|
ErrorDetail[]
|
Сведения об ошибке.
|
|
message
|
string
|
Сообщение об ошибке.
|
|
target
|
string
|
Целевой объект ошибки.
|
ErrorResponse
Объект
Ответ на ошибку
ServerKeyType
Перечисление
Тип защиты шифрования, например ServiceManaged, AzureKeyVault.
| Значение |
Описание |
|
ServiceManaged
|
Управление сервисом
|
|
AzureKeyVault
|
AzureKeyVault
|
systemData
Объект
Метаданные, относящиеся к созданию и последнему изменении ресурса.
| Имя |
Тип |
Описание |
|
createdAt
|
string
(date-time)
|
Метка времени создания ресурса (UTC).
|
|
createdBy
|
string
|
Удостоверение, создающее ресурс.
|
|
createdByType
|
createdByType
|
Тип удостоверения, создавшего ресурс.
|
|
lastModifiedAt
|
string
(date-time)
|
Временная метка последнего изменения ресурса (UTC)
|
|
lastModifiedBy
|
string
|
Идентификатор, который последний раз изменил ресурс.
|
|
lastModifiedByType
|
createdByType
|
Тип удостоверения, который последний раз изменил ресурс.
|