Image Access Management

Image Access Management (イメージ アクセス管理) は、Docker Business サブスクリプションで利用可能な新機能です。この機能を利用して、組織のオーナーは、開発者が Docker Hub からプルできるイメージの種類 (Docker Official Images、Docker Verified Publisher イメージ、コミュニティ イメージ) を制御できます。

たとえば、組織の一員である開発者が新しいコンテナ アプリケーションを構築する際に、信頼されていないコミュニティ イメージをアプリケーションのコンポーネントとして誤って使用してしまう可能性があります。このイメージは悪意のあるものである可能性があり、会社にセキュリティ リスクをもたらすことになります。Image Access Management を利用することで、組織のオーナーは、Docker Official Images、Docker Verified Publisher イメージ、または組織の独自のイメージなど、信頼できるコンテンツのみに開発者のアクセスを制限して、このようなリスクを防ぐことができます。

Image Access Management 権限の設定

次のビデオでは、Image Access Management の権限を設定する手順を説明します。


詳細な手順

Image Access Management 権限を設定するには、次の操作を行います。

  1. 組織の管理者として Docker Hub アカウントにログインします。
  2. 組織を選択して、[Organizations] ページの [Settings] タブに移動し、[Org Permissions] をクリックします。

    Image Access Management

  3. Image Access Management を有効にして、以下のイメージ カテゴリの権限を設定します。
    • Organization Images: Image Access Management を有効にすると、組織のイメージは常に許可されます。これらは、組織内のメンバー によって作成されたパブリックまたはプライベート イメージです。
    • Docker Official Images: Hub でホストされている Docker リポジトリの厳選されたセットです。OS リポジトリ、Dockerfiles のベスト プラクティス、ドロップイン ソリューションを提供し、セキュリティ アップデートを適時に適用します。
    • Docker Verified Publisher Images: Docker Verified Publisher プログラムに参加しているパートナーが公開している、開発者向けのセキュアなサプライチェーンに含まれる資格があるイメージです。[Allowed] または [Restricted] 権限に設定できます。
    • Community Images: Image Access Management を有効にすると、このイメージは常に無効になります。これらのイメージは、さまざまな Docker Hub ユーザーが貢献しており、セキュリティ リスクがあるため、信頼できません。

    注意

    Image Access Management は、デフォルトでは無効に設定されています。ただし、組織内の owners チームのメンバーは、設定に関係なく、すべてのイメージにアクセスできます。

  4. イメージ カテゴリーを許可する場合は、[Allowed] を選択します。
  5. 設定が適用されると、メンバーは [Org permissions] ページを読み取り専用で表示できるようになります。

組織内の各メンバーが安全でセキュアな環境でイメージを使用するように、以下の手順を実行して、組織の下でのサインインを強制できます。

  1. Docker Desktop 4.0 以降をダウンロードします。

    注意

    現在、Linux で利用可能な Docker Desktop はありません。ログイン中、Linux ユーザーは Mac や Windows ユーザーと同様の制限を受けますが、ログインを要求する方法がありません。

  2. Windows または Mac で registry.json ファイルを作成してください。

    Windows の場合:

    C:\ProgramData\DockerDesktop\registry.json というファイルを、Docker Desktop を使う開発者が削除・編集できない (システム管理者しか書き込めない) ファイル権限で作成してください。このファイルは JSON 形式で、allowedOrgs キーに 1 つ以上の組織名が含まれている必要があります。

    registry.json ファイルを作成するには、次の操作を行います。

    1. Windows Powershell を管理者として実行します。
    2. 次のコマンドを入力します: cd /ProgramData/DockerDesktop/
    3. メモ帳で、registry.json と入力して、allowedOrgs キーに 1 つ以上の組織名を入力して保存します。

      例:

       { "allowedOrgs": ["mycompany"] } 
    4. Powershell に切り替えて、start . と入力します。

      これで、registry.json ファイルの作成は完了です。

    macOS の場合:

    /Library/Application Support/com.docker.docker/registry.json というファイルを、Docker Desktop を使う開発者が削除・編集できない (システム管理者しか書き込めない) ファイル権限で作成してください。このファイルは JSON 形式で、allowedOrgs キーに 1 つ以上の組織名が含まれている必要があります。ユーザーは、Docker Desktop を使用する前に、サインインして、少なくとも 1 つの組織のメンバーになっている必要があります。

    registry.json ファイルを作成するには、次の操作を行います。

    1. VS Code または任意のテキスト エディターを開きます。
    2. allowedOrgs キーに 1 つ以上の組織名を入力して、Documents に保存します。

      例:

       { "allowedOrgs": ["mycompany"] } 
    3. 新しいターミナルを開いて、次のコマンドを入力します。

      sudo mkdir -p /Library/Application\ Support/com.docker.docker

      注意: 入力を求められたら、ローカル マシンのパスワードを入力します。

    4. 次のコマンドを入力します。

      Documents/registry.json /Library/Application\ Support/com.docker.docker/registry.json

      これで、registry.json ファイルの作成は完了です。