なぜ CentralOne CLI が必要なのか?

CentralOne CLI は、キーボードからコマンドを入力してコンピュータと対話するインターフェースです。グラフィカルユーザーインターフェース(GUI)とは異なり、CLI ツールはマウスや他のグラフィック要素を使用せず、テキストコマンドでさまざまな操作を実行します。

繰り返し操作が必要な場合、CentralOne を使うことで効率化できます。しかし、手動では時間がかかることがあります。シェルを利用して CentralOne CLI スクリプトを作成したり、システムと連携させてワークフローの自動化も可能です。


CentralOne CLI でできること

  • プロジェクトの作成と管理:新しいプロジェクトの作成、プロジェクト設定、メンバーの追加・削除など。
  • キーの作成と管理:新しいキーの生成、権限設定、キーの無効化など。
  • アクセスサービスの作成と管理:新しいアクセスサービスの作成、サービス設定、アクセス権の付与・撤回など。

以下では、CentralOne CLI を使用してキーとアクセスサービスを作成する方法をステップごとに説明します。

インストール

Linux または Mac の場合:

ターミナルで次のコマンドを実行します。

curl -sSL https://releases.pentium.network/mavis/latest/cli.sh | bash

Windows の場合:

以下のリンクからダウンロードしてください。
 

https://releases.pentium.network/mavis/latest/mavis_windows_amd64.zip

CLI の概要

CentralOne CLI は メインコマンド と サブコマンド の組み合わせで構成されています。

ログイン

CentralOne auth login 
  • auth:ユーザー認証の管理
    • login:CentralOne にクライアントをログイン
    • logout:クライアントをログアウト
    • token:現在の認証トークンを表示
  • completion:各種シェル用の自動補完スクリプト生成
    • bash:bash 用
    • fish:fish 用
    • powershell:PowerShell 用
    • zsh:zsh 用
  • 設定(config)
    • current-project:現在選択中のプロジェクトを表示
    • set:特定設定の適用
    • set-project:現在のプロジェクト設定
    • unset:設定解除
    • view:すべての設定を表示
  • プロジェクト管理(project)(projects)
    • add:新しいプロジェクトを作成
    • get:プロジェクト情報を取得
    • list:プロジェクト一覧
    • remove:プロジェクト削除
  • キー管理(secret)
    • add:新しいキーを作成(-p フラグ必須)
    • list:キー一覧(-p フラグ必須)
    • remove:キー削除(-p フラグ必須)
    • update:キー更新(-p フラグ必須)
  • アクセスサービス管理(access-service / as)
    • add:アクセスサービス追加
    • list:サービス一覧
    • remove:サービス削除
    • update:サービス更新(-p フラグ必須)
  • secret コマンドは、シークレットが存在するプロジェクトを指定するために -p または --project フラグが必要です。

補助情報

任意のコマンドに疑問がある場合は、コマンドの末尾に -h を付けるとヘルプ情報と必要なパラメータが確認できます。

パラメータ

ログイン

CentralOne auth login [flags] 
  • 現在のユーザーを CentralOne に認証します。
    • フラグ:
      • -a, --account string:ユーザーのログイン名(必須)
      • -p, --password string:ユーザーのパスワード(必須)
      • -h, --help:ログインコマンドのヘルプ情報を表示

ログアウト

CentralOne auth logout [flags] 

現在のユーザーの CentralOne セッションを終了します。

フラグ:

  • -h, --help:ログアウトコマンドのヘルプ情報を表示

トークン

CentralOne auth token 
  • 現在の認証トークン(アクセストークン)の情報を表示します。

設定(CentralOne config)

CentralOne config [command] [flags] 

CentralOne CLI の設定を管理します。

コマンド:

  • current-project:現在選択中のプロジェクト名を表示
  • set:特定の設定オプションを適用(NAME と VALUE を必要な値に置き換え)
  • set-project --NAME:現在のプロジェクトを設定(NAME をプロジェクト名に置き換え)
  • unset NAME:特定の設定オプションを解除(NAME を解除したいオプション名に置き換え)
  • view:現在のすべての設定オプションを表示

フラグ:

  • -h, --help:config コマンドや特定サブコマンドのヘルプを表示(使用例:CentralOne config [command] --help

プロジェクトコマンド(CentralOne project)

  • CentralOne プロジェクトを管理します。
CentralOne project [command] [flags] 

「newpj」という名前のプロジェクトを追加する場合:

CentralOne project add -p newpj 

エイリアス:

  • list および ls は list コマンドの代わりに使用可能
  • remove および rm は remove コマンドの代わりに使用可能

利用可能なコマンド:

  • add -p string:新しいプロジェクトを作成
  • get -p string:特定プロジェクトの情報を取得
  • list:すべての利用可能なプロジェクトを表示
  • remove:既存プロジェクトを削除

フラグ:

  • -h, --help:プロジェクトコマンドまたは特定サブコマンドのヘルプを表示(使用例:CentralOne project [command] --help
  • -p, --project string:プロジェクト名(get、remove、update コマンドで必須)

キーコマンド(CentralOne secret)

  • CentralOne プロジェクト内のシークレット(機密情報)を管理します。
CentralOne secret [command] [flags]

クイックリファレンス:

「CLI」というプロジェクトに「new-sef」という名前のキーを追加し、アカウントとパスワードを設定する場合:

CentralOne secret add -n new-sef -a account --password ijf38f -p CLI

利用可能なコマンド:

  • add:プロジェクトに新しいシークレットを作成(-a または --password フラグ必須)
    • -a, --account string:アカウント名(任意)
    • -n, --name string:シークレット名(必須)
    • --password string:シークレット値(任意、-a の代替として使用可能)
  • list:現在のプロジェクト内のすべてのシークレットを表示
  • remove:現在のプロジェクトからシークレットを削除
  • update:現在のプロジェクト内の既存シークレットを更新(-a または --password フラグ必須)
    • -a, --account string:アカウント名(任意)
    • -n, --name string:シークレット名(必須)
    • --password string:シークレット値(任意、-a の代替として使用可能)

フラグ:

  • -h, --help:シークレットコマンドまたは特定サブコマンドのヘルプを表示(使用例:CentralOne secret [command] --help
  • -p, --project string:プロジェクト名(すべてのコマンドで必須)

アクセスサービスコマンド(CentralOne as)

CentralOne secret [command] [flags]

クイックリファレンス:

「CLI」というプロジェクトに「newas」という名前のアクセスサービスを追加する場合、
シークレット名は secname、ターゲットデバイス名は device、プロトコルは RDP の例:

CentralOne-cli as add -n  newas --port 22 -s secname -t device -- protocol rdp

利用可能なコマンド:

  • add:アクセスサービスオブジェクトを追加
    • -n, --name string:アクセスサービス名
    • --port int32:ポート番号
    • -p, --project string:プロジェクト名
    • --protocol string:プロトコルタイプ(デフォルトは "ssh"
    • -s, --secret string:シークレット名
    • -t, --targets string:ターゲットサーバー
  • list:現在のプロジェクト内のすべてのアクセスサービスを表示
  • remove:現在のプロジェクトからアクセスサービスを削除
  • update:アクセスサービスを更新
    • -n, --name string:アクセスサービス名
    • --port int32:ポート番号
    • -p, --project string:プロジェクト名
    • -s, --secret string:シークレット名
    • -t, --targets string:ターゲットサーバー(複数の場合は , で区切る)