これからの作業を行なうコンパートメントを作成します。その後にオブジェクト・ストレージを操作するAPIの呼び出しに使用するユーザーを作成します。
以下より、作成手順を記述します。
コンパートメントの作成
OCIコンソールにあるハンバーガー・アイコンをクリックしてメニューを表示させ、アイデンティティとセキュリティよりコンパートメントを呼び出します。
以下の作成フォームが開きます。
作成するコンパートメントの名前にAPEXと入力し、適当な説明を入力します。親コンパートメントとしてルートを選択します。
コンパートメントの作成をクリックします。
OCIコンソールよりアイデンティティのグループを開き、グループ一覧の画面にあるグループの作成をクリックします。
作成するグループの名前にAPEXObjectManagersと入力し、適当な説明を入力します。
作成をクリックします。
作成するポリシーの名前はAPEXObjectManagementPoliciesとします。ポリシーを作成するコンパートメントにルートを選択します。ポリシー・ビルダーの手動エディタの表示をONにし、以下の2行のポリシー・ステートメントを記述します。
Allow group APEXObjectManagers to read buckets in compartment APEX
Allow group APEXObjectManagers to manage objects in compartment APEX
OCIコンソールよりアイデンティティのユーザーを開き、ユーザー一覧の画面にあるユーザーの作成をクリックします。
ユーザーの作成フォームが開きます。
IAMユーザーを選択し、名前としてapex_api_agentを入力します。
作成をクリックします。
リソースのAPIキーを開き、APIキーの追加をクリックします。
APIキーを追加する方法は、2種類あります。
- APIキー・ペアの生成を選択し、ブラウザで生成された秘密キーのダウンロードを行う。
- 手元で公開キーのペアを作成し、公開キーをアップロードするか貼付ける。
公開キー・ファイルのアップロードと貼付けは、手順が違うだけで追加されるAPIキーは同じです。
openssl genrsa -out apex_oci_api_key.pem 2048
chmod 400 apex_oci_api_key.pem
chmod 400 apex_oci_api_key.pem
% openssl genrsa -out apex_oci_api_key.pem 2048
Generating RSA private key, 2048 bit long modulus
...............................................................+++++
...........................................+++++
e is 65537 (0x10001)
% chmod 400 apex_oci_api_key.pem
%
APIキーとして登録する公開キーを取り出します。公開キーを含むファイルはapex_oci_api_key_public.pemになります。
% openssl rsa -pubout -in apex_oci_api_key.pem -out apex_oci_api_key_public.pem
writing RSA key
%
このファイルを選択するか、内容を貼り付つけます。その後に、追加をクリックしてAPIキーを追加します。
秘密キーのダウンロードをクリックし、秘密キーをファイルに落とします。同じ秘密キーを使用したAPIキーを再度追加できるように、公開キーのダウンロードを行い秘密キーと公開キーのペアを保持しておくと便利です(すでに実行済みですが、秘密キーのファイルから取り出すことも可能です)。
ダウンロードした秘密キーのファイル名をprivate.pem、公開キーのファイル名をpublic.pemに変更した前提で、後処理の手順を説明します。
% openssl rsa -in private.pem -out apex_oci_api_key.pem
writing RSA key
%
生成されたファイルapex_oci_api_key.pemは、先ほどopenssl genrsaコマンドで作成したファイルと同じフォーマットになります。
公開キーのファイルのフォーマットに違いはないため、apex_oci_api_key_public.pemと名称を変更すれば、同様に取り扱うことができます。
% mv public.pem apex_oci_api_key_public.pem
%
どちらの方法でもAPIキー・ペアの生成を行った後に、追加をクリックします。
コピーを保存したのち、閉じるをクリックします。
フィンガープリントについては、以下のコマンドでも生成できます。
% openssl rsa -pubout -outform DER -in apex_oci_api_key.pem | openssl md5 -c
writing RSA key
be:6d:58:c3:9d:c9:93:3d:de:93:03:95:a6:17:b1:b6
%
APEXのWeb資格証明を作成する際に、使用する秘密キーがOCIのユーザーに追加されているAPIキーに対応しているかどうか、このフィンガープリントを使って確認できます。
APIキーが追加されると、以下のようにフィンガープリントが表示されます。
APIキーの追加時に表示された構成ファイルの内容は、APIキーの一覧の構成ファイルの表示を実行して、再度表示させることができます。
ユーザーをグループに追加
作成したユーザーapex_api_agentをグループAPEXObjectManagersに追加します。
リソースからグループを開き、ユーザーをグループに追加をクリックします。
グループとしてAPEXObjectManagersを選択し、追加をクリックします。
ユーザーapex_api_agentがグループAPEXObjectManagersに追加されました。
続く