# SAML シングルサインオン

:::info
本チュートリアルで扱う機能は、SAML シングルサインオンを利用可能なご契約いただいた組織でのみご利用いただけます。
:::

Shisho Cloud では SAML を利用したシングルサインオン機能を提供しています。

設定画面より IdP を登録することで、組織内のユーザアカウントを使用してサービスを利用できます。

本ドキュメントではいくつかの外部 IdP サービスを用いた利用手順を説明します。

## Okta と連携する (メタデータ URL を使用する方法)

管理画面より SAML 2.0 のアプリケーションを作成しましょう。

:::note
作成時に入力が必須な項目があります。それらの項目は仮の値を入力し後ほど変更しましょう。
:::

作成したアプリケーションの Sign On タブよりメタデータ URL を確認してください。

![](/docs/ja/_md-assets/5609cfd1ce-okta_metadata_url.png)

Shisho Cloud の設定画面よりシングルサインオンの設定をしましょう。確認したメタデータ URL とログインに使用する Eメールドメイン を入力してください。

![](/docs/ja/_md-assets/6b0836a4fc-okta_sso_register_ja.png)

追加ボタンを押下し正常に完了すると、作成した設定が **保留状態** であることを確認できます。

![](/docs/ja/_md-assets/4a07cc3bff-shisho_sso_configs.png)

続いて Okta で作成したアプリケーションの設定を変更します。

`Single sign-on URL` にはコールバック URL を設定してください。`Audience URI` には以下の値を設定してください。

```
https://id.cloud.shisho.dev/realms/cloud
```

![](/docs/ja/_md-assets/4eb4da8881-okta_saml_setting01.png)

続いて `Attribute Statements` を設定します。以下の画像を参考にしてください。

:::warning
Shisho Cloud では以下の値を使用するため、Okta で使用されている値が適切に割り当てられるように設定をしてください。

- **email**
- **lastName**
- **firstName**
  :::

![](/docs/ja/_md-assets/302ac6b658-okta_saml_setting02.png)

ここまで完了しましたら以下の情報を Shisho Cloud 側に共有してください。

- **ログインに使用する Eメールドメイン**
- **ID/パスワードでのログインを併用するユーザ**

:::warning
IdP の障害時など、シングルサインオンを使用できない場合でも ID/パスワード でログインできるユーザを指定してください。
:::

シングルサインオン設定が有効化されると、`状態` のアイコンが緑のチェックマークに切り替わります。

![](/docs/ja/_md-assets/a3a1ae0395-okta_register_done.png)

ここまで完了すると、指定された Eメールドメインでログインした際、自動的に IdP の認証画面にリダイレクトされます。

---

## Google Workspace を利用する (メタデータ XML ファイル を使用する方法)

管理画面よりカスタム SAML アプリの追加をし、メタデータ XML ファイルをダウンロードしてください。

![](/docs/ja/_md-assets/7008de3545-gw_register_01_ja.png)

Shisho Cloud の設定画面よりシングルサインオンの設定をしましょう。

ログインに使用する Eメールドメインを入力し、ダウンロードしたメタデータ XML ファイル を選択してください。
選択したファイルのプレビューが表示されますので、内容を確認してください。

![](/docs/ja/_md-assets/eadb319fe5-gw_shisho_add_ja.png)

追加ボタンを押下し正常に完了すると、作成した設定が **保留状態** であることを確認できます。

![](/docs/ja/_md-assets/8b7a75d368-shisho_sso_configs_gw.png)

再度 Google Workspace に戻ります。`ACS の URL` にはコールバック URL を設定してください。

`エンティティ ID` には以下の値を設定してください。

```
https://id.cloud.shisho.dev/realms/cloud
```

![](/docs/ja/_md-assets/0218796108-gw_register_02_ja.png)

画像を参考に属性を設定し、完了ボタンを押下してください。

:::warning
Shisho Cloud では以下の値を使用するため、Google Workspace で使用されている値が適切に割り当てられるように設定をしてください。

- **email**
- **lastName**
- **firstName**
  :::

![](/docs/ja/_md-assets/dc4da13015-gw_register_03_ja.png)

ここまで完了しましたら以下の情報を Shisho Cloud 側に共有してください。

- **ログインに使用する Eメールドメイン**
- **ID/パスワードでのログインを併用するユーザ**

:::warning
IdP の障害時など、シングルサインオンを使用できない場合でも ID/パスワード でログインできるユーザを指定してください。
:::

シングルサインオン設定が有効化されると、`状態` のアイコンが緑のチェックマークに切り替わります。

![](/docs/ja/_md-assets/aa60770c34-gw_register_done_ja.png)

ここまで完了すると、指定された Eメールドメインでログインした際、自動的に IdP の認証画面にリダイレクトされます。

## 他の IdP を利用する

上記に加えて以下の外部 IdP との連携も可能です。

- Microsoft Entra ID (旧称 Azure Active Directory)
- Auth0

上記以外の IdP を利用する場合も、基本的には以下を行うことで Shisho Cloud と連携できます。

- メタデータ URL および コールバック URL の登録
- エンティティ ID の設定
- SAML 属性のマッピング

## GMOトラスト・ログイン と連携する

GMOトラスト・ログインとの連携設定に関する詳細なマニュアルが公開されています。以下のリンクをご参照ください。

[GMOトラスト・ログインとShisho Cloudの連携設定マニュアル](https://support.trustlogin.com/hc/ja/articles/47699759219737)

## シングルサインオンの設定について

### Eメールアドレスについて

ログインに使用される Eメールアドレス は、設定の状態に関わらず、**1つのシングルサインオン設定でのみ**使用されます。
サービス全体において、重複した Eメールアドレス を持つ設定を作成することはできません。

また、現時点で、1つの設定で複数の Eメールアドレス の登録は対応しておりません。こちらは今後、仕様変更になる可能性があります。

### Shisho Cloud にアカウントが存在しない場合について

Shisho Cloud 上にユーザーが存在しない場合、**初回ログイン成功時**に自動的にユーザーが作成されます。
そのため、必要に応じて、各 IdP でシングルサインオンを利用してログインできるユーザーを制限してください。

:::info
シングルサインオン経由で新規登録されたユーザーにおいても、各組織への招待が必要になります。
:::

### Shisho Cloud に同じメールアドレスのアカウントが存在する場合について

Shisho Cloud 上に同じメールアドレスのアカウントが存在する場合、**初回ログイン成功時**にそのアカウントがシングルサインオンユーザーとして紐付けされます。

初回シングルサインオン時には以下の画面が表示されます。

![](/docs/ja/_md-assets/94753ef7cb-first_login_01_ja.png)

`既存のアカウントに追加する` ボタンを押下すると以下のような画面に遷移します。

![](/docs/ja/_md-assets/cf8f44a90e-first_login_02_ja.png)

該当するメールアドレスに、紐付け承認リンクが送信されます。

:::warning
紐付け承認リンクには必ず使用中のブラウザでアクセスしてください。別のブラウザでは動作しません。
:::

紐付けが完了すると、以降はシングルサインオンを利用することが可能になります。

### 証明証明書の管理について

メタデータ URL を経由してシングルサインオン設定をした場合、レスポンスに記載されている署名証明書がログイン時の検証に使用されます。使用される メタデータ URL は各設定の詳細ページで確認することができ、常に最新の署名証明書が利用されます。
ただし、現時点で、登録後にメタデータ URL を変更および署名証明書の追加を対応しておりません。こちらは今後、仕様変更になる可能性があります。

メタデータ XML ファイルを経由してシングルサインオン設定をした場合、ファイルに記載されている署名証明書がログイン時の検証に使用されます。また、設定の詳細ページより、署名証明書の追加および削除することが可能です。ただし、最低でも 1 つ以上の署名証明書が登録される必要があります。また、メタデータ URL の追加は現時点で対応しておりません。こちらは今後、仕様変更になる可能性があります。

:::info
設定を変更したい場合やご不明な点がございましたら、お気軽に弊社窓口までお問い合わせください。
:::

### 設定の削除について

現時点で、お客様の操作によりシングルサインオンの設定が削除されるタイミングは、以下の通りです。
こちらは今後、仕様変更になる可能性があります。

- お客様が直接設定を削除した場合
- お客様がシングルサインオン設定を含む組織を削除した場合

### 設定の無効化について

現時点で、お客様が自身での設定の無効化は対応しておりません。設定を削除することで無効化することができます。
こちらは今後、仕様変更になる可能性があります。

その他ご不明な点がございましたら、お気軽に弊社窓口までお問い合わせください。
