Version: Unity 6.0 (6000.0)
语言 : 中文
为自动代理配置存储凭据 (macOS)
使用环境变量来标识 Web 代理

信任 Web 代理安全证书

一些企业将 SSL 检查作为其网络环境的一部分,用于检查、跟踪和控制网络流量。

使用 SSL 检查时,Web 代理充当实际客户端的服务器,然后充当实际服务器的客户端。为了防止客户端看到安全警告,Web 代理必须代表服务器向客户端提供有效的 SSL/TLS 证书。如果没有有效的 SSL/TLS 证书,客户端可能不信任 Web 代理,并可能阻止或警告用户其连接不安全。

SSL 检查有时与中间机器 (MITM) 相关联。

假设已设置使用 SSL 检查的 Web 代理。此外,还假设客户端计算机在操作系统级别配置为接受 SSL/TLS 证书,以便它们可以与 Web 代理进行通信。

即使有操作系统级别受信任的证书,客户端计算机也必须配置为:

或者,您可以在 Web 代理上定义例外,这样 Unity URL 就不会受到 SSL 检查。

使用 NODE_EXTRA_CA_CERTS 环境变量设置证书

要使用 SSL 检查的 Web 代理启用 Unity Package Manager 操作,必须设置 NODE_EXTRA_CA_CERTS 环境变量或使用配置文件设置证书

必须将证书文件分发给运行 Unity 的每台计算机。然后,必须设置 NODE_EXTRA_CA_CERTS 环境变量,使其值指向证书文件的绝对路径。无论是手动执行此操作还是使用更具可扩展性的方法,都必须在与 Web 代理通信的每台设备上设置证书和环境变量。请遵循以下常规步骤:

  1. 为自定义证书颁发机构创建包含一个或多个证书的文本文件。文件必须包含一个或多个采用隐私增强邮件 (PEM) 格式的可信证书。更多详细信息,请参阅 Web 代理软件的帮助文件。
  2. .pem 文件分发给每一台有 Unity 实例的计算机。
  3. 在命令文件中定义 NODE_EXTRA_CA_CERTS 环境变量。请参阅创建命令文件以设置环境变量和打开应用程序

示例

在以下示例中,mycert.pem 是证书的名称,存在于用户的主目录中。

Windows

set NODE_EXTRA_CA_CERTS=C:\Users\username\mycert.pem

macOS 和 Linux

export NODE_EXTRA_CA_CERTS=/Users/username/mycert.pem

您可以在 Node.js 文档中找到有关 NODE_EXTRA_CA_CERTS 环境变量的更多信息。

使用配置文件设置证书

如果无法使用 NODE_EXTRA_CA_CERTS 环境变量设置证书以启用 Unity Package Manager 操作,请遵循此流程。

注意:无论是手动添加或更新配置文件还是使用更具可扩展性的方法,都必须将添加或更新应用到每一台客户端计算机上。

  1. 定位到 upmconfig.toml 全局配置文件。如果文件尚不存在,请创建一个空文本文件。

  2. 为自定义证书颁发机构创建一个包含一个或多个证书的文本文件。该文件必须包含一个或多个以隐私增强邮件 (PEM) 格式存储的可信证书。例如:

    -----BEGIN CERTIFICATE-----
    MIIC+zCCAeOgAwIBAgIJAO0U6hVJnbvjMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
    BAMMCWxvY2FsaG9zdDAeFw0xOTAzMTIwMTIxMzRaFw0yOTAzMDkwMTIxMzRaMBQx
    (additional lines omitted for conciseness)
    LFwHSUdqk0lJK4b0mCwyTHNvYO1IDziE5EKwfuaKVgOa62iCHVahgIVa+een4EfS
    hCCr3M3cq11Mi+mnRi1scxxrOno4OEEChWg2szZLlxBrkVJllrrq620XJ6RLB/8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
    (additional lines omitted for conciseness)
    H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
    +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
    -----END CERTIFICATE-----
    
  3. 尽管 Unity 支持将文件保存在文件系统中的任何位置,但建议将此文件与全局配置文件保存在同一个文件夹中。

  4. 在全局配置文件中,添加 caFile 键,并将其值设置为 PEM 文件的绝对路径。重要提示:在 TOML 文件中设置 Windows 路径时,请使用正斜杠 (/) 或双反斜杠 (\\)。不要使用单个反斜杠 (\),因为它们是标记转义序列的特殊字符,可能导致 TOML 解析错误。

    Windows 示例

    caFile = "C:\\ProgramData\\Unity\\config\\cert.pem"
    

    macOS 和 Linux 示例

    caFile = "/etc/cert.pem"
    

其他资源

为自动代理配置存储凭据 (macOS)
使用环境变量来标识 Web 代理