管理者
管理者の役割は、システムで最高のアクセス許可レベルを持っています。管理者はすべての機能を使用でき、すべてのシステムデータ、ユーザーデータ、およびリポジトリデータにアクセスできます。
機能
管理者にはいくつかの特別な機能があります。それらの中には次のものがあります。
- アカウントの管理
管理者は、コマンドラインツールを使用してシステムからユーザーアカウントを作成および削除することができます。管理者は、他のアカウントに管理者権限を付与または取り消すこともできます。 - リポジトリの詳細を編集する
管理者は、cronジョブやシークレットなどのリポジトリ設定を変更できます。管理者はシークレットを表示できません。管理者は、個々のリポジトリのタイムアウトを増減することもできます(デフォルトのタイムアウトは60分です)。 - リポジトリの信頼できるフラグを編集する
管理者は、リポジトリの信頼モードを有効または無効にできます。トラステッドモードが有効になっている場合、リポジトリパイプラインは、特権コンテナーの起動やホストマシンボリュームのマウントなどの特権機能にアクセスできます。 - システムエンドポイント
管理者は、システムメトリクス、キュー管理、ユーザー管理エンドポイントなど、制限されたAPIエンドポイントにアクセスできます。
管理者は以下を実行できません。
- 任意のリポジトリを有効にする
管理者は、ソース管理管理システム(githubなど)のリポジトリへの管理者アクセス権がない限り、リポジトリを有効にすることはできません。ウェブフックを登録するには、リポジトリへの管理者アクセスが必要です。
プライマリ管理者を作成する
Droneサーバを構成する場合、以下の環境変数を渡すことで初期管理アカウントを作成できます。この変数は、アカウントのユーザー名(githubハンドルなど)と管理フラグをtrueに設定します。
DRONE_USER_CREATE=username:octocat,admin:true
既存のユーザーにプライマリ管理者の役割を付与する必要がある場合は、既存のユーザー名を指定できます。Droneはアカウントを更新し、サーバの再起動時に管理者の役割を付与します。
追加の管理者を作成する
コマンドラインツールを使用して管理者アカウントを作成できます。インストール手順については、コマンドラインツールのドキュメントを参照してください。
- 新しい管理者アカウントを作成します。
$ drone user add octocat --admin
- または、既存のアカウントに管理者の役割を付与します。
$ drone user update octocat --admin