我是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
下一步是什么?
答案 0 :(得分:0)
您可以在Python中使用Transact-SQLto Manage transparent data encryption:
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()
希望这会有所帮助。
答案 1 :(得分: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')
请找到文档here
答案 2 :(得分:-1)
database_settings = mssql_client.transparent_data_encryptions.create_or_update(
group_name, server_name, database_name,
status=TransparentDataEncryptionStatus.enabled)