Version: 2020.3
コンフィギュレーション
スコープ付きレジストリ認証

ネットワークの問題の解決

これから説明する手順を使って以下を行います。

ファイアウォールの設定

以下をファイアウォールの許可されたドメインのリストに追加してください。

  • packages.unity.com
  • download.packages.unity.com
  • upm-cdn.unity.com (または upm-cdn-china.unitychina.cn 中国国内)

これにより、Unity Package Manager がこれらのドメイン名に HTTPS でアクセスできるようになります。

ヒント: ファイアウォールの許可リストにドメイン名を追加する方法については、使用するオペレーティングシステムのヘルプを参照してください。

プロキシサーバーの設定

プロキシサーバーを使用する場合は、Unity パッケージレジストリに対してリクエストを実行するときに Unity Package Manager が使用する HTTP_PROXY および HTTPS_PROXY 環境変数を設定します。

オペレーティングシステムに応じて、これらの変数 (システム変数またはユーザー変数) をグローバルに設定できます。あるいは、起動時に Unity Hub にのみ設定できます。

Package Manager が認識しない証明書を使っているプロキシサーバーの背後の環境では、カスタムの認証局 を設定します。

カスタム認証局

一部の企業や機関では、ユーザーはプロキシ経由でのみインターネットにアクセスできます。一部のプロキシは、HTTPS コンテンツを解凍し、独自の自己署名証明書を使って再度パックします。Unity Package Manager の根底にある HTTPS レイヤーは、これらの証明書を発行した認証局を認識しないため拒否し、接続を 中間者攻撃 の可能性があるものとして扱います。つまり、追加の SSL 認証局を設定してこれらの証明書を許可しない限り、Package Manager を含む Unity の多くの機能を使用できません。

追加の SSL 認証局を設定するには、以下の手順を行います。

  1. upmconfig.toml グローバルコンフィギュレーションファイル を探します。ファイルがまだ存在しない場合は、空のテキストファイルを作成します。

  2. 1 つ以上のカスタム認証局を使用してテキストファイルを作成します。ファイルは、Privacy-Enhanced Mail (PEM) 形式の 1 つ以上の信頼できる証明書で構成する必要があります。以下はその例です。

    -----BEGIN CERTIFICATE-----
    MIIC+zCCAeOgAwIBAgIJAO0U6hVJnbvjMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
    BAMMCWxvY2FsaG9zdDAeFw0xOTAzMTIwMTIxMzRaFw0yOTAzMDkwMTIxMzRaMBQx
    EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
    ggEBAKNh0EM7j57pXorGs5OHzlk9TYeUqITtXXdWfY1fbqRdj+a8qLNs4m/nDsDW
    KgibHYG3FUqIidjPL61DLQuWUPY9Zo+uQaccIe0E5wb+To9mwMlLuhMD6iCPFRpe
    jcDhNj4vG1RVARMO1jupeZqdb+xHBZqtmMJmtiDOBxt662Z4hvoH8mdqNEuSkozz
    HqXmcdigrTO37DspGRBx08GJlHFHUs7C+hYOsOdNjME3dH/8uihjKYiqQb1E12dN
    PNL7jYm3AZv+qUmDFM3BJE0hSmAP00GuTJxbe31Kh4e7N5/XSiLsnqwircOj/Hfi
    eWjtsoXbCNDIiWUQtXBeLD/BdvkCAwEAAaNQME4wHQYDVR0OBBYEFDFw8VDkgMne
    mDjgo+b1iaPfUkdVMB8GA1UdIwQYMBaAFDFw8VDkgMnemDjgo+b1iaPfUkdVMAwG
    A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFEjUWGz1r3xSsbwUJsRhbMc
    M7Jjf9/r833H7eq31mbl/JbXPnpo8IctMuWyw42ccMtgq7i+coQeKwvWnHtI5rhe
    vshEkIqNPAoCnpW5NLprYDDTG1PDEhv6FYpW8Alq65i03tptzaoHlH3sH+97E/h0
    qSYI7yNHWMC5u0r1DB0BR+lZsj6RnwWPySMSuXx5sSiKIS/HkkMVwwmxKa4ZwuwS
    LFwHSUdqk0lJK4b0mCwyTHNvYO1IDziE5EKwfuaKVgOa62iCHVahgIVa+een4EfS
    hCCr3M3cq11Mi+mnRi1scxxrOno4OEEChWg2szZLlxBrkVJllrrq620XJ6RLB/8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
    d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
    b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
    EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
    cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
    MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
    JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
    mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
    wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
    VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
    AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
    AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
    BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
    pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
    dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
    fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
    NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
    H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
    +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
    -----END CERTIFICATE-----
    
  3. Unity はファイルシステム上のどの場所でもサポートしていますが、このファイルは、できればグローバルコンフィグレーションファイルと同じフォルダーに保存してください。

  4. グローバルコンフィギュレーションファイルで、caFile 属性を加えると、PEM ファイルの絶対パスを設定します。以下はその例です。

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

Unity Hub の環境変数の設定

このセクションでは、Windows コマンドプロンプト または macOS か Linux ターミナル から実行できるコマンドファイルの作成について説明します。 あるいは、コマンドをコピーして、プロンプトウィンドウまたはターミナルウィンドウに直接貼り付けることもできます。

ノート: コマンドファイルを実行する前に、Hub を完全に終了してください。Hub が既に実行されていると、スクリプトは再起動せずに Hub にフォーカスを切り替えるため、変更されたプロキシ設定は適用されません。

Windows

以下の手順で、Windows にコマンドファイルを作成します。

このファイルは、環境変数が設定された状態で Hub を起動します。ファイルをダブルクリックするか、コマンドプロンプトから呼び出すことができます。Unity はこれらの環境変数を、Hub から起動した Unity エディターの処理に渡します。

  1. メモ帳などのテキストエディターを開きます。

  2. 以下のテキストを入力し、proxy-url を正しいプロキシサーバー URL に置き換え、必要に応じて Hub インストールパスを変更します。

    @echo off
    set HTTP_PROXY=proxy-url
    set HTTPS_PROXY=proxy-url
    start "" "C:\Program Files\Unity Hub\Unity Hub.exe"
    
    

    ノート: パスにスペースが含まれる場合は、パスを 2 重引用符 (") で囲む必要があります。

  3. ファイルを自分で容易に見つけられる場所 (例えば Desktop) に保存し、ファイルに .cmd 拡張子がついていることを確認します (例えば launchUnityHub.cmd)。

macOS

以下の手順で、macOS に launchUnityHub.command ファイルを作成します。

このファイルは、環境変数が設定された状態で Hub を起動します。ファイルをダブルクリックするか、Bash ターミナルから呼び出すことができます。Unity はこれらの環境変数を、Hub から起動した Unity エディターの処理に渡します。

ノート: コマンドファイルをダブルクリックすると、ターミナルウィンドウ、またはタブを開き、スクリプトが終わっても開いたままにします。 この動作を Terminal.app の設定で変更できます。

  1. ターミナルウィンドウ を起動します。

  2. 以下のテキストを入力し、proxy-url を正しいプロキシサーバー URL に置き換え、必要に応じて Hub インストールパスを変更します。

    echo '#!/bin/bash
    export HTTP_PROXY=proxy-url
    export HTTPS_PROXY=proxy-url
    nohup "/Applications/Unity Hub.app/Contents/MacOS/Unity Hub" &>/dev/null &' > launchUnityHub.command
    chmod +x launchUnityHub.command
    

    ノート: パスにスペースが含まれる場合は、パスを 2 重引用符 (") で囲む必要があります。

  3. 必要な場合は launchUnityHub.command ファイルを任意の場所 (例えば Desktop) に移動します。

コンフィギュレーション
スコープ付きレジストリ認証