はじめに
IBM Cloudを用いてチームで開発する際、アカウントを作成したアカウント所有者以外は、アカウント所有者から対象のアカウントに招待してもらうかたちで参加することになります。
アカウントに招待してもらうことで、各ユーザ(またはアクセスグループ)に割り当てられた権限で、アカウント内でサービスを作成したり、利用したりすることができます。
当記事では、自身がアカウント所有者の場合に、他のユーザを自分のアカウントに招待する方法を紹介します。
また、別記事で、自身のユーザ認証をワンタイムパスワードを使用した多要素認証に変更する手順を紹介しましたが、加えて、アカウントに招待したユーザに多要素認証を要求する設定についても紹介します。
自分のアカウントに他のユーザを招待する
IBM Cloudにログイン後、アクセス(IAM)のユーザ管理のページにアクセスします。
ユーザーの招待画面で、招待する人のメールアドレスを入力します。対象者はこのメールアドレスでIBMidを作成する必要があります。
また、「ユーザーへの追加のアクセス権限の割り当て」を展開し、招待する人に対して権限を設定します。
例えば、IAM対応サービスに対しての権限を設定する場合、「IAMサービス」を選択し、設定対象(サービスの種類、アカウントまたはリソース・グループ、リージョン)を選択し、付与する権限(管理者、エディターなど)を指定し、「追加」ボタンをクリックします。
以下の例では、このアカウントにおいて、全てのサービスに対して、全てのリージョンで、管理用の権限として「エディター」を、サービスアクセス用の権限として「ライター」「リーダー」を付与しています。(「ライター」は「リーダー」の上位の権限なので、何故複数選択できる仕様になっているのかはよく分からないですが)
このような手順で、「クラシック・インフラストラクチャー」や「アカウント管理」のパネルでも権限を追加していきます。
必要な権限の追加が終わった後、画面右側のアクセス・サマリーで内容を確認し、「招待」ボタンをクリックします。
これで他ユーザの招待が完了です。
アカウントに招待したユーザに多要素認証を要求する設定
それでは次に、招待したユーザに多要素認証を要求するようにしましょう。
アクセス(IAM)の設定ページにアクセスします。
表示されたダイアログで多要素認証を設定します。「全てのユーザー」、または、「非フェデレーテッド・ユーザーのみ」に設定することが可能です。
フェデレーテッド・ユーザーとは、企業などでIBM Cloudを使用しており、その組織のID認証の仕組みとIBM Cloudでフェデレーションしている場合に、その組織に属するユーザ(対象のドメインのメールアドレスをIBMidとしているユーザ)のことです。フェデレーテッド・ユーザーについては、その組織固有の認証の仕組みを持っているため、そちらを優先したい場合は「非フェデレーテッド・ユーザーのみ」を選択します。
選択後、「更新」ボタンをクリックすることで設定が完了します。
これで、招待したユーザがIBM Cloudにログインする際、多要素認証が求められるようになります。
なお、この設定を実施した後、ログアウトし、再度IBM Cloudにログインしようとしたところ、ワンタイムパスワードの入力画面でGoogle Authenticatorで表示されたコードを入力しても認証エラーとなりました。
再度オーセンティケーターの設定が必要なのかと思い、上記画面の「オーセンティケーター・アプリケーションをセットアップします」リンクをクリックし、送付されたメールに沿って処理を進めましたが、今度は以下のようなエラーとなりました。
既にセットアップ済みのデバイスでワンタイムパスワードを生成しているのですが...。
(このときは、「非フェデレーテッド・ユーザーのみ」にしていたので、招待済みであったフェデレーテッド・ユーザーでログインし、多要素認証の設定を解除して事象を解消できました。)