Robot
2021.10
バナーの背景画像
Robot ガイド
最終更新日 2023年10月25日

パッケージの署名の検証

パッケージの署名とは、NuGet パッケージが信頼できるソースからのものであることを証明する方法です。パッケージは、署名者の ID を検証するための証明書を使用して署名されます。デプロイがパッケージの署名を検証するように設定されている場合、UiPath は使用されるパッケージが許可された作成者またはリポジトリからのものであることを確認するために、要求された証明書を NuGet.config ファイル内の利用可能な情報と照合して検証しながら見つけます。

パッケージの署名の検証の仕組みについて詳しくは、Microsoft ガイドの NuGet.config ファイルに関するこちらのセクションをご覧ください。

パッケージの署名検証を設定する

検証モード

  • accept - 署名のないパッケージをインストールできます。
  • require - パッケージをインストールする場合、パッケージの署名の詳細は、NuGet.configtrustedSigners セクションの詳細と一致している必要があります。

署名済みパッケージの使用を強制する

署名されたパッケージの使用を強制するには、 Nuget.config ファイルの signatureValidationMode パラメーターを require に設定する必要があります。このファイルは %ProgramFiles%\UiPath\Studio にあります。この設定は、次の 2 つの方法のいずれかで行えます。
  • インストール中の場合、コマンド ラインから ENFORCE_SIGNED_EXECUTION=1 オプションを使用してインストールする。

    たとえば、次のコマンドは、Studio、Windows サービスとしての Robot、ローカル アクティビティのパッケージをインストールして、UiPath 環境でパッケージ署名が使用されるようにします。

    UiPathStudio.msi ADDLOCAL=DesktopFeature,Studio,Robot,RegisterService,Packages ENFORCE_SIGNED_EXECUTION=1UiPathStudio.msi ADDLOCAL=DesktopFeature,Studio,Robot,RegisterService,Packages ENFORCE_SIGNED_EXECUTION=1
  • インストール後の場合、NuGet.config ファイルを手動で編集する。

    インストール後にパラメーターを設定した場合は、以下の操作を行った後に変更が有効になります。

    1. Robot サービスを再起動する。
    2. 既存のすべての NuGet パッケージを %ProgramFiles%\UiPath\Studio\Packages%userprofile%\.nuget\packages から削除する。
    3. Studio/Assistant を再起動する。

信頼できるソースを追加する

特定の証明書で署名されたパッケージをダウンロード、インストール、実行するには、必要な証明書を信頼できるソースとして追加します。

そのためには、インストール フォルダーの NuGet.config ファイルの <trustedSigners> セクションを変更します。
注: 詳しくは、「アクティビティ フィードを追加または削除する」をご覧ください。

信頼できる署名者として UiPath を追加する

インストール フォルダーから NuGet.config ファイルを開き、以下の値を追加します。
<config>
     <add key="signatureValidationMode" value="require" />
</config>
<trustedSigners>
   <author name="UiPath">
      <certificate fingerprint="D179174EBC1E180D656BFB15BE369DEA8A17C178230FAC7771BF5446940C290C" hashAlgorithm="SHA256" allowUntrustedRoot="false"/>
      <certificate fingerprint="ABD1E1BB749DDC96B46A1DBD91B93A2D8B3B5572D1E20A52F6165ED96FC117E0" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
   </author>
   <repository name="UiPathRepository" serviceIndex="https://gallery.uipath.com/api/v3/index.json">
      <certificate fingerprint="D179174EBC1E180D656BFB15BE369DEA8A17C178230FAC7771BF5446940C290C" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
      <certificate fingerprint="ABD1E1BB749DDC96B46A1DBD91B93A2D8B3B5572D1E20A52F6165ED96FC117E0" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
   </repository>
</trustedSigners><config>
     <add key="signatureValidationMode" value="require" />
</config>
<trustedSigners>
   <author name="UiPath">
      <certificate fingerprint="D179174EBC1E180D656BFB15BE369DEA8A17C178230FAC7771BF5446940C290C" hashAlgorithm="SHA256" allowUntrustedRoot="false"/>
      <certificate fingerprint="ABD1E1BB749DDC96B46A1DBD91B93A2D8B3B5572D1E20A52F6165ED96FC117E0" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
   </author>
   <repository name="UiPathRepository" serviceIndex="https://gallery.uipath.com/api/v3/index.json">
      <certificate fingerprint="D179174EBC1E180D656BFB15BE369DEA8A17C178230FAC7771BF5446940C290C" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
      <certificate fingerprint="ABD1E1BB749DDC96B46A1DBD91B93A2D8B3B5572D1E20A52F6165ED96FC117E0" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
   </repository>
</trustedSigners>

信頼できる作成者を追加する

信頼できる作成者を追加するには、%ProgramFiles%\UiPath\Studio\NuGet.config にある NuGet.config ファイルを開き、certificatefingerprinthashAlgorithm を上の例に従って設定します。証明書の指紋について詳しくは、こちらのページをご覧ください。

信頼できるリポジトリを追加する

信頼できるリポジトリを追加する方法は、作成者の追加とほぼ同じですが、serviceIndex も追加する必要がある点が異なります。
信頼できるリポジトリを NuGet.config ファイルに追加する例を次に示します。
<trustedSigners>    
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
</repository>
</trustedSigners><trustedSigners>    
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
</repository>
</trustedSigners>

信頼できる所有者を追加する

リポジトリには、複数の作成者により署名されたパッケージを含むことがあります。この場合、<owners> タグを使用して、信頼できる作成者により署名されたパッケージのみのインストールを許可することができます。
<owners> タグの間に、信頼できる作成者を追加します (以下の例を参照)。
<trustedSigners>
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
<owners>Author1;Author2</owners> 
</repository>
</trustedSigners><trustedSigners>
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
<owners>Author1;Author2</owners> 
</repository>
</trustedSigners>

v2021.2 の動作

v2021.2 のリリースより、パッケージの署名の検証に関する次の設定がインストール時に Nuget.config ファイルに入力されなくなりました。
  • インストール時に Nuget.config ファイルで signatureValidationMode パラメーターが設定されなくなりました。
  • インストール時に、UiPath は Nuget.config ファイルの trustedSigners タグにリポジトリおよび作成者として追加されなくなりました。

影響:

  • パッケージの署名の検証が使用されている場合は、UiPath を含め、信頼できるすべての署名者を手動で NuGet.config ファイルに追加する必要があります。
  • パッケージの署名の検証が使用されていない場合、trustedSigners タグが NuGet.config ファイル内に存在してはなりません。
  • NuGet.org フィードが使用されている場合、accept モードと require モードの両方に追加する必要があります。NuGet はリポジトリ全体を署名済みとしてアナウンスするためです。

この問題を解決するには、UiPath を信頼された署名者として追加する必要があります。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.