对于将在Azure中构建的新Web应用程序,我们正在考虑在Azure blob中存储敏感的个人文档(扫描护照,教育脚本等)。
这是一种安全的方法,还是有更好的方法呢?感谢您的投入。
答案 0 :(得分:2)
默认情况下,为所有存储帐户启用存储服务加密。如果愿意,您可以选择使用自己的加密密钥。
https://docs.microsoft.com/en-us/azure/storage/common/storage-service-encryption
如果您希望创建由Azure Key Vault管理的自定义密钥,可以按照此处的说明进行操作:https://docs.microsoft.com/en-us/azure/storage/common/storage-service-encryption-customer-managed-keys
但是,如果您在将数据传输到Azure blob时担心数据,则还需要使用客户端加密。以下是此链接:https://docs.microsoft.com/en-us/azure/storage/common/storage-client-side-encryption?toc=%2fazure%2fstorage%2fqueues%2ftoc.json
答案 1 :(得分:2)
与Azure中的许多内容一样,它可以是安全的,但需要付出努力才能实现。
1)截至去年,所有存储帐户都使用AES-256使用Microsoft管理的密钥进行静态加密。您也可以自带密钥,如上所述here。
2)采用客户端加密 - 这样,如果帐户遭到入侵,攻击者就无法读取数据;他们还需要密钥来解密数据。这确实会影响性能,但在大多数情况下通常都可以接受。
3)使用存储帐户的防火墙仅允许需要访问存储帐户的地址。
附注:如果您要从应用服务访问存储,则出站IP地址不会更改,除非您向上或向下扩展应用服务计划。水平自动扩展应用服务不会更改出站IP地址。
4)将存储帐户与Azure KeyVault集成,以自动旋转密钥并生成SAS令牌,如文档here所示。我希望这可以通过门户网站完成,因为大多数人都不知道这存在。
5)不要使用存储帐户密钥 - 生成并分发短期SAS令牌。 KeyVault集成可以帮助解决这个问题。
6)启用存储诊断指标和日志记录。虽然它本身不是一种防御措施,但事后可能会有所帮助。
7)启用软删除;如果发生违规行为,这可能会减少某些攻击的影响。
8)启用所需的安全转移'设置,仅允许通过HTTPS进行流量。