2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IBM Cloud:Secrets Managerの概要

Last updated at Posted at 2022-05-24

概要

本記事では、Secrets Managerについて記載し、実際にUser/Passwordを登録する手順を記載します。
Secrets ManagerはCertificate Managerの代替としても紹介されていますが、管理対象や機能など異なる部分があるので、ご注意ください。

Secrets Managerの構成

Secrets Managerは以下で構成されます。

  • シークレット
  • シークレット・グループ
  • シークレット・エンジン
    それぞれについて、以下で詳細説明します。

シークレットについて

Secrets Managerは、シークレットと呼ばれる機密情報を管理します。シークレットには、以下の様な、機密システムにアクセスするために使用する情報が該当します。

  • ユーザー認証情報
  • SSL証明書
  • IAMキー (IBM Cloudサービスで使用)
  • 外部APIキー
    Secrets Managerでは、メタデータとシークレットの値で管理されます。
    以下の画像はシークレットのjson表記です。

シークレット・グループについて

Secrets Managerでは、グループを作成してシークレットを編成し、チームの誰がグループに属するシークレットにアクセスできるかを制御できます。シークレット・グループでは、Manager、Writer、Secrets Reader、Readerの4種類で分類されます。

  • Manager:Writer以上の権限を持ち、シークレットグループの管理、シークレットエンジンの設定、シークレットポリシーの管理など、特権的なアクションを完了することができます。
  • Writer:シークレットの作成と編集を含む、SecretsReaderの役割を超える権限を持ちます。(シークレットグループの作成、シークレットのローテーションポリシーの管理、シークレットエンジンの設定を行うことはできません。)
  • SecretsReader:読み取り専用のアクションを実行することができ、また、シークレットに関連付けられたシークレットデータにアクセスすることができます。(シークレットを作成したり、既存シークレットの値を変更したりすることはできません)
  • Reader:サービス固有のリソースを表示するなど、Secrets Manager内で読み取り専用のアクションを実行できます。Readerは、シークレットに関連付けられたメタデータにのみアクセスすることができます。
    必要でなくなったシークレット・グループは削除できます。

シークレット・エンジンについて

シークレット・エンジンは、パスワードや API キーなど特定のタイプのシークレットのバックエンドとして機能します。シークレット・エンジンは、タイプに応じてデータを保管したり、オンデマンドでシークレットを生成したりすることができます。
一部のエンジンは、インスタンスで使用するには事前の構成が必要です。例えば、TLS 証明書を注文しようとしたり、初めて IAM 資格証明を作成しようとするときに、エンジンの構成が必要だというメッセージが表示されます。
image.png

シークレットを登録してみる

Secrets Managerインスタンスの作成

IBM Cloud コンソールで、左上の検索ボックスより「secrets」を入力し、"Secrets Manager"を選択します。
image.png
必要項目を入力し、"Create"をクリックすると作成されます。

シークレット・グループの作成

IBM Cloud コンソールで、左上のハンバーガーメニューより「リソース・リスト」をクリック、サービスのリストからSecrets Manager のインスタンスを選択します。
「シークレット・グループ」 タブをクリックし、「作成」 をクリックします。

名前の入力し、「作成」 をクリックすると作成されます。

シークレット・グループへの登録

Secrets Managerインスタンスページより、「シークレット・グループ」 タブをクリックすると先ほど作成したシークレット・グループが表示されます。
先ほど作成したシークレット・グループをクリックし 「Manage access」 をクリックします。
image.png
アクセスグループを選択し、対象と権限を設定し、「Add」 をクリックします。
同様に追加したいアクセスグループを全て追加したのち、「review」 をクリックすると対象ユーザーがアサインされます。
Screen Shot 2022-05-17 at 16.32.06.png

シークレットの作成

Secrets Managerインスタンスページより、「シークレット」 タブをクリックし、「追加」 をクリックします。
image.png
対象のシークレット種別を選択します。(今回はUser Credentialsを選択します)
Screen Shot 2022-05-17 at 16.43.04.png
シークレット名を入力、シークレット・グループを選択します。
管理したいusernameとpasswordを入力します。
image.png
完了すると下記画像のような呼び出し方法が表示され、登録が完了しました。(こちらは後からでも確認できます)

シークレットを呼び出してみる

先ほど表示されていたCLIをコピペし、登録したシークレットを取得してみます。

# ibmcloudコマンドでログイン
$ ibmcloud login -apikey xxxxxxxxxxxxxxxx -r jp-tok
API endpoint: https://cloud.ibm.com
Authenticating...
OK
...
# secrets manager プラグインをインストール
$ ibmcloud plugin install secrets-manager
Looking up 'secrets-manager' from repository 'IBM Cloud'...
Plug-in 'secrets-manager[sm] 0.1.19' found in repository 'IBM Cloud'
Attempting to download the binary file...
 11.11 MiB / 11.11 MiB [============================================] 100.00% 2s
11648192 bytes downloaded
Installing binary...
OK
Plug-in 'secrets-manager 0.1.19' was successfully installed into /Users/jp419713/.bluemix/plugins/secrets-manager. Use 'ibmcloud plugin show secrets-manager' to show its details.
# 登録したパスワードを取得
$ ibmcloud secrets-manager secret --secret-type "username_password" --id "xxxxxxxxxxxxxxxx" --service-url https://xxxxxxxxxxxxxxxx.us-south.secrets-manager.appdomain.cloud
...
name                          test-user-credentials
id                            xxxxxxxxxxxxxxxx
secret_type                   username_password
secret_group_id               xxxxxxxxxxxxxxxx
state_description             Active
description                   None
labels                        None
expiration_date               None
secret_data                   password="12345678"
                              username="testuser"
$

取得できました!!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?