株式会社コーソル

コーソルDatabaseエンジニアのブログ

技術ブログ

OCID – OCIリソースの識別子

渡部です。これは、 (全部俺) Oracle Cloud Infrastructure Advent Calendar 2018 の4日目のエントリです。

OCIの構成要素であるリソースにはOCIDと呼ばれる識別子が付与されています。

1204_ocid.png

OCIのWeb管理コンソールのみを使用して管理操作を行う場合は、さほどOCIDを意識する必要はありませんが、 OCI CLIと呼ばれるコマンドラインの管理ツールを使用してOCIの管理操作を行う場合は、OCIDを意識する 必要がでてきます。

以下にOCI CLIを使用してIAMユーザーのOCIDを取得し、取得したOCIDを使用して、 IAMユーザーに対して操作(グループへの参加)を行う例を示します。 (OCI CLIについては後ほど触れる予定です)

$ # ユーザーを一覧表示
$ oci iam user list --all -c ${TENANT_OCID} --query "data[*].{id:id, name:name}" --output=table
+------------------------------------------------------------------------------+-----------------------+
| id                                                                           | name                  |
+------------------------------------------------------------------------------+-----------------------+
| ocid1.user.oc1..aaaaaaaa7zi..........................................ixa | admin01               |
| ocid1.user.oc1..aaaaaaaax2o..........................................f4q | noprivs01             |
+------------------------------------------------------------------------------+-----------------------+
$ # グループを一覧表示
$ oci iam group list --all -c ${TENANT_OCID} --query "data[*].{id:id, name:name}" --output=table
+-------------------------------------------------------------------------------+-----------------------+
| id                                                                            | name                  |
+-------------------------------------------------------------------------------+-----------------------+
| ocid1.group.oc1..aaaaaaaauqb..........................................u3q | Administrators        |
| ocid1.group.oc1..aaaaaaaazzp..........................................6oa | testgroup01           |
+-------------------------------------------------------------------------------+-----------------------+
$ # グループにユーザーを追加
$ GROUP_OCID=ocid1.group.oc1..aaaaaaaauqb..........................................u3q
$ USER_OCID=ocid1.user.oc1..aaaaaaaa7zi..........................................ixa
$ oci iam group add-user --user-id=${USER_OCID} --group-id=${GROUP_OCID}
{
  "data": {
    "compartment-id": "ocid1.tenancy.oc1..aaaaaaaa6sl..........................................faa",
    "group-id": "ocid1.group.oc1..aaaaaaaauqb..........................................u3q",
    "id": "ocid1.groupmembership.oc1..aaaaaaaad54..........................................c4q",
    "inactive-status": null,
    "lifecycle-state": "ACTIVE",
    "time-created": "2018-11-29T03:35:41.252000+00:00",
    "user-id": "ocid1.user.oc1..aaaaaaaa7zi..........................................ixa"
  },
  "etag": "1e079d4cf2d7b7553157b3ab67ec10b22f204317"
}

このようなOCIDですが、いかんせん長すぎる気がしませんか?

ただ、AWSで(おそらくリソースIDの桁不足により)リソースIDが8桁から17桁に拡張された例があります。 あとからこのような羽目になるぐらいなら、あらかじめ長くして置いたほうが良かろう・・・という判断なのかもしれません。

なお、OCIの管理コンソールにおけるOCIDの表示はうまく工夫されています。 デフォルトとではOCIを短縮表示して邪魔にならないようにしつつ、 "Show"リンクをクリックするとフル表示になります。 また、"Copy"リンクをクリックするとOCIDがクリップボードにコピーされます。

1204_ocid_show.png 1204_ocid_copy.png

プロフィール

On7tWW6m1Ul4

渡部 亮太

・Oracle ACE
・AWS Certified Solutions Architect - Associate
・ORACLE MASTER Platinum Oracle Database 11g, 12c 他多数

カテゴリー

アーカイブ