Help > Forum > ウェブサイトの統合 > シングルサインオン-トークンベースの認証

シングルサインオン-トークンベースの認証

ワードプレスを使用している場合は、 ワードプレスのプラグイン.

私たちはあなたのためにそれを行うことができます -[ シングルサインオン設定 にアクセスし、ウェブサイトビルダーを選択して、当社の開発チームにSSOを統合させます。わずか149ドルから始まります。

また、シングルサインオンは サムル, OAuth2、LDAP、SQL、およびオープンID.

シングルサインオン(SSO)APIを使用して、訪問者をフォーラムに自動的にログインできます。 これは、あなたのウェブサイト上に別のログインエリアがあり、あなたの訪問者を2 回ログインさせたくない場合に役立ちます。

SSO API を使用すると、アプリケーション内から HTTP リクエストを送信して、フォーラムにユーザーをログインまたはフォーラムからログインできます。 トークンは API によって返されます。トークンは次のページの小さな IMG タグで使用され、必要なブラウザー Cookie を保存します。

SSO API をウェブサイトに統合するには、以下の手順に従ってください。

  1. PHPを使用している場合は、我々は強く使用することをお勧めします PHP SSOライブラリこれは、必要なすべてのライブラリコードと使用例を持つ他のファイルを含む1つのファイルが含まれています。

  2. API キーを取得します。
  3. あなたのウェブサイトのログインスクリプトで、 HTTP リクエスト を SSO API ログイン URL に追加します。
  4. https://USERNAME.websitetoolbox.com/register/setauthtoken?type=json&apikey=APIKEY&user=USER

    置き換え APIKEY を、手順 1 で取得した API キーに置き出します。

    置き換え USER は、ログインしたいフォーラムユーザーのユーザー名に置き出します。

    必要に応じて、 &email=EMAIL パラメーターは、指定したフォーラムアカウントがまだ存在しない場合に自動的にフォーラムアカウントを作成する場合に使用します。 電子メールパラメータを含めることをお勧めします。 必要に応じて、 &pw=PASSWORD パラメーターを使用して、アカウントのパスワードを設定します。 (EMAIL と PASSWORD は、ユーザーのメールアドレスと暗号化されていない/ハッシュされていないパスワードに置き換えます)。 パスワードなしでアカウントを作成した場合、ユーザーはログインページで最初にパスワードをリセットしない限り、フォーラムに直接ログインできません。 SSOログインは、ユーザーのアカウントがパスワードを持っていなくても円滑に動作します。

    また、次の操作を行うことができます。 電子メールアドレスをユーザー名として使用する.

  5. HTTP リクエストによって返された JSON を解析して認証トークンとユーザー ID を取得し、Cookie に保存します。 JSON レスポンスは次のようになります。

    {
      "authtoken": "88SngRVArwrsZ053lfrqL",
      "userid": 424764
    }
    

  6. ウェブサイトで、「ログイン成功」のランディングページに次の HTML IMG タグを追加します。

    <img src="//USERNAME.websitetoolbox.com/register/dologin?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">

    置き換え AUTHTOKEN を手順 3 で取得した認証トークンに置き出します。

    IMG タグを読み込むブラウザウィンドウは、ステップ 2 で指定したユーザ名でユーザとしてフォーラムにログインします。

  7. ウェブサイトで、「ログアウト成功」のランディングページに次の HTML IMG タグを追加します。

    <img src="//USERNAME.websitetoolbox.com/register/logout?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">

    置き換え AUTHTOKEN を手順 3 で取得した認証トークンに置き出します。

  8. [ 設定-> シングルサインオン セクションで、ウェブサイトの ログインページ を使用して、すべてのフォーラムログインがウェブサイトのログインフォームを使用して行われるようにします。

  9. [ 設定-> シングルサインオン セクションで、ウェブサイトの ログアウトページ を使用して、フォーラムからログアウトした後にウェブサイトのログアウトページが表示されるようにします。

  10. フォーラムのサブドメインを設定します。 たとえば、https://forums.yourwebsite.com などです。 この手順はオプションです。 しかし、Safariブラウザには、ユーザーが選択した(「ナビゲート」)ページのみにクッキーの書き込みを制限する、保守的なクッキーポリシーが付属しています。 これにより、フォーラムのログインクッキーが「ログイン成功」ランディングページに設定されなくなります。 したがって、Safariブラウザでシングルサインオンを機能させる唯一の方法は、フォーラムのサブドメインを使用するか、ウェブサイトのフォーラムのリンクに認証トークンを渡すことです。 次に例を示します。

    <a href="https://USERNAME.websitetoolbox.com/?authtoken=AUTHTOKEN">Forum</a>

    埋め込みコードを使用している場合は、フォーラムが埋め込まれているページまたは ソース 埋め込みコードの属性を。

重要な注意事項:

  • 管理対象ドメイン名を購入した場合、またはフォーラムにカスタムドメイン名を使用している場合は、「USERNAME.websitetoolbox.com」の代わりにそのドメイン名を使用します。
  • USERNAMEはあなたのウェブサイトのツールボックスのユーザー名に置き換える必要があります。
  • を使用して &userid=USERID パラメーターの代わりに渡すことができます &user=USER パラメーターで指定します。
  • エラーが発生すると、通常の JSON 応答ではなく、以下の JSON のような JSON が表示されます。

    {
       "message": "The error message will be here."
    }
    

  • ユーザーをログアウトする必要があり、手順 2 で HTTP 要求中に返された認証トークンがない場合は、以下の URL に HTTP 要求を行って認証トークンを取得するか、新しい認証トークンを生成できます。

    https://USERNAME.websitetoolbox.com/register/getauthtoken?type=json&apikey=APIKEY&user=USER

  • また、あなたのウェブサイトのサインアッププロセスを統合することができます。 詳細情報...
  • 手順 3 で取得した認証トークンは、新しい認証トークンが生成されるか、高レベルのセキュリティを確保するために使用された直後に期限切れになります。 認証トークンは、ログアウトに使用される場合、新しい認証トークンが生成された後にのみ期限切れになります。
  • 通常、ユーザーはブラウザセッションの終了時にログアウトされます。 ブラウザを閉じた後もユーザーがログインしたままにするには、 &remember=1 を手順 5 と 9 の URL の末尾に追加します。
  • クエリ文字列は URL エンコードする必要があります。
  • 当社の API を使用します を使用して他のすべての種類の統合を行います。


If you still need help, please contact us.