セキュリティセンターを使用してイメージをスキャンする前に、セキュリティセンターにイメージリポジトリを追加する必要があります。このトピックでは、セキュリティセンターにイメージリポジトリを追加する方法について説明します。
制限
セキュリティセンターには、次のタイプのイメージリポジトリを追加できます。
Container Registry Enterprise Edition および Container Registry Personal Edition のイメージリポジトリ。
これらのイメージリポジトリにあるイメージに関する情報をセキュリティセンターに同期できます。セキュリティセンターは Container Registry Enterprise Edition のイメージのみをスキャンできます。
サードパーティ製イメージリポジトリ:Harbor、Quay、および GitLab リポジトリ。
前提条件
コンテナイメージスキャン機能が有効になっています。
Container Registry のイメージリポジトリをセキュリティセンターに追加する
Container Registry Personal Edition を使用している場合は、インスタンスを作成した後に、Container Registry Personal Edition インスタンスのイメージリポジトリをセキュリティセンターに追加できます。 Container Registry Enterprise Edition を使用している場合は、インスタンスの仮想プライベートクラウド(VPC)アクセス制御リスト(ACL)を構成した後にのみ、Container Registry Enterprise Edition インスタンスのイメージリポジトリをセキュリティセンターに追加できます。詳細については、「VPC ACL を構成する」をご参照ください。
Container Registry Enterprise Edition および Container Registry Personal Edition のイメージリポジトリにあるイメージに関する情報を同期するには、次のいずれかの方法を使用できます。
自動同期:セキュリティセンターは毎日早朝に情報を自動的に同期します。
手動同期:最新の情報を手動で同期できます。詳細については、「コンテナに関するセキュリティ情報を表示する」をご参照ください。
サードパーティ製イメージリポジトリをセキュリティセンターに追加する
イメージリポジトリのアクセス制御ポリシーを作成する場合は、アクセス制御ポリシーで、イメージリポジトリが存在するリージョンの IP アドレスプールからのアクセスが許可されていることを確認してください。
サードパーティ製イメージサービスがデータセンターにデプロイされ、VPC 経由で接続されている場合は、イメージサービス宛てのトラフィックを転送する必要があります。この場合、Elastic Compute Service(ECS)インスタンスを使用して、サードパーティ製イメージサービスがデプロイされているデータセンター内のサーバーにトラフィックを転送する必要があります。
次のサンプルコマンドでは、ECS インスタンスのポート A 上のトラフィックが、IP アドレス 192.168.XX.XX を使用するオンプレミスサーバーのポート B に転送されます。
CentOS 7 のサンプルコマンド
firewall-cmd を使用する
firewall-cmd --permanent --add-forward-port=port=<Port A>:proto=tcp:toaddr=<192.168.XX.XX>:toport=<Port B>iptables を使用する:
ポートフォワーディングを有効にします。
echo "1" > /proc/sys/net/ipv4/ip_forwardポートフォワーディングを構成します。
iptables -t nat -A PREROUTING -p tcp --dport <Port A> -j DNAT --to-destination <192.168.XX.XX>:<Port B>
Windows のサンプルコマンド
netsh interface portproxy add v4tov4 listenport=<Port A> listenaddress=* connectaddress=<192.168.XX.XX> connectport=<Port B> protocol=tcp
セキュリティセンターコンソールにログオンします。上部のナビゲーションバーで、管理するアセットのリージョンを選択します。中国 または 全世界 (中国を除く) を選択できます。
左側のナビゲーションウィンドウで、 を選択します。
[コンテナー] ページで、[イメージ] タブをクリックします。このタブで、[追加][サードパーティ製イメージリポジトリの追加] の下の
をクリックします。[イメージリポジトリの追加] パネルで、次のパラメーターを構成し、[次へ] をクリックします。
パラメーター
説明
プライベートリポジトリタイプ
サードパーティ製イメージリポジトリのタイプ。有効な値:harbor、quay、gitlab。
バージョン
サードパーティ製イメージリポジトリのバージョン。有効な値:
V1:イメージリポジトリのバージョンが 1.X.X の場合は、このオプションを選択します。
V2:イメージリポジトリのバージョンが 2.X.X 以降の場合は、このオプションを選択します。
gitlab を Private Repository Type として選択すると、V1 がデフォルトオプションになり、変更できません。
通信タイプ
セキュリティセンターがサードパーティ製イメージリポジトリとの通信に使用するプロトコル。有効な値:
http
https
ネットワークタイプ
サードパーティ製イメージリポジトリのネットワークタイプ。有効な値:
インターネット
VPC
リージョン ID
サードパーティ製イメージリポジトリが存在するリージョンの ID。
IP
サードパーティ製イメージリポジトリの IP アドレスとポート番号。イメージサービスのトラフィック転送ルールを構成した場合は、IP パラメーターとポート番号を、イメージサービス宛てのトラフィックを転送する ECS インスタンスのものに設定する必要があります。
ポート
ドメイン名
サードパーティ製イメージリポジトリのドメイン名。
速度制限
1 時間あたりにセキュリティセンターに追加できるイメージの数。デフォルト値:10。
重要1 時間あたりに多数のイメージが追加されると、サービスに悪影響が及ぶ可能性があります。ほとんどの場合、このパラメーターを 無制限 に設定することはお勧めしません。
ユーザー名
管理権限を持ち、サードパーティ製イメージリポジトリへのアクセスに使用されるアカウントのユーザー名。
パスワード
アカウントのパスワード。
Quay Namespace Information
このパラメーターは、Private Repository Type を quay に設定した場合にのみ必須です。
Image Repository Organization フィールドに、イメージリポジトリが属する組織の名前を入力します。認証トークン フィールドに、組織に対応する認証トークンを入力します。
[追加] をクリックして、複数のイメージリポジトリが属する組織を指定できます。
GitLab Group Information
このパラメーターは、Private Repository Type を gitlab に設定した場合にのみ必須です。
グループ情報 フィールドに、イメージリポジトリが属するグループの名前を入力します。アクセストークン フィールドに、グループに対応するアクセストークンを入力します。
[追加] をクリックして、複数のイメージリポジトリが属するグループを指定できます。
サードパーティ製イメージリポジトリをセキュリティセンターに追加したら、左側のナビゲーションウィンドウで を選択し、右上隅にある スキャンの設定 をクリックして、追加されたイメージリポジトリに関する情報を表示します。
エラーコード
エラーコード | エラーメッセージ | 解決策 |
FailedToVerifyUsernameOrPwd | ユーザー名またはパスワードが無効なために返されたエラーメッセージ。 | ユーザー名とパスワードが正しいかどうかを確認します。 |
RegistryVersionError | イメージリポジトリのバージョンが無効なために返されたエラーメッセージ。 | イメージリポジトリのバージョンが有効かどうかを確認します。 |
UserDoesNotHaveAdminRole | 管理権限がないために返されたエラーメッセージ。 | harbor リポジトリがデプロイされているサーバーにログオンし、管理権限を取得します。 |
NetworkConnectError | ネットワーク接続がタイムアウトしたために返されたエラーメッセージ。 | ネットワークに接続できるかどうか、ポート 80 またはポート 443 が有効になっているかどうかを確認します。 |
次のステップ
イメージリポジトリがセキュリティセンターに追加されると、イメージリポジトリ内のイメージはセキュリティセンターによって保護されます。イメージに関する情報は、[コンテナー] ページの [イメージ] タブで表示できます。詳細については、「コンテナに関するセキュリティ情報を表示する」をご参照ください。
セキュリティセンターを使用して、イメージリポジトリ内のイメージのリスクをスキャンする必要があります。詳細については、「イメージをスキャンする」をご参照ください。