一,引言

  之前讲解的ADF 集成Azure DevOps 实现CI/CD,在 Releases Pipeline 阶段,我们是将两个 Blob Storage 的链接字符串复制、粘贴到 ”Override template parameters“,这样虽然说实现了对应的功能,但是也暴露出一定的问题,就是将 “UAT”,甚至 “Pro” 环境的链接字符串暴露出来了,这样是很危险的。也是不允许的。

这个时候,有人就说了,可以使用共享访问签名,设定有效期等限制。

确实是可以的,但是今天我们使用另外一个方式-----使用 Key Vault 托管 Blob Storage 的密钥信息。OK,开始今天的表演!!!!!

--------------------我是分割线--------------------

1,Azure Data Factory(一)入门简介

2,Azure Data Factory(二)复制数据

3,Azure Data Factory(三)集成 Azure Devops 实现CI/CD

4,Azure Data Factory(四)集成 Logic App 的邮件通知提醒

5,Azure Data Factory(五)Blob Storage 密钥管理问题

二,正文

  关于密钥创建配置等问题,我之前有介绍过-----Azure Kay Vault(一).NET Core Console App 获取密钥保管库中的机密信息 大家可以进行参考,创建Azure Key Vault,并且将两个 Blob Storage 的链接字符串配置到 Azure Key Vault 中

为Azure DevOps 关联的 sp 配置访问权限,点击图中圈中的 “+ Add Access Policy”

Configure from template(optional)选择:“Secret Management”

Key permissions 选择:“List,Get”

Select principal 选择:Azure DevOps 管理的 sp

其他选择默认,点击 “Add” 添加操作

紧接着点击 “Save” 进行保存操作

接着回到Azure DevOps 中,需要在 Releases Pipeline 配置添加 Key Vault 步骤。

修改当前步骤的相关参数

Display name:“Azure Key Vault: cnbateblog-keyvault-UAT”

Azure subscription:选择当前 UAT 环境的 Key Vault 所在的订阅 

Key vault:“cnbateblog-keyvault-UAT”

Secrets filter(机密过滤器):“from-db1-uat,to-db2-uat”(两个机密名称用 “,"进行分割开)

以逗号分隔的机密名称列表,或留下*从选定的密钥库下载所有机密

接下来修改 ARM 模板部署中的覆盖参数,将原有的两个 Blob 的连接字符串改为 key vault 的两个机密 key 了

-factoryName "ADF-CnBateBlogWeb-UAT" -CnBateBlogFromBlobStorage_connectionString $(from-db1-uat) -CnBateBlobToBlobStorage_connectionString $(to-db2-uat)

修改完成后,点击 ”Save“ 进行保存

最后,我们可以手动触发 Releases Pipeline,测试以下结果

Success!!!!!

Bingo,今天的分享到此结束

三,结尾

  今天的内容其实很简单,就是将之前接触的 Azure Key Vault 结合 Azure Devops 运用起来,这就是一个很好的例子,同时里面还牵扯到 sp 的内容,虽然说整个 sp 不是我们手动创建的,是Azure Devops 帮我们创建的,但是我们还是需要回顾一下,想想其中的原理。当然,还有很多不完善的地方以及需要持续演进优化的,但是它目前已经满足了演示的需要。此外,本文所分享的内容也存在着很多我自己的一些理解,因为每个人的经历和认知都不同吧。

最后,谢谢大家的阅读!!!!!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。

作者:Allen

版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。

Azure Data Factory(五)Blob Storage 密钥管理问题的更多相关文章

  1. Azure Data Factory(二)复制数据

    一,引言 上一篇主要只讲了Azure Data Factory的一些主要概念,今天开始新的内容,我们开始通过Azure DevOps 或者 git 管理 Azure Data Factory 中的源代 ...

  2. Azure Data Factory(三)集成 Azure Devops 实现CI/CD

    一,引言 由于上一节文章内容过长,无法分享Azure Data Factory 的持续集成,持续发布.今天将着重介绍一下在使用 Azure DevOps Pipeline 发布,自动进行持续集成,并且 ...

  3. Azure Data Factory(一)入门简介

    一,引言 今天分享一个新的Azure 服务-----Azure Data Factory(Azure 数据工厂),怎么理解,参考根据官方解释-----数据工厂解释:大数据需要可以启用协调和操作过程以将 ...

  4. ADF 第一篇:Azure Data Factory介绍

    Azure Data Factory(简写 ADF)是Azure的云ETL服务,简单的说,就是云上的SSIS.ADF是基于云的ETL,用于数据集成和数据转换,不需要代码,直接通过UI(code-fre ...

  5. Azure Data Factory(四)集成 Logic App 的邮件通知提醒

    一,引言 上一篇有介绍到使用Azure Data Factory 复制数据,然后有集成 Azure DevOps 实现CI/CD,但是对于真正的项目来说,这些肯定是不够的,比如说在执行 Azure P ...

  6. Windows Azure入门教学:使用Blob Storage

    对于.net开发人员,这是一个新的领域,但是并不困难.本文将会介绍如何使用Blob Storage.Blob Storage可以看做是云端的文件系统.与桌面操作系统上不同,我们是通过REST API来 ...

  7. [转]windows azure How to use Blob storage from .NET

    本文转自:http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/?rnd=1 ...

  8. Azure Blob Storage从入门到精通

    今天推荐的是一个系列文章,让读者阅读完成后可以对Azure Blob Storage的开发有一个全面的了解,可谓是从入门到精通. Azure在最初的版本里面就提供了非结构化数据的存储服务,也即Blob ...

  9. Azure Functions(二)集成 Azure Blob Storage 存储文件

    一,引言 上一篇文章有介绍到什么是 SeverLess ,ServerLess 都有哪些特点,以及多云环境下 ServerLess 都有哪些解决方案.在这众多解决方案中就包括 Function App ...

随机推荐

  1. rxjs入门7之其它操作符复习

    一.辅助类操作符 二.过滤数据流 三.转化数据流 四.异常错误处理 五.多播 ,Subject类型

  2. id+is+深浅co'p'y

    day06 一.id.is 关键字:id #唯一的,如果id相同,说明2个变量指向同一个地址,就是变量一==变量二 注意:id相同值一定相同,值相同但是id不一定相同(不同代码块的值相同,他们就像太阳 ...

  3. mysql5.5和5.6的一些区别

    timestamp 5.5中 直接写timestamp不加长度   5.6 中 写的timestamp(3) datatime 5.5中 直接写datetime 不加长度  5.6中 可以添加长度(3 ...

  4. 多测师讲解rf _基本使用002_高级讲师肖sir

      在你安装好RF-ride之后,桌面就会生成一个RIDE图标.双击启动,界面如下:  

  5. 两大IT培训巨头,达内和传智播客哪个更好?

    多年来,从财报收入及培训规模角度来看,达内和传智播客分别在IT培训领域占据第一和第二的位置已经是不争的事实,但是从培训学员的角度来讲,选择达内和传智播客哪个更好呢,这两家机构在学员心目中的排名和营收的 ...

  6. day18 Pyhton学习 内置函数最后七个

    1. enumerate  枚举函数 for i in enumerate(['a','b','c'],1): print(i)#(1, 'a')(2, 'b')(3, 'c') goods_lst= ...

  7. 50种编程语言,一句 “Hello, World”!展现编程语言七十年发展!

    mod confinment { use std::os::raw::{c_char}; extern "C" { pub fn puts(txt: *const c_char); ...

  8. php闭包作为函数参数

    <?php function test(Closure $call) { $a = 63; $b = 22; echo "hello"; echo $call($a,$b); ...

  9. printStackTrace()造成的并发瓶颈

    一 背景 在一次活动前的压测中,发现一个服务(平响为250ms左右)存在并发瓶颈,单实例的QPS压力从20升高到40后服务就雪崩了(平响急剧升高). 通过<jstack -F>命令查看线程 ...

  10. Redis学习笔记(四)——数据结构之List

    一.介绍 Redis列表(List)是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(left)或者尾部(right),一个列表最多可以包含232-1个元素(4294967295, ...