メインコンテンツへスキップ
SAML 2.0 のほかに、Alforse は、サインインを貴社の Feishu / Lark または DingTalk の組織、あるいは任意の OpenID Connect(OIDC)に引き渡すことができます。会社の管理者が Single Sign-On ページで一度設定すると、その後は、検証済みドメインの業務用メールアドレスを入力したメンバーが、そのプロバイダーへ誘導されてサインインします。

基本概念

  • 会社ごとに 1 つの接続。会社が持てるシングルサインオン接続は 1 つで、プロトコルは OpenID Connect、Feishu / Lark、DingTalk、SAML のいずれか 1 つです。このページで前の 3 つのいずれかを保存すると、SAML 接続は置き換えられます(SAML からの切り替えを参照)。
  • 検証済みドメインがサインインを振り分けます。DNS レコードで所有を証明したメールドメインだけが、プロバイダーへ誘導されます。
  • 招待が先。シングルサインオンがアカウントを自動で作成することはありません。サインインできるのは、既存のメンバーか、会社からの保留中の招待を承諾した人だけです。
  • リンクされたアカウント。最初のサインインに成功すると、プロバイダーのアカウントが Alforse の担当者にリンクされます。以降のサインインでは、そのリンクが直接使われます。

始める前に

  • 権限。会社設定を変更する権限(settings の update)が必要です。権限がないと、ページには “Administrators only”(管理者のみ)と表示されます。
  • 利用可否。シングルサインオンが契約に含まれていない場合、ページには “Single sign-on isn’t in your plan”(シングルサインオンはご契約のプランに含まれていません)と表示されます。
  • プロバイダー側の権限。ID プロバイダーでアプリケーションを作成する権限が必要です。Feishu / Lark のオープンプラットフォームではカスタムアプリ、DingTalk の開発者コンソールでは社内アプリ、IdP では OIDC の Web アプリケーションです。
  • DNS の操作権限。メールドメインごとに TXT レコードを公開します。

Single Sign-On ページを開く

  1. https://app.alforse.com で ERP にサインインします。
  2. 同じブラウザーで https://api.alforse.com/identity を開きます。
ページに “Sign in to continue”(続行するにはサインインしてください)と表示された場合は、Sign in を選択し、ERP にサインインしてから、もう一度そのアドレスを開きます。ページ上部の EN / 中文 ボタンで、ページの表示を英語と簡体字中国語に切り替えられます。タイトルの横のステータスは、接続があれば Active、なければ Not configured と表示されます。 ページには 5 つのカード(Identity Provider、Require single sign-on、Email Domains、Sign-in Links、Linked Accounts)があります。接続を保存するまでは、Identity Provider だけが表示されます。

Identity Provider カード

Connect(既存の接続では Save changes)を選択します。Alforse は保存の前にプロバイダーに対して設定を確認し、“Single sign-on saved”(シングルサインオンを保存しました)と表示します。

Redirect URI

どのプロバイダーのアプリケーションも、次の 1 つのリダイレクト(コールバック)URI を使う必要があります。
これはすべての会社、すべてのプロバイダーで同じです。入力せず、ページからコピーしてください。

プロバイダーを設定する

Feishu オープンプラットフォーム(https://open.feishu.cn。Lark の場合は https://open.larksuite.com)で行う手順:
  1. カスタムアプリ(企業自建应用)を作成します。
  2. Credentials & Basic Info で、App ID と App Secret をコピーします。
  3. Security Settings → Redirect URLs に、上記の Redirect URI を追加します。
  4. Permissions で、次を許可します。
    • ユーザーの基本情報の読み取り(必須)
    • ユーザーの企業メールの読み取り(メールアドレスで担当者を照合するため)
    • テナント情報の読み取り(Alforse で Tenant key を空のままにする場合)
  5. バージョンを作成し、サインインさせたい人にアプリを公開します。
Alforse で行う手順:Feishu / Lark を選び、利用したプラットフォームに合う Region を選択し、App ID と App Secret を貼り付けます。必要なら Tenant key も貼り付け、Connect を選択します。
  • 検証済みと見なされるのは、Feishu テナントが発行した企業メールだけです。ユーザーが自分のプロフィールに入力したアドレスは、照合には使われません。
  • 企業メールを持たない人は、サインインリンクで一度だけ接続します。

メールドメインを検証する

接続を保存したら、メンバーがサインインに使うドメインを、Email Domains カードで 1 つずつ追加します。Add a domain の下にドメイン(例:example.com)を入力し、Add を選択します。追加直後のドメインは Pending で、公開すべき TXT レコードが表示されます。 DNS プロバイダーでこのレコードを公開してから、Verify を選択します。成功するとドメインは Verified になり、ページに “Domain verified”(ドメインを検証しました)と表示されます。ルールは SAML と同じです。ドメインの検証を参照してください。

サインインを担当者と照合する仕組み

メンバーは、ERP のログインページで業務用メールアドレスを入力し、Continue を選択してサインインします。検証済みドメインのメールアドレスであれば、プロバイダーへ誘導されます。プロバイダーから戻ると、Alforse は貴社の中だけを対象に、次の順序で照合します。
  1. リンク済みアカウント。プロバイダーのアカウントがすでに担当者にリンクされている場合:その担当者としてサインインします。
  2. 検証済みメール。プロバイダーが、貴社の検証済みドメインのいずれかに属する検証済みメールアドレスを返した場合:一致する有効なメンバーはサインインし、一致する保留中の招待は承諾されてそのロールが適用されます。その後、アカウントがリンクされます。
  3. サインインリンク。発行したワンタイムのサインインリンクを担当者が開いた場合:アカウントは、そのリンクの対象となったメンバーまたは招待にリンクされます。
それ以外の人は拒否され、アカウントは作成されません。Feishu / Lark と DingTalk では、プロバイダーのアカウントが、接続に保存されたテナントキーまたは CorpId に属していることも Alforse が確認します。

サインインリンク

プロバイダーがメールアドレスを証明できない担当者(DingTalk のすべての人と、企業メールを持たない Feishu のユーザー)を接続するには、Sign-in Links カードを使います。
  1. Pending invitation を選ぶか、Or an existing member’s email に入力します。
  2. Create link を選択します。
  3. Sign-in link created ダイアログからリンクをコピーし、ご自身で担当者に送ります。
リンクは https://api.alforse.com/api/web/auth/v1/sso/oauth/invite?token=… のような形式です。担当者がこれを開いてプロバイダーでサインインすると、アカウントがリンクされ、以降は通常どおりサインインできます。
  • 表示は一度だけ。リンクはそのダイアログにしか表示されません。紛失した場合は、取り消して新しく作成してください。
  • 1 回限り、7 日間有効。表には、各リンクの For、Status(Open、Used、Revoked、Expired)、Expires が表示されます。未使用のリンクは Revoke で取り消せます。
  • 検証済みドメインが必要。招待またはメンバーのメールアドレスが、接続の検証済みドメインに属している必要があります。
  • サインインリンクは OpenID Connect、Feishu / Lark、DingTalk の接続で利用でき、SAML では利用できません。

リンクされたアカウント

Linked Accounts カードには、すべてのリンクが Person、Provider account、Linked by(Verified email または Sign-in link)、Linked の列で一覧表示されます。Revoke を選択するとリンクが削除されます。担当者の Alforse アカウントは残ります。次回のサインインでは、検証済みメールで再び照合されるか、新しいサインインリンクが必要になります。

シングルサインオンを必須にする

Require single sign-on をオンにすると、検証済みドメインのメンバーにとって、貴社のプロバイダーが唯一のサインイン方法になります。マジックリンクなど、ほかのサインイン方法は拒否されます。このスイッチは、少なくとも 1 つのドメインが検証されてから有効になるため、必須にする前にサインインをテストできます。

SAML からの切り替え

会社がすでに SAML を使っている場合、カードには “Your company currently signs in with SAML. Saving another provider here replaces it.”(現在、会社は SAML でサインインしています。ここで別のプロバイダーを保存すると、置き換えられます。)と表示されます。
  • OpenID Connect、Feishu / Lark、DingTalk のいずれかの接続を保存すると、接続から SAML の設定(IdP メタデータ)が削除されます。その時点で SAML でのサインインは止まります。
  • メールドメインとその検証、および Require single sign-on は、そのまま残ります。
  • SAML 以外の接続が有効な間は、Settings → Security の SAML カードを保存できません。先にこのページで接続を無効化してください。

無効化

Identity Provider カードで Deactivate を選択し、Deactivate single sign-on で確定します。貴社のドメインのメンバーは、プロバイダー経由ではサインインできなくなります。ドメインの検証は削除されますが、リンクされたアカウントは保持されます。そのため、後で同じプロバイダーに再接続する場合は、ドメインの検証をやり直すだけで済みます。

トラブルシューティング

関連ページ