使用KeyVaultClient定义Azure KeyVault密钥上的策略

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用KeyVaultClient定义Azure KeyVault密钥上的策略相关的知识,希望对你有一定的参考价值。

我需要帮助来为Azure KeyVault密钥(不是秘密)定义策略,类似于下面的代码。由于我们已经创建了密钥仓库,因此我无法使用以下代码。

我们在做什么:我们正在创建密钥并将URL附加到SQL PAAS for TDESQL 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();
答案

根据我的测试,如果要为现有密钥库定义新策略并在Key Vault中管理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();

以上是关于使用KeyVaultClient定义Azure KeyVault密钥上的策略的主要内容,如果未能解决你的问题,请参考以下文章

KeyVaultClient 在调试时随机抛出 FatalExecutionEngineError

使用 Azure 策略定义为存储帐户启用诊断设置

使用cordova调用azure移动应用自定义api

自定义配置脚本 Azure 资源管理器模板

蔚蓝 B2C。使用 Azure 门户编辑自定义属性

如何使用 Azure.Messaging.ServiceBus 库添加自定义属性?