アクセストークンの管理
Docker Hub では、パスワードに代わるものとして個人用のアクセストークンを利用することができます。 このトークンを使って Docker CLI から Docker Hub イメージにアクセスできます
個人用のアクセストークンを利用すると、パスワードに比べて以下の利点があります。
- アクセストークンの前回利用状況を確認できます。 したがって何か疑わしい履歴が残っていたら、アクセストークンを無効化したり削除したりすることができます。
- アクセストークンを使うと、ログインアカウントに対する管理操作、たとえばパスワードの変更といったことを行うことはできません。コンピューターが危険にさらされた際に、アカウントを保護する目的があります。
Docker provides a Docker Hub CLI tool (currently experimental) and an API that allows you to interact with Docker Hub. Browse through the Docker Hub API documentation to explore the supported endpoints.
重要
アクセストークンはパスワードと同様に、極秘の取り扱いとしてください。 トークンは安全な場所に保存するようにしてください (たとえば資格情報マネージャー内など)。
アクセストークンは複数環境で利用する際に活用できます。 複数のトークンを生成しておき、環境ごとにトークンを使い分けます。 不要になったらいつでも削除することができます。
メモ
利用アカウントに対して 2要素認証(two-factor authentication; 2FA) を有効にしている場合は、個人用のアクセストークンを少なくとも 1 つ生成しておかなければなりません。 これを行っていないと、Docker CLI を使ったアカウントへのログインができません。
アクセストークンの生成
以下のビデオでは、アクセストークンの管理手順について示しています。
アクセストークンを生成するには以下を行います。
-
hub.docker.com にログインします。
-
画面右上に表示されている自身のユーザー名をクリックして、Account Settings を実行します。
-
Security > New Access Token を実行します。
-
トークンに対する説明を書きます。 トークンをどのように用いるべきか、トークンの利用目的は何か、といったことを書きます。 ドロップダウンメニューからは、以下のようなアクセス権限が確認できます。
The access permissions are scopes that set restrictions in your repositories. For example, for Read & Write permissions, an automation pipeline can build an image and then push it to a repository. However, it can not delete the repository.
-
画面上に表示されるトークンをコピーして保存します。 この表示画面を閉じてしまうと、トークンを知ることはできなくなります。
アクセストークンの利用
Docker Hub のパスワードを必要とする場面では、どこでもアクセストークンを利用することができます。
Docker CLI クライアントからログインする場合(docker login --username <ユーザー名>
)、ログインコマンドにおけるパスワード入力は行いません。
パスワードの入力プロンプトには、代わりにトークンを入力します。
メモ
2要素認証(two-factor authentication; 2FA) を有効にしている場合、Docker CLI によりログインを行うには、個人用アクセストークンを用いる必要があります。 2FA の利用は任意ですが、その方がより安全な認証方式です。
既存トークンの修正
トークンは必要に応じて、名称変更、有効無効化、削除を行うことができます。
-
Account Settings > Security の下にトークンを表示します。 このページでは、すべてのトークンの概要を示します。 またツールバーを見れば、アクティブまたは非アクティブなトークンの数を確認できます。
-
トークンを選択して Delete や Edit をクリックします。 あるいはトークンが表示されている行の一番右にあるメニューを用いて、編集画面を開きます。 複数のトークンを選択状態にして、一括で削除することもできます。
-
トークンを修正した後は、Save(保存)ボタンをクリックして、変更を保存します。