使用 KeyVaultClient 在 Azure KeyVault 密钥上定义策略
Define Policy on Azure KeyVault Key using KeyVaultClient
我需要帮助来为 Azure KeyVault 密钥(非秘密)定义策略,类似于下面的代码。由于我们已经创建了 keyvault,所以我不能使用下面的代码。
我们在做什么:
我们正在为 TDE 创建密钥并将 URL 附加到 SQL PAAS
SQL Server TDE with Azure KeyVault
下面是创建保管库和设置策略的示例
var vault = azure.Vaults.Define(vaultName)
.WithRegion(Region.USSouthCentral)
.WithExistingResourceGroup(rgName)
.DefineAccessPolicy()
.ForObjectId(sqlServer.SystemAssignedManagedServiceIdentityPrincipalId)
.AllowKeyPermissions(KeyPermissions.WrapKey, KeyPermissions.UnwrapKey, KeyPermissions.Get, KeyPermissions.List)
.Attach()
.DefineAccessPolicy()
.ForServicePrincipal(Azure_SP_ClientId)
.AllowKeyAllPermissions()
.Attach()
.Create();
根据我的测试,如果你想为现有的密钥保管库定义一个新的策略并在密钥保管库中管理sql密钥,请参考以下代码
var vault1 = azure.Vaults.GetByResourceGroup();
var vault1 = vault1.Update()
.DefineAccessPolicy()
.ForServicePrincipal("your application id")
.AllowKeyAllPermissions()
.Attach()
.Apply();
var key = vault1.Keys.Define(keyname)
.WithKeyTypeToCreate(JsonWebKeyType.RSA)
.WithKeyOperations(JsonWebKeyOperation.ALL_OPERATIONS)
.Create();
var sql =azure.SqlServers.GetByResourceGroup(groupName, name);
SqlServerKey sqlServerKey= sql.ServerKeys.Define().WithAzureKeyVaultKey(key.JsonWebKey.Kid)
.Create();
我需要帮助来为 Azure KeyVault 密钥(非秘密)定义策略,类似于下面的代码。由于我们已经创建了 keyvault,所以我不能使用下面的代码。
我们在做什么: 我们正在为 TDE 创建密钥并将 URL 附加到 SQL PAAS SQL Server TDE with Azure KeyVault
下面是创建保管库和设置策略的示例
var vault = azure.Vaults.Define(vaultName)
.WithRegion(Region.USSouthCentral)
.WithExistingResourceGroup(rgName)
.DefineAccessPolicy()
.ForObjectId(sqlServer.SystemAssignedManagedServiceIdentityPrincipalId)
.AllowKeyPermissions(KeyPermissions.WrapKey, KeyPermissions.UnwrapKey, KeyPermissions.Get, KeyPermissions.List)
.Attach()
.DefineAccessPolicy()
.ForServicePrincipal(Azure_SP_ClientId)
.AllowKeyAllPermissions()
.Attach()
.Create();
根据我的测试,如果你想为现有的密钥保管库定义一个新的策略并在密钥保管库中管理sql密钥,请参考以下代码
var vault1 = azure.Vaults.GetByResourceGroup();
var vault1 = vault1.Update()
.DefineAccessPolicy()
.ForServicePrincipal("your application id")
.AllowKeyAllPermissions()
.Attach()
.Apply();
var key = vault1.Keys.Define(keyname)
.WithKeyTypeToCreate(JsonWebKeyType.RSA)
.WithKeyOperations(JsonWebKeyOperation.ALL_OPERATIONS)
.Create();
var sql =azure.SqlServers.GetByResourceGroup(groupName, name);
SqlServerKey sqlServerKey= sql.ServerKeys.Define().WithAzureKeyVaultKey(key.JsonWebKey.Kid)
.Create();