Azure Key Vault(密钥库)是用于安全地存储和访问Secret的云服务,Secret是需要严格控制访问权限的内容,例如API密钥,密码,证书或加密密钥。Key Vault Service支持两种类型的容器:保管库(Valut)和托管HSM池(Hardware Security Module Pools)。 Valut支持存储软件和HSM-backed的密钥,Secret和证书,托管HSM池仅支持HSM-backed的密钥。

用户从Key Valut中获取Secret,使用Secret作为身份验证来访问数据。

一,Azure Key Valut的作用

Azure Key Vault是用于管理密钥,机密和证书的云服务,Key Vault避免了开发人员直接在代码中存储Secret信息的情况。Key Valut可以集中存储应用程序Secret,这大大减少了Secret被泄露的可能。Key Valut不经能够安全地存储由HSM支持的Secret和Key,还提供了对所有Secret访问和尝试使用的日志,因此具有完整的审核跟踪以确保合规性。

  • Secret 管理:Azure Key Valut用于安全地存储和严格控制对token,密码,证书,API密钥和其他Secret的访问
  • 密钥管理:Azure Key Vault可以用作密钥管理解决方案,使用Azure Key Vault可以轻松创建和控制用于加密数据的加密密钥。
  • 证书管理:Azure Key Vault也是一项服务,使您可以轻松地设置,管理和部署公共和私有传输层安全性/安全套接字层(TLS / SSL)证书,以与Azure和内部连接的资源一起使用。

Azure Key Vault具有两个服务层:使用软件密钥加密的标准服务层和包含受HSM保护的密钥的高级服务层。

二,Azure Key Valut的相关概念

租户(Tenant):租户是拥有和管理Microsoft云服务的特定实例的组织,它最常用于指一个组织的Azure和Microsoft 365服务集。

安全主体(Security Pricipal):Azure安全主体是用户创建的安全身份ID,应用程序,服务和自动化工具使用安全主体来访问特定的Azure资源。可以把Security Pricipal视为具有特定角色且受到严格控制的权限的“用户身份”(用户名和密码,或证书)。与一般用户身份不同,安全主体只需要做特定的事情。如果仅授予它执行管理任务所需的最低权限级别,则可以提高安全性。与应用程序或服务一起使用的安全主体专门称为服务主体(Service Principal)。

资源(Resource):资源是可通过Azure进行管理的项目,常见资源包括虚拟机,存储帐户,Web应用程序,数据库和虚拟网络。

资源组(Resource Group):资源组是一个容器,其中包含Azure解决方案的相关资源。资源组可以包含解决方案的所有资源,也可以仅包含要作为一个组进行管理的资源。

Azure Active Directory(简称 Azure AD):Azure AD是租户的AD服务,每个Directory都有一个或多个Domain,一个Directory可以有许多与其相关联的订阅(Subscription),但只能有一个租户。

托管ID(Managed identities): Azure Key Valut提供了一种安全地存储凭据以及其他密钥和Secret的方法,但是您的代码需要通过Key Valut进行身份验证才能检索它们。使用托管身份可以很简单地解决此问题:通过在Azure AD中为Azure服务提供自动托管身份,用户可以使用此托管身份对Key Vault或支持Azure AD身份验证的任何服务进行身份验证,而无需在代码中包含任何凭据。

访问Key Valut: 要对Key Vault进行任何操作,首先需要对其进行身份验证。 推荐使用“Azure资源的托管身份”对Key Vault进行身份验证。当向Azure中的虚拟机上部署应用程序时,可以向有权访问Key Vault的虚拟机分配身份,还可以把身份分配给其他Azure资源,这种方法的好处是应用程序或服务不负责管理第一个Secret的轮换, Azure自动旋转身份。

三,创建Azure Key Valut

使用Partal UI创建Azure Key Valut

step1:Basic 选项卡

Basic 选项卡部分,第一部分是设置Subscription 和 Resource Group,第二部分是设置Soft Deletion

软删除保护将自动在此密钥库(Key Valut)上启用,此功能用于在保留期内恢复或永久删除密钥库和Secret,软删除保护适用于密钥保管库和密钥保管库中存储的Secret。在Basic选项卡中,选项"Days to retain deleted values"用于设置软删除保护的保留期(retention period)。要强制执行保留期,并防止在保留期内永久删除密钥库或Secret,可以打开清除保护(Purge Protection)。 启用清除保护后,用户或Microsoft无法清除机密。选项“Enable purge protection (enforce a mandatory retention period for deleted vaults and vault objects)” 用于启用清除保护(Purge Protection),强制保留期。

Step2:设置Access Policy

设置访问策略(Access Policy)也分两部分,第一部分是设置 Enable Access to,第二部分是设置Permission Model和Access Policy。

通过“+Add Access Policy”来添加新的访问策略。

Step3:Networking选项卡

设置网络连接,勾选 “Public endpoint(all networks)”

四,配置Key Valut

打开一个新建的Key Valut,在Settings分组中打开Secrets,本文示例如何配置一个新的Secret。

点击“+Generate/Import”,打开“Create a Secret”对话框,新建一个Secret,一个Secret主要是由Name和Value来构成的。

用户从Key Valut中获取Secret,使用Secret作为身份验证来访问数据。

参考文档:

About Azure Key Vault

Azure Key Valut 简介的更多相关文章

  1. Azure Key Vault(二)- 入门简介

    一,引言 在介绍 Azure Key Vault 之前,先简单介绍一下 HSM(硬件安全模块). -------------------- 我是分割线 -------------------- 1,什 ...

  2. The thumbprint of same asymmetric key is not same in 'SQL Server Connector for Microsoft Azure Key Vault' 1.0.4.0 and 'SQL Server Connector for Microsoft Azure Key

    https://support.microsoft.com/en-us/help/4470999/db-backup-problems-to-sql-server-connector-for-azur ...

  3. Azure Key Vault (3) 在Azure Windows VM里使用Key Vaule

    <Windows Azure Platform 系列文章目录> 本章我们介绍如何在Azure Windows VM里面,使用.NET使用Azure Key Vault 我们需要对Key V ...

  4. Azure Key Vault (2) 使用Azure Portal创建和查看Azure Key Vault

    <Windows Azure Platform 系列文章目录> 请注意: 文本仅简单介绍如何在Azure Portal创建和创建Key Vault,如果需要结合Application做二次 ...

  5. Azure Key Vault (1) 入门

    <Windows Azure Platform 系列文章目录> 为什么要使用Azure Key Vault? 我们假设在微软云Azure上有1个场景,在Windows VM里面有1个.NE ...

  6. 【Azure Developer】Python代码通过AAD认证访问微软Azure密钥保管库(Azure Key Vault)中机密信息(Secret)

    关键字说明 什么是 Azure Active Directory?Azure Active Directory(Azure AD, AAD) 是 Microsoft 的基于云的标识和访问管理服务,可帮 ...

  7. 【Azure Developer】解决Azure Key Vault管理Storage的示例代码在中国区Azure遇见的各种认证/授权问题 - C# Example Code

    问题描述 使用Azure密钥保管库(Key Vault)来托管存储账号(Storage Account)密钥的示例中,从Github中下载的示例代码在中国区Azure运行时候会遇见各种认证和授权问题, ...

  8. 【Azure 环境】Azure Key Vault (密钥保管库)中所保管的Keys, Secrets,Certificates是否可以实现数据粒度的权限控制呢?

    问题描述 Key Vault (密钥保管库) 能不能针对用户授权实现指定用户只能访问某个或某些特定的key? 如当前有两个用户(User1, User2),在Key Vault中有10个Key,Use ...

  9. 【Azure Developer - 密钥保管库 】使用 Python Azure SDK 实现从 Azure Key Vault Certificate 中下载证书(PEM文件)

    问题描述 在Azure Key Vault中,我们可以从Azure门户中下载证书PEM文件到本地. 可以通过OpenSSL把PFX文件转换到PEM文件.然后用TXT方式查看内容,操作步骤如下图: Op ...

随机推荐

  1. rocketMq指定broker ip地址,适合解决云主机部署问题

      在工作中遇到了一个这个问题,就是我们rocketmq是部署在云主机上的 但是我们的开发同事在自己的电脑连接rocketmq链接不上 报错显示Caused by: org.apache.rocket ...

  2. 一篇文章掌握Nginx核心文件结构

    1 Nginx核心配置结构 2 配置模块详解 设置worker进程的用户,指的linux中的用户,会涉及到nginx操作目录或文件的一些权限,默认为nobody user root; worker进程 ...

  3. js获取url参数、图片转本地base64跨域问题

    获取url参数是经常需要用的一个方法,url上的参数可以让我们的程序执行更灵活. 图片转本地也是很实用的,因为海报合成通常只支持本地. 下面我们来看看这些功能的实现: 获取所有参数,采用split拆分 ...

  4. 简单的一段css代码让全站变灰,网站哀悼代码

    为表达全国各族人民对抗击新冠肺炎疫情斗争牺牲烈士和逝世通报的深切哀悼,国务院今天发布公告,决定2020年4月4日举行全国性哀悼活动.在此期间,全国和驻外使馆下半旗致哀,全国停止公共娱乐活动,4月4日1 ...

  5. Docker(四):Docker安装Redis

    查找Redis镜像 镜像仓库 https://hub.docker.com/ 下拉镜像 docker pull redis 查看镜像 docker images 创建Redis容器 运行Redis镜像 ...

  6. Hive数据倾斜优化

    在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显.主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平 ...

  7. RocketMQ集群搭建(3m-3s-async)

    RocketMQ集群搭建(3m-3s-async) 各角色介绍 角色 作用 Producer 消息发送者,将消息发送到 Broker.无状态,其与NameServer集群中的一个节点建立长连接,定期从 ...

  8. 初识SylixOs

    SylixOS 概述 SylixOS 是一款大型嵌入式实时操作系统,诞生于 2006 年,起初它只是一个小型多任务调度器,经过多年开发,SylixOS 目前已经成为一个功能完善.性能卓越.可靠稳定的嵌 ...

  9. Python基础编程——数据类型

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 在程序设计和编程中,会涉及到各种各样的数据类型,而不同的数据类型变量之间可以进行的运算是不同的.在p ...

  10. Git常用命令大全,迅速提升你的Git水平

    原博文 https://mp.weixin.qq.com/s/hYjGyIdLK3UCEVF0lRYRCg 示例 初始化本地git仓库(创建新仓库) git init                 ...