0

我是 Python 新手,我正在尝试编写一些小脚本来修复我的 Azure 环境。我正在尝试在 Azure SQL 数据库上测试启用 TDE,但我看不到任何示例代码来帮助我。

我是否使用该TransparentDataEncryptionStatus命令以正确的方式进行?我不确定从这里去哪里。

这是一个 Azure 函数

mssql_client = SqlManagementClient(credentials, sql_subscription)
database_settings = mssql_client.databases.create_or_update(sql_resource_group, sql_server, sql_db, TransparentDataEncryptionStatus 

接下来会发生什么?

4

3 回答 3

0

我是否使用 TransparentDataEncryptionStatus 命令以正确的方式进行?

是的!你在正确的轨道上。

create_or_update方法创建或更新数据库的透明数据加密配置。

我在您的代码中看到的唯一更改是正确传递 TDE,它应该如下所示:

database_settings = mssql_client.transparent_data_encryptions.create_or_update(sql_resource_group, sql_server, sql_db, status=TransparentDataEncryptionStatus.Enabled)

或者

 database_settings = mssql_client.transparent_data_encryptions.create_or_update(sql_resource_group, sql_server, sql_db, status='Enabled')

请在此处找到文档

于 2019-09-12T07:53:51.403 回答
0

您可以使用Transact-SQL在 Python 中管理透明数据加密:

 ALTER DATABASE [databasename] SET ENCRYPTION ON

这是示例代码:

import pyodbc
server = '<server>.database.windows.net'
database = '<database>'
username = '<username>'
password = '<password>'
driver= '{ODBC Driver 17 for SQL Server}'
cnxn = pyodbc.connect('DRIVER='+driver+';SERVER='+server+';PORT=1433;DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute('ALTER DATABASE [databasename] SET ENCRYPTION ON')
cnxn .commit()

希望这可以帮助。

于 2019-09-12T03:22:09.190 回答
-1
database_settings = mssql_client.transparent_data_encryptions.create_or_update(
    group_name, server_name, database_name,
    status=TransparentDataEncryptionStatus.enabled)
于 2020-06-24T08:46:40.713 回答