环境 #

注意

此功能处于测试阶段。

环境日志记录和扫描#

管理员可以通过要求成员为其本地conda环境启用自动日志记录来增强组织安全性。自动跟踪用户环境为管理员和用户都提供了多项好处。

管理员可以监控用户环境中安装的软件包,查看与之相关的任何常见漏洞和暴露(CVEs),并在必要时通过阻止环境使用来强制执行安全标准。IT管理员还可以提供自定义消息,指导用户进行环境修复。此遥测数据通过确保用户符合您的安全要求并为基础设施审计提供历史跟踪,帮助您的IT管理员完成审计任务。

成员可以使用这些工具来确保他们的本地环境符合组织的安全要求,并避免因管理员干预而导致机器被隔离或失去对环境的访问权限。

注意

实施环境日志记录需要在组织层面进行协调,以确保所有成员都正确记录他们的环境。

启用环境管理#

先决条件#

环境日志记录和扫描需要以下内容:

  • An anaconda.cloud 账户

  • 在你的(base)环境中使用Python 3.10或更高版本

    Verifying Python in your (base) environment

    通过打开Anaconda Prompt(macOS/Linux的终端)并运行以下命令,检查您在(base)中拥有的Python版本:

    python -V
    

    命令的输出可能看起来类似于这样:

    如果您需要升级Python,请运行以下命令:

    conda update --name base python
    

    注意

    在您的(base)环境中更新Python可能会影响其他已安装的软件包。在继续之前,请仔细查看建议的更改。

安装所需的插件#

环境日志记录和扫描需要在您的(base)环境中安装一些插件,这些插件扩展了conda的功能。

通过安装anaconda-env-manager“元包”(包含下面列出的所有插件)来获取必要的插件。要安装anaconda-env-manager,请运行以下命令:

conda install --name base anaconda-cloud::anaconda-env-manager

以下是anaconda-env-manager元包提供的插件的简要描述:

  • anaconda-env-log - 每当用户使用conda执行createinstallremoverenameupdate操作时,自动记录环境的当前状态(也支持手动记录现有环境)

  • anaconda-activate-check - 提供检查,以在激活前根据管理员定义的安全控制验证环境,并在出现警告或访问限制时通知用户,并提供解决指导。

  • anaconda-audit - 允许您扫描本地环境以评估安装或更新包等操作的安全影响,这样您就可以主动解决潜在问题,而无需管理员干预。它也是识别问题的宝贵工具,当管理员标记的安全问题进行故障排除时。

注意

如果你已经安装了它,最好通过运行conda update anaconda-env-manager来保持更新。

注册您的组织#

为了确保您的环境正确记录到Anaconda Cloud上的组织,您必须通过CLI登录并使用conda注册您的组织。要注册您的组织:

  1. 打开Anaconda提示符(在macOS/Linux上是终端)。

  2. 通过运行以下命令登录到Anaconda Cloud:

    anaconda login --at cloud
    

    系统将提示您输入用户名和密码。请输入您的Anaconda Cloud凭据,并在打开的浏览器窗口中完成登录过程。

  3. 成功登录后,返回命令行并通过运行以下命令注册您的组织:

    # Replace <ORG_ID> with your ORG_ID (found in your organization's URL —
    # https://anaconda.cloud/organizations/<ORG_ID>)
    conda env-log register --organization-name <ORG_ID>
    

组织注册后(并且在(base)环境中安装了anaconda-env-log),新创建的环境将被记录到注册的组织中。

日志记录环境#

安装了anaconda-env-log后,所有新创建的环境都会自动记录在conda中,并且每当您在其中执行某些conda操作(installremoverenameupdate)时,现有环境也会自动记录。现有环境也可以通过运行以下命令手动记录:

注意

在手动记录环境之前,您必须使用CLI登录到Anaconda Cloud。

# Replace <ENV_NAME> with the  name of the environment you want to log to your organization
conda env-log log --name <ENV_NAME>

查看已记录的环境#

与组织记录的环境可以随时从 环境页面查看。成员可以查看他们记录的环境,而管理员可以查看与组织记录的每个环境。

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

The Environments page shows you:
  • 环境名称和位置

  • 环境中的包数量

  • 环境中与包相关的CVE数量

  • 环境的创建者

  • 上次环境更新的时间

提示

使用表格顶部的过滤器来高效定位环境。

探索已记录的环境#

已记录到组织的环境可以被浏览,以了解它们包含的包。您可以查看环境中存在哪些包以及与之相关的任何CVE。

查看环境包#

环境的页面显示环境中包含哪些包以及它们来自哪些渠道。

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 选择PACKAGES列下显示的包数量。

注意

使用底部的导航控件浏览环境的包。

查看CVEs#

CVEs 面板按名称和严重性显示与环境相关的所有 CVE。

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 选择CVES列下显示的CVE计数。

使用面板顶部的过滤器来高效定位关键的CVEs。

将您的视图缩小到环境中与特定包相关的CVE:

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 选择在PACKAGES列下显示的包数量。

  5. 定位包。

  6. 点击包旁边CVE列下显示的CVE计数。

注意

扫描环境#

扫描环境会检查最近保存的conda环境日志,以查找与其包含的包相关的CVE。

注意

环境在创建时会自动扫描,但在记录或日志更新时不会扫描。为了确保对环境当前CVE状态的准确评估,在Anaconda Cloud中探索之前请执行扫描。您也可以在本地扫描环境,以立即识别潜在问题。

要扫描已记录到组织的环境:

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 从列表中选择您想要扫描的环境。

  5. 点击更新扫描

    注意

    扫描完成后没有视觉通知。扫描后,请检查环境中的包以查看新关联的CVE。

使用 anaconda-audit 扫描本地环境。

  1. 打开Anaconda提示符(在macOS/Linux上是终端)。

  2. 通过运行以下命令扫描环境:

    # Replace <ENV_NAME> with the name of the environment you want to scan
    anaconda audit scan --name <ENV_NAME>
    

阻塞环境#

管理员可以利用组织环境安全状态控制对不符合安全标准的环境采取措施,这允许他们在环境上放置警告或完全阻止访问。在这两种情况下,管理员都可以输入个性化消息,指导必须采取哪些操作来恢复访问。环境被阻止的组织成员下次尝试激活环境时将收到管理员的消息。

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 选择您想要操作的环境。

  5. 点击更新状态

  6. 选择一个状态应用到环境,并在必要时输入自定义消息。

  7. 点击保存

归档环境#

归档环境允许管理员通过将不活跃或过时的环境移动到专用标签来维护一个有序的工作空间。这种分离减少了活跃环境列表中的混乱,使其更易于管理。

  1. 导航到您的组织页面

  2. 选择您的组织。

  3. 从左侧导航中选择 环境

  4. 选择您要操作的环境。

  5. 点击归档

注意

归档的环境仍然可以使用。如果您希望阻止环境被使用,阻止环境