【问题标题】:Azure Batch environment variables securityAzure Batch 环境变量安全
【发布时间】:2019-04-04 17:56:59
【问题描述】:

我不确定 Azure Batch 中的环境设置有多安全。我需要使用证书吗?

我正在 Azure Batch 中运行任务,当前使用 EnvironmentSetting 传递存储令牌。我在文档中找不到任何关于安全性的详细信息。阅读security with certificates 后,我觉得这是要走的路(“在加密或解密任务的敏感信息时,通常需要使用证书,例如 Azure 存储帐户的密钥。”),但我不是 100 % 确信。

那么,环境设置是否安全?

【问题讨论】:

    标签: azure azure-batch


    【解决方案1】:

    如果您只谈论安全本身,这是一个过于宽泛的问题。此外,您还有很多方法可以增加它的安全性。

    首先,环境变量仅在任务用户的上下文中可见,即执行任务的节点上的用户帐户。如果您远程连接,您将看不到它们。这是一个安全的设置。然后你可以设置你提供的证书,这也是一个安全的设置。它们是 Azure Batch 本身的设置。

    您还可以控制访问批处理帐户的权限。这也是一个安全的设置。所以相对而言,它是安全的。希望我的意见能帮助您理解批处理环境变量的安全性。

    【讨论】:

    • 你说得对,我的问题不够精确。我所说的“安全”是指任何未经授权的人都无法获得这些环境变量的值。如果有人可以嗅探网络流量并且环境变量在传输时未加密,则可能是这种情况。我还没有找到有关如何在内部处理 EnvironmentSetting 的任何信息,如果有的话,我应该担心泄露使用 EnvironmentSetting 传输的数据的任何可能性。所以这个问题与权限/访问控制无关 - 如果我的(授权)用户可以访问这些值,我可以。
    • @cpt-planet 诅咒,它是安全的。使用 Azure Python SDK 与 Azure 交互时,需要通过凭据获取权限。 SDK 需要 Azure API 支持,所有 API 都需要您的身份验证。例如,您可以看到Azure Batch REST API。请求使用身份验证进行加密。所以不用担心,它是安全的。
    • 我更关心内部 azure 通信(azure - 批处理池)而不是 Python SDK - Azure API。您知道与计算节点的内部通信是否默认加密?如果是,那certificates in Batch有什么用?
    • @cpt-planet 如果您的意思是在池中的节点之间进行通信,则没有加密。它们在 Azure 专用网络中进行通信,没有人可以从 Internet 获取请求。 Batch 中的证书用于其他服务与 Batch 通信。 Azure Batch 使用 Https。那你为什么要质疑安全性呢?
    • 我不关心池中节点之间的通信。我担心 azure 批处理服务(接收启动任务请求、启动任务并将环境变量传递给节点的资源)如何与启动任务的节点通信。
    猜你喜欢
    • 2014-09-29
    • 2017-12-13
    • 2020-08-15
    • 2013-09-17
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2020-04-02
    相关资源
    最近更新 更多