2.7.4 ログイン/ログアウト
IdP連携によるOps Iへのログインとログアウトについて説明します。
IdP連携でOps Iにログインするための前提条件を以下に示します。
- IdPのユーザー情報が取得できること
IdPとOps Iのユーザーが連携するためには、それぞれのユーザーの属性情報のマッピングが必要です。以下はマッピングで必須の属性情報になります。値が不足していた場合ログインエラーになります。
マッピングの詳細については「属性/グループ/ロールのマッピング」を参照してください。- メールアドレス
- 名前(名)
- 苗字(姓)
- IdPユーザーのメールアドレスがOps Iのメールアドレスの入力可能文字の条件を満たしていること
使用可能文字の条件を満たしていない場合、ログインエラーとなります。入力可能文字については「入力可能文字に関する注意事項」を参照してください。 - IdPと連携済みのOps Iユーザー、またはIdPと連携するOps Iのユーザーが有効であること
ユーザープロファイルで、[無効]状態のユーザーはログインすることはできません。
[無効]状態のユーザーと削除した(存在しない)ユーザーの状態は異なります。「ユーザーデータ再利用方針」は削除したユーザーに関する操作のため、[別のユーザーとしデータを引き継がない]を選択した場合でも[無効]状態のユーザーはログインできません。
(1)ログイン
IdP連携で認証に使用するプロトコルのOIDCもしくはSAMLの接続設定を追加すると、Ops Iのログイン画面に追加した接続設定がボタンで表示されます(設定が有効になっている接続設定のみ)。IdP連携でログインする場合は、使用するIdPの接続設定のボタンを選択します。
ログイン画面でIdPのボタンを選択後は、ユーザーがIdPと連携済みか否か、IdPとOps Iどちらからログインするかなどの条件によって、ログインの操作が異なります。
異なるログイン操作のパターンは以下の通りです。
-
IdPとOps Iのユーザーが連携していない場合
- Ops IにIdPのユーザーが存在しない場合に、IdPでログインする
- IdPとOps Iに同一と判断されるユーザーが存在する場合に、IdPでログインする
-
IdPとOps Iのユーザーが連携済みの場合
- IdPとOps Iのユーザーが連携済みの場合に、IdPでログインする
- IdPとOps Iのユーザーが連携済みの場合に、Ops Iでログインする
IdPとOps Iのユーザーが連携済みかどうかは[ユーザー詳細]画面で確認できます。詳細については「ユーザーの詳細情報確認」を参照してください。[ユーザー詳細]画面では、ユーザーとIdPの連携解除も行えます。
また、使用するIdPが1つの場合、デフォルトで使用するIdPを設定することができます。これにより、ログイン画面で接続設定を選択する行程を省略することができます。詳細については「デフォルトのアイデンティティプロバイダー」を参照してください。
以下に、それぞれのログイン操作のパターンの詳細について説明します。
【Ops IにIdPのユーザーが存在しない場合に、IdPでログインする】
Ops IにIdPのユーザーが存在しない状態で、IdPでログインした場合の流れを以下に示します。
(図)Ops IにIdPのユーザーが存在しない場合に、IdPでログインする
ユーザー名がOps Iの入力可能文字の条件を満たしていない場合、自動的にユーザー名が変換されます。変換内容については「ユーザー名の変換」を参照してください。
ユーザー名、またはメールアドレスが過去に削除した(OTOBOに情報が存在する)ユーザーと一致した場合は、ユーザーデータ再利用方針で設定した内容にしたがって、ユーザー情報を引き継ぐか否かが決まります。詳細については「ユーザーデータ再利用方針」を参照してください。
【IdPとOps Iに同一と判断されるユーザーが存在する場合に、IdPでログインする】
IdPとOps Iに同一と判断されるユーザーが存在する状態で、IdPでログインした場合の流れを以下に示します。ユーザー名かメールアドレスのどちらか、またはその両方が一致した場合に、同一ユーザーと判断されます。
以下のユーザーはOps Iの予約ユーザーのため、同一と判断された場合でもログインできません。
- ユーザー名:system
メールアドレス:system.opsi@example.com - ユーザー名:jp1cs_user
メールアドレス:jp1cs.opsi@example.com
(図)IdPとOps Iに同一と判断されるユーザーが存在する場合に、IdPでログインする
- メールでの確認
Ops Iのユーザー情報のメールアドレスにメールが送信されるので、メールに記載されているリンクにアクセスしてOps Iにログインします。 - ユーザー名とOps Iのパスワードで確認
Ops Iのユーザー名とパスワードでOps Iにログインします。すでに他のIdPと関連づいている場合は、そのIdPでログインします。
【IdPとOps Iのユーザーが連携済みの場合に、IdPでログインする】
IdPのユーザーとOps Iのユーザーが連携済みの場合にIdPでログインする流れを以下に示します。
(図)IdPとOps Iのユーザーが連携済みの場合に、IdPでログインする
【IdPとOps Iのユーザーが連携済みの場合に、Ops Iでログインする】
IdPのユーザーとOps Iのユーザーが連携済みの場合にOps Iでログインする流れを以下に示します。
(図)IdPとOps Iのユーザーが連携済みの場合に、Ops Iでログインする
IdPとOps Iのユーザーが連携していない状態の時にIdPでログインすると、Ops Iにユーザーを作成、またはOps Iのユーザーと連携します。この時、IdPから取得したユーザー名がOps Iの入力可能文字の条件を満たしていない場合、ユーザー名が自動的に変換されます。変換内容を以下に示します。
- 大文字は小文字に変換する
- 入力可能文字以外の文字を"_"に変換する
- 連続する記号を1文字目だけに変換する
- 先頭・最後の記号を削除する
- 最小文字数未満の場合、最小文字数を満たすまで最後に"1"を追加する
- 最大文字数を超える場合、最大文字数でトリミングする
異なるIdPのユーザーが同一のユーザー名に変換された場合、2番目以降に変換されたユーザーはログインできません。
入力可能文字の詳細については「入力可能文字に関する注意事項」を参照してください。
注意事項
Ops IとIdPのユーザーが同一ユーザーかの判断は、ユーザーがIdPと連携前か連携済みかで判断する条件が異なります。
- ユーザーがIdPと連携前の場合
メールアドレス、ユーザー名の順に一致するユーザーが存在するかで判断します。
メールアドレスが一致するユーザーが存在するかを確認し、存在しなかった場合に、ユーザー名が一致するユーザーが存在するかを確認します。 - ユーザーがIdPと連携済みの場合
OIDCによる連携の場合は、OIDCが内部で持つUUIDによって同一ユーザーと判断します。これにより、IdP側でユーザー名やメールアドレスが変更されても、連携が解除されることなく同一ユーザーと判断することができます。
SAMLの場合は、SAMLの接続設定で[NameIDポリシー]、[プリンシパルの追跡に使用する情報]、および[属性名またはフレンドリ名]項目に設定した内容に依存します。
(2)ログアウト
IdPでOps Iにログインした場合に、Ops Iからログアウトする方法について以下に説明します。以下の方法ではIdPからはログアウトしません。
Ops Iは、Ops I画面の右上の表示アイコン[個人]-[ログアウト]からログアウトすることができます。ログアウト処理が実施されると、[ログアウト完了]画面が表示されます。[ログアウト完了]画面のログイン画面に戻るボタンをクリックすると、Ops Iのログイン画面に遷移します。この時、[デフォルトのアイデンティティプロバイダー]を設定している、かつIdPにログイン状態の場合は、自動的にOps Iに再ログインします。
[デフォルトのアイデンティティプロバイダー]については、「デフォルトのアイデンティティプロバイダー」を参照してください。
注意事項
IdP連携によるシングルサインアウトには対応していません。IdPでシングルサインアウトの設定は行わないでください。