サポート
ドキュメンテーション

Drupalサイト向けのシングルサインオン

このページでは、DrupalベースのウェブサイトにSuperSaaSのスケジュールを統合し、ユーザーがあなたのウェブサイトとその中にあるSuperSaaSのスケジュールの両方へ1回のサインインでアクセスできるようにする方法を説明します。 これを利用するには、まず(無料の)SuperSaaSアカウントに登録する必要があります。

ユーザーにあなたのサイトへログインさせない場合は、ウェブサイトにスケジュールを統合するための一般的な手順に従ってください。 ここで提供されるモジュールは、ユーザーがすでにあなたのDrupalサイトにログインしている場合にのみ動作します。

SuperSaaSのスケジュールでDrupalのログイン名を使う

SuperSaaSのDrupalモジュールは、「今すぐ予約」ボタンを表示し、Drupalのユーザー名を使ってユーザーを自動的にSuperSaaSのスケジュールへログインさせます。 Drupalのユーザー登録システムを使用していない場合は、代わりにウェブサイトでスケジュールを統合するための一般的な手順に従ってください。

モジュールによって生成されるボタンは、Drupalのユーザーデータベース情報をSuperSaaSに渡し、必要に応じてSuperSaaSのデータベースにユーザーを作成したり、情報を更新したりします。 これにより、ユーザーが予約システム用に別のログインを作成する必要がなくなり、2回ログインする手間も省けます。

Drupalでのモジュールのインストールと設定

Drupalでモジュールを設定するには、次の手順に従ってください:
  1. モジュールをインストールします (Drupal 10.2 & 11)。 プロジェクトページのSuperSaaS Drupal moduleで、「Releases」下のインストール手順に従ってください。 次に、Extendページでモジュール名の横のチェックボックスをオンにして有効化し、Installをクリックします。

    その後、Manage>Configurationに移動し、SuperSaaS Settingsをクリックします。 設定に応じて各項目を入力または削除し、「Enable HTTPS」をオン/オフにします。

    Drupalの管理メニューでManage>Structureをクリックし、続いてBlock layoutをクリックします。 SuperSaaSモジュールを配置するブロック要素の後で、Place Blockをクリックします。 「SuperSaaS login」ブロックを見つけ、その横のPlace Blockボタンをクリックします。 「Configure block」では、タイトルを編集したり、表示タイトルを無効にしたり、さまざまな設定を調整できます。

    古いDrupalバージョンとの互換性が必要な場合は、GitHub releasesページからリリースをダウンロードしてください。
  2. モジュールを設定しますSuperSaaS Settings画面で次の項目を入力します:
    • SuperSaaS account name – アカウント名です(メールアドレスではありません)
    • SuperSaaS API key – SuperSaaSアカウントのAPIキーは、Account Infoページの下部で確認できます。
    • Schedule name – スケジュール名を入力するか、特定のパラメータを追加してユーザーを特定の表示に誘導したい場合は完全なURLを指定できます。複数のスケジュールを使用している場合は、以下を参照してください。
    • Button Label – ボタンのラベルです。既定値は今すぐ予約、または対応言語での同等の表記です。ボタンに背景画像がある場合、これは代替テキスト値になります。
    • Button image – 背景画像のURLです。既定値はありません。そのため、これが設定されていない場合、ボタンに背景画像は表示されません。例:
      https://static.supersaas.net/en/but/booknow_red.png 今すぐ予約! (その他の例を参照)
    • Custom Domain Name – スケジュールを指すためにカスタムドメイン名を作成している場合は、ここに入力してユーザーが正しい場所へ移動するようにできます。
    • Enable HTTPS – SuperSaaSのスケジュールで「SSL/TLSで接続を暗号化」を有効にしている場合は、このオプションをオンにします。
Drupal SuperSaaS Module

Drupalで動作させるためのSuperSaaSアカウント設定の変更

Drupalのユーザーデータベースが一次ソースとなるため、Drupalサイトでユーザー情報を変更するとSuperSaaSにも反映されますが、その逆は行われません。 そのため、SuperSaaS側でユーザーが自分の情報を変更できないようにすることをおすすめします。そうしないと、ユーザーが混乱しやすくなります。 たとえば、SuperSaaSでパスワードの変更を許可すると、Drupalのパスワードは変わっていないことに気づかない可能性があります。

不整合を避けるため、SuperSaaSアカウントで次の変更を行ってください:
  1. アクセスコントロールページで、 ログインと登録はあなたのサイトで管理されますを選択します
  2. アクセスコントロールページで、 ユーザーが自分の情報を更新できないようにするを選択します
  3. レイアウト設定ページで、Your URLの欄に、ユーザーがログインできるあなたのサイト上のページURLを入力します

さらに、DrupalのデータベースフィールドがSuperSaaSのユーザーデータベースの内容と一致していることを確認する必要があります。アクセスコントロールページで次の変更を行ってください:

  1. メールアドレスをログイン名として使用するの選択を解除します
  2. 表示されるEmail addressのラジオボタンをオプション(または必須)に切り替えます
  3. 他のすべての項目を尋ねないに切り替えます( ログインはここでは扱いませんを選択している場合は、Passwordフィールドもオフにできます)

これで、サイト上のボタンを試せるようになります。 管理者としては、引き続きメインのSuperSaaSログインページからログインする必要があるため、通常ユーザーになったつもりで試してください。 SuperSaaSでsuperusersを定義する場合は、ユーザーマネジメントページで役割を変更する前に、必ずそのユーザーが少なくとも1回はボタンを使ってログインしていることを確認してください。

SuperSaaS アクセスコントロール

SuperSaaSの設定

この画像は、上記の設定を適用した後のSuperSaaSアカウントのアクセスコントロールページを示しています。

ページにボタンを追加する

メインメニューでManage>Structure(Drupal 10.2または11)に移動し、Block layoutを選択します。 次に、ページ内の適切な場所でPlace blockをクリックします。 configureをクリックすると、タイトルや、ボタンを表示するページをさらにカスタマイズできます。

Placing the SuperSaaS Login module to the chosen location
The SuperSaaS Login button on a Drupal site

トラブルシューティングとヒント

  • このボタンは、Drupalサイトにログインしているユーザーにのみ表示されることに注意してください。
  • 「メールアドレスが有効なメールアドレスではありません」というエラーが表示される場合は、SuperSaaSアカウントで正しい設定が行われているかを確認するために、前の段落をもう一度お読みください。
  • ボタンがユーザーをリダイレクトするが、実際にログインしていないように見える場合、そしてフィールド「Schedule name or URL」にURLを使用している場合は、そのURLのドメインが「Custom Domain Name」フィールドに入力されていることを確認してください。