- 概要
- UiPath CLI
- Azure DevOps 拡張機能
- Jenkins プラグイン

CI/CD 連携ユーザー ガイド
認証とスコープ
すべてのソリューション コマンドでは、Orchestrator で設定した 外部アプリケーション を通じた認証が必要です。スタンドアロン プロジェクト タスクとは異なり、ソリューションではマシン認証や対話型の認証方法はサポートされていません。
認証要件
ソリューション コマンドは、 外部アプリで OAuth2 を介して排他的に認証します。
ソリューションの CLI コマンドを実行する前に、[Orchestrator の管理] で外部アプリケーションを適切なスコープで設定する必要があります。
必要な OAuth スコープ
ソリューションでは、標準の Orchestrator のスコープとは異なる、専用のアプリケーション スコープのセットを使用します。すべてのソリューション操作に対して、以下のスコープを持つ外部アプリを設定します。
CI/CD シークレットのコピーと貼り付けの形式:
AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write
AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write
この 1 行のスペース区切りの形式は、次の場合に直接使用できます。
- Azure DevOps 変数グループ
- GitHub リポジトリのシークレット
- Jenkins 資格情報ストア
注: 以下の操作はローカルで実行されるため、認証は必要ありません。
restore- 依存関係をローカルに復元しますanalyze- プロジェクトをローカルで検証しますpack- パッケージをローカルに作成します
一般的な認証パラメーター
All Solution commands that interact with Orchestrator require these parameters. You can use either the short form or the long form (alternative) for each:
| Short form | Long form (alternative) | 説明 | 例 |
|---|---|---|---|
-U | N/A | Orchestrator URL | See Orchestrator URL below |
-T | N/A | Orchestrator のテナント名 | DefaultTenant |
-A | --accountForApp | Organization (account) name | myorg |
-I | --applicationId | 外部アプリ ID | 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
-S | --applicationSecret | 外部アプリケーション シークレット | **** (安全を確保) |
--applicationScope | N/A | Scope list (see above) | Above |
--traceLevel | N/A | ログ レベル | InformationVerbose、Warning |
Example with long-form parameters:
uipcli solution upload-package ./packages/MySolution.1.0.0.zip \
-U https://cloud.uipath.com/ \
-T DefaultTenant \
--accountForApp myorg \
--applicationId 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--applicationSecret **** \
--applicationScope "AutomationSolutions Solutions.Packages Solutions.Packages.Write"
uipcli solution upload-package ./packages/MySolution.1.0.0.zip \
-U https://cloud.uipath.com/ \
-T DefaultTenant \
--accountForApp myorg \
--applicationId 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--applicationSecret **** \
--applicationScope "AutomationSolutions Solutions.Packages Solutions.Packages.Write"
Orchestrator URL
Use the base URL only for the Orchestrator instance. Do not include organization, tenant, or path segments (for example, do not use https://cloud.uipath.com/myorg/DefaultTenant/orchestrator_). Organization and tenant are passed separately with -A and -T.
- UiPath Automation Cloud: Use the cloud base URL (for example
https://cloud.uipath.com/orhttps://staging.uipath.com/). - Automation Suite (on-premises or private cloud): Use the base URL of your Automation Suite instance (for example
https://uipath.yourcompany.com/). The URL is the same as for package commands. Only the base address of your Orchestrator (or Automation Suite) differs from the public cloud.
When using external application authentication without specifying the --applicationScope parameter, the CLI automatically applies the required scopes for Solution commands.
外部アプリケーションを設定する
ソリューションの外部アプリケーションを作成するには、以下の手順を実行します。
- Orchestrator に管理者としてログインします。
- [管理] → [外部アプリケーション] に移動します。
- [ アプリケーションを追加] をクリックします。
- 名前を入力します (例:
CI-CD-Solutions)。 - アプリケーションの種類として [ 機密アプリケーション ] を選択します。
- 上記の必要なスコープを追加します。
- アプリケーション ID とシークレットをコピーし、CI/CD シークレット マネージャーに安全に保存します。
外部アプリケーションの構成手順について詳しくは、「 外部の OAuth アプリケーションを管理する」をご覧ください。
カスタム Orchestrator フィードを使用する
復元操作中に Orchestrator のカスタム アクティビティ フィードを使用する場合は、次の代替パラメーターを使用します。
| 標準パラメータ | カスタム フィード パラメーター |
|---|---|
--applicationScope | --libraryOrchestratorApplicationScope |
-T (テナント) | --libraryOrchestratorTenant |
-U (URL) | --libraryOrchestratorUrl |
| (フォルダー) | --libraryOrchestratorFolder |
例:
uipcli solution restore <solution-path> \
-A myorg \
-I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
-S **** \
--libraryOrchestratorApplicationScope "OR.Folders OR.Settings.Read" \
--libraryOrchestratorTenant DefaultTenant \
--libraryOrchestratorUrl https://cloud.uipath.com/ \
--libraryOrchestratorFolder MyFolder
uipcli solution restore <solution-path> \
-A myorg \
-I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
-S **** \
--libraryOrchestratorApplicationScope "OR.Folders OR.Settings.Read" \
--libraryOrchestratorTenant DefaultTenant \
--libraryOrchestratorUrl https://cloud.uipath.com/ \
--libraryOrchestratorFolder MyFolder
セキュリティのベスト プラクティス
- パイプライン、YAML、またはスクリプトにシークレットをハードコーディングしないでください。
- CI/CD プラットフォームのシークレット管理を使用する:
- Azure DevOps: シークレット変数を持つ変数グループ。
- GitHub Actions: リポジトリまたはOrganizationのシークレット。
- Jenkins: 資格情報ストア。
- 外部アプリのシークレットを定期的にローテーションします。
- 環境 (開発、テスト、運用) ごとに個別の外部アプリを使用します。
- 最小限の特権スコープを適用する - 各パイプラインに必要な権限のみを付与します。