Rememberizerアプリの認証

Rememberizerの実装は、標準の認可コードグラントタイプをサポートしています。

アプリのユーザーを認証するためのウェブアプリケーションフローは次のとおりです。

  1. ユーザーはRememberizerにリダイレクトされ、アカウントを認証します。

  2. ユーザーはアプリケーションで使用するメメントを選択します。

  3. アプリケーションはユーザーのアクセストークンを使用してAPIにアクセスします。

フローのUI例を見るには、サードパーティアプリの管理ページを訪れてください。

近日公開: OAuth2認証フローダイアグラム

このシーケンス図は、次の間の完全なOAuth2フローを示します:

  • ユーザーのブラウザ

  • あなたのアプリケーション(クライアント)

  • Rememberizer認証サーバー

  • Rememberizer APIリソース

この図は、プロセスのすべてのステップにおける認可コード、トークン、およびAPIリクエストの交換を示します。

ステップ 1. ユーザーの Rememberizer アイデンティティをリクエストする

ユーザーを Rememberizer 認証サーバーにリダイレクトして、認証および承認プロセスを開始します。

GET https://api.rememberizer.ai/api/v1/auth/oauth2/authorize/

パラメータ:

名前
説明

client_id

必須 アプリケーションのクライアント ID。これは Developer で確認できます。左上隅の Developer をクリックします。登録されたアプリのリストから、あなたのアプリをクリックすると、App Credentials. にクライアント ID が表示されます。

response_type

必須 承認コードグラントの場合は code である必要があります。

scope

オプション

ユーザーの代理でアプリケーションがアクセスできるリソースを特定するスコープのスペース区切りリスト。

redirect_uri

必須 承認後にユーザーが送信されるアプリケーション内の URL。

state

必須

リクエストとコールバックの間で状態を維持するためにクライアントによって使用される不透明な値。認証サーバーは、ユーザーエージェントをクライアントにリダイレクトする際にこの値を含めます。

ステップ 2. ユーザーが思い出を選択し、設定する

ユーザーはアプリで使用する思い出を選択します。

ステップ 3. ユーザーは Rememberizer によってあなたのサイトにリダイレクトされます

ユーザーが自分の思い出を選択した後、Rememberizer は一時的な code パラメータと、前のステップで提供した状態を state パラメータとしてあなたのサイトにリダイレクトします。一時的なコードは短時間で期限切れになります。状態が一致しない場合、第三者がリクエストを作成したことになり、プロセスを中止する必要があります。

ステップ 4. 認可コードをリフレッシュトークンとアクセストークンに交換する

POST https://api.rememberizer.ai/api/v1/auth/oauth2/token/

このエンドポイントは、以下の入力パラメータを受け取ります。

名前
説明

client_id

必須 アプリケーションのクライアントID。開発者でこの値を見つけることができます。このIDを見つける手順はステップ1にあります。

client_secret

必須 アプリケーションのためにRememberizerから受け取ったクライアントシークレット。

code

ステップ3で受け取った認可コード。

redirect_uri

必須 認可後にユーザーが送信されるアプリケーション内のURL。ステップ1のredirect_uriと一致する必要があります。

ステップ 5. アクセストークンを使用してAPIにアクセスする

アクセストークンを使用すると、ユーザーの代理でAPIにリクエストを送信できます。

Authorization: Bearer OAUTH-TOKEN
GET https://api.rememberizer.ai/api/me/

例えば、curlでは次のようにAuthorizationヘッダーを設定できます。

curl -H "Authorization: Bearer OAUTH-TOKEN" https://api.rememberizer.ai/api/me/

参考資料

Github: https://github.com/skydeckai/rememberizer-integration-samples

Last updated