Google Cloud KMS(密钥管理服务)概述,dubbo spring cloud 区别Google Cloud KMS(密钥管理服务)概述Google Cloud KMS(密钥管理服务)概述Google中的静态加密选项有如下3种,并且已经介绍了“默认加密”和“客户提供的加密密钥(CSEK)”方式。现在开始介绍......
Google Cloud KMS(密钥管理服务)概述
Google中的静态加密选项有如下3种,并且已经介绍了“默认加密”和“客户提供的加密密钥(CSEK)”方式。现在开始介绍第3种——Gloud KMS。
通过Cloud KMS,您可以将加密密钥保存在一个中央云服务中,供其他云资源和应用直接使用。借助Cloud KMS,您将成为数据的最终监护人,可以按照与本地部署时相同的方式在云中管理加密密钥,并且您对数据具有可证明且可监控的信任根。
加密密钥管理
Cloud KMS是一项云托管式密钥管理服务,让您能够使用与本地部署时相同的方式为云服务管理加密密钥。您可以生成、使用、轮替和销毁AES256、RSA 2048、RSA 3072、RSA 4096、EC P256和EC P384加密密钥。Cloud KMS已与Cloud IAM和Cloud Audit Logging集成,因而您可以管理各个密钥的权限并监控它们的使用情况。您可以使用Cloud KMS保护您要存储在Google Cloud Platform之中的密文和其他敏感数据。
可扩缩、自动化、速度快
您可以保有多达数百万个加密密钥,因此可自行选择要以怎样的精细程度来加密数据。如果将密钥设置为定期自动轮替,您就可以定期使用新的主版本密钥来加密数据,还可以限制使用任一密钥版本可访问的数据范围。您可以根据需要保留任意多个有效的密钥版本。我们的低延迟能确保您可以快速访问密钥。
更好地管理密钥的使用
管理Cloud IAM权限,以便分别设置各个密钥的用户级权限,并为用户和服务帐号授予访问权限。借助Cloud KMS集中过滤您最敏感的数据的访问权限,通过Cloud Audit Logging查看管理员活动和密钥使用日志。监控日志以确保对密钥的使用没有不当之处。
轻松对数据进行加密和签名
Cloud KMS让您可以灵活地使用对称或不对称密钥来加密数据,而且保证一切都尽在您掌控之中。您还可以使用各种长度的RSA和椭圆曲线密钥执行签名操作。
实现信封加密
使用由Cloud KMS中的KEK(密钥加密密钥)保护的本地DEK(数据加密密钥)实现密钥层次结构。不管密钥是用于加密您在应用层的数据、保存在存储系统中的数据、托管在Google的数据还是其他任何位置的数据,都可对其进行管理。
帮助满足法规遵从需求
借助Cloud KMS,您可以利用客户管理的加密密钥(CMEK),管理用于保护GCP内驻留的敏感数据的加密密钥。如果法规要求您在硬件环境内执行密钥和加密操作,Cloud KMS与Cloud HSM的集成让您可以轻松创建由FIPS 1402 3级设备保护的密钥。
Cloud KMS特性
在Google Cloud Platform上管理加密密钥。
对称和不对称密钥支持
Cloud KMS支持创建、使用、轮替、自动轮替、销毁AES256对称加密密钥,以及RSA 2048、RSA 3072、RSA 4096、EC P256和EC P384不对称加密密钥。
通过API进行加密和解密
Cloud KMS是一种REST API,可使用密钥对存储的数据(例如密文)进行加密或解密。
自动轮替和按需轮替
Cloud KMS允许您根据需要轮替密钥,也支持为对称密钥设置轮替计划,以便按固定的时间间隔来生成新的密钥版本。一个对称密钥在任何时间都可存在多个有效版本以用于解密,但只有一个主密钥版本用于加密新数据。
密钥销毁延迟
Cloud KMS为密钥的实质性销毁内置了24小时的延迟,以防止意外丢失数据或因恶意行为而造成数据丢失。
全球高可用性
Cloud KMS在全球多个位置、多个区域提供服务,方便您将服务置于所需位置以缩短延迟时间、提高可用性。
集成GKE
在GKE中利用您在Cloud KMS中管理的密钥,实现应用层Kubernetes密文加密。
首席技术官Leonard Austin,Ravelin称:“Google的默认加密方式是公开透明的,Cloud KMS则令实施最佳做法变得简单。自动密钥轮替等功能使我们能够频繁地轮替密钥而不产生额外开销,并满足我们的内部合规性需求。Cloud KMS的延迟时间很低,因此我们可以将其用于频繁执行的操作。这使我们能够扩展要加密的数据的范围,从敏感数据到不需要编入索引的运营数据,不一而足。”
Cloud KMS创建和使用加密密钥
本快速入门介绍了如何使用Google Cloud Key Management Service创建和使用加密密钥。
本快速入门使用命令行将请求发国际快递Cloud KMS API。如需了解使用客户端库向Cloud KMS API发快递请求的编程示例,请参阅加密和解密。
准备工作
1.登录您的Google帐号。
如果您还没有Google帐号,请注册新帐号。
2.In the GCP Console,go to the Manageresources page and select or create a project.
Note:If you dont plan to keep theresources you create in this tutorial,create a new project instead ofselecting an existing project.After you finish,you can delete the project,removing all resources associated with the project and tutorial.
GO TO THE MANAGE RESOURCES PAGE
3.确保您的项目已启用结算功能。
了解如何启用结算功能
4.启用Cloud KMS API。
启用API
5.Install andinitialize the Cloud SDK.
重要提示:本快速入门将创建Cloud KMS资源,例如密钥环和密钥。这些资源一经创建将无法删除。
密钥环和密钥
要对内容进行加密和解密,您需要一个Cloud KMS密钥,该密钥是密钥环的一部分。
创建名为test的密钥环和名为quickstart的密钥。如需了解有关这些对象及其相互关系的更多信息,请参阅对象层次结构概览。
gcloud kms keyrings create testlocation global
gcloud kms keys create quickstartlocation global
keyring testpurpose encryption
您可以使用list选项查看刚刚创建的密钥的名称和元数据。
gcloud kms keys listlocation globalkeyring test
您应该会看到以下结果:
NAME PURPOSE PRIMARY_STATE
projects/[PROJECT_ID]/locations/global/keyRings/test/cryptoKeys/quickstart ENCRYPT_DECRYPT ENABLED
加密数据
现在您有了密钥,您可以使用该密钥对文本或二进制内容进行加密。
将“some text to be encrypted”存储在名为“mysecret.txt”的文件中。
echonSome text to be encryptedgt;mysecret.txt
要使用gcloud kms encrypt对数据进行加密,请提供密钥信息,指定要加密的纯文本文件的名称,然后指定包含加密后内容的文件的名称。
gcloud kms encryptlocation global
keyring testkey quickstart
plaintextfile mysecret.txt
ciphertextfile mysecret.txt.encrypted
encrypt方法将会把加密后的内容保存在ciphertextfile标志指定的文件中。
对密文进行解密
要使用gcloud kms decrypt数据进行解密,请提供密钥信息,指定要解密的已加密文件(密文文件)的名称,然后指定包含解密后内容的文件的名称。
gcloud kms decryptlocation global
keyring testkey quickstart
ciphertextfile mysecret.txt.encrypted
plaintextfile mysecret.txt.decrypted
decrypt方法将会把解密后的内容保存在plaintextfile标志指定的文件中。
要对已加密内容进行解密,您必须使用加密该内容时使用的相同密钥。
清理
为避免系统因本快速入门中使用的资源向您的GCP帐号收取费用,请执行以下操作:
列出您的密钥可用的版本:
gcloud kms keys versions listlocation global
keyring testkey quickstart
要销毁版本,请运行以下命令,将[VERSION_NUMBER]替换为要销毁的版本号:
重要提示:销毁密钥版本时,您无法再对使用该密钥版本加密的内容进行解密。在销毁之前,请确保您不再需要该密钥版本。
gcloud kms keys versions destroy[VERSION_NUMBER]
location globalkeyring testkey quickstart
CLOUD KMS价格
Cloud KMS的价格包含每个密钥版本的固定费用以及密钥操作的用量费用。
如果您使用非美元货币付费,请参阅Cloud Platform SKU上以您的币种列出的价格。
价格概览
Cloud KMS的价格取决于有效密钥版本的数量、各个密钥版本的保护级别以及密钥操作的用量费率。对于保护级别为SOFTWARE的密钥,非对称密钥和对称密钥的价格相同。
说明
1.处于以下任何状态的密钥版本均属于有效版本:
·已启用
·已停用
·已安排销毁
2.Cloud KMS每月按照您当月拥有的有效密钥版本数量来计算费用。此费用不会四舍五入,而是基于实际的消费。也就是说,如果您的密钥版本仅在2天内处于有效状态,那么您将按照该用量按比例付费,而不是支付整月的费用。
3.Cloud KMS以每10000次操作为单位计算密钥操作的费用。此费用不会四舍五入,而是基于实际的消费。也就是说,如果您的项目执行了25000次密钥操作,那么您将需要支付2.5个10000次操作的费用。
价格示例
在本例中,我们将展示一个在您刚刚开始使用Cloud KMS时可能会遇到的简单场景。为了简化计算,我们采用月度结算周期。
假设您在某个月份的密钥使用情况如下:
·100个保护级别为SOFTWARE的密钥(CryptoKeys),每个密钥有5个有效版本,总共有500个密钥版本(CryptoKeyVersions)。
·10万次用于对称加密和解密的密钥使用操作。(密钥管理操作免费。)
·10000次用于检索非对称密钥公钥的密钥使用操作。
·50000次用于非对称签名的密钥使用操作。
您当月支付的费用计算如下:
·500个密钥版本,每个$0.06,共计$30.00。
·10万次用于对称加密和解密的密钥使用操作,每10000次操作$0.03,共计$0.30。
·10000次用于检索公钥的密钥使用操作,每10000次操作$0.03,共计$0.03。
·50000次用于非对称签名的密钥使用操作,每10000次操作$0.03,共计$0.15。
本价格示例的总计:$30.48
查看用量
Google CloudPlatform Console可为您提供每个项目的交易记录,其中会说明您的当前余额以及具体项目的估算资源用量。
要查看某个项目的交易记录,请转到估算的结算帐单页面。
保护级别
保护级别指示加密操作的执行方式。创建密钥后,无法更改其保护级别。
SOFTWARE和HSM保护级别均支持所有密钥用途。
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部