コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
概要
バージョン管理
変更ログ
API バージョンのアップグレード
SDK バージョンをアップグレードする
開発者向けのツール
SDK
API
テスト
ワークベンチ
イベントの送信先
ワークフロー
Stripe CLI
Stripe Shell
開発者ダッシュボード
エージェントツールキット
Stripe 健全性アラートBuild with LLMsVisual Studio Code をご利用の場合ファイルのアップロード
セキュリティ
セキュリティ
Stripe を拡張する
Stripe Apps
    概要
    始める
    アプリを作成する
    Stripe アプリの仕組み
    サンプルアプリ
    アプリを構築する
    シークレットを保存
    API 認証方法
      OAuth 2.0
      制限付きの API キー
    認証フロー
    サーバー側のロジック
    イベントのリッスン
    さまざまな環境を処理
    サンドボックスのサポートを有効にする
    アプリの設定ページ
    UI を構築する
    アカウント登録
    アプリを配布する
    配布オプション
    アプリをアップロード
    バージョンとリリース
    アプリをテストする
    アプリを公開する
    自分のアプリを宣伝する
    ディープリンクを追加する
    インストールリンクを作成
    UI 拡張機能で役割を割り当て
    インストール後のアクション
    アプリのアナリティクス
    アプリの埋め込みコンポーネント
    サードパーティーの Stripe アプリを埋め込む
    Stripe Apps に移行
    拡張機能を移行または構築
    Stripe Apps または Stripe Connect にプラグインを移行
    参照情報
    アプリマニフェスト
    CLI
    拡張 SDK
    権限
    ビューポート
    設計パターン
    コンポーネント
Stripe のコネクター
パートナー
Partner Ecosystem
パートナー認定
ホーム開発者向けのツールStripe AppsAPI authentication methods

OAuth 2.0

業界標準の OAuth 2.0 を使用し、ユーザーに代わって Stripe API へのリクエストを認証します。

ページをコピー

OAuth を使用したユーザー認証は次の手順で行います。

  1. お客様のサイトで、ユーザーがリンクをクリックすると、Stripe にリダイレクトされます。
  2. Stripe で、ユーザーは、適切なアカウントを選択して、アプリをインストールする権限を受け取ります。
  3. アプリがインストールされると、認証が完了し、ユーザーは定義された URI にリダイレクトされます。
OAuth を使用してアプリをインストールする

アプリを開発する

  1. CLI で stripe apps create <app-name> を実行して、Stripe アプリを作成します。

  2. アプリのマニフェストで次のフィールドを編集します。

    • stripe_api_access_type を oauth に設定します。
    • distribution_type を public に設定します。
    • allowed_redirect_uris を設定します。これは、ユーザーが OAuth を使用してアプリをインストールした後にリダイレクトされる URL です。リストの最初の URL がデフォルトのリダイレクト先として使用されます。

    アプリのマニフェストは以下のようになります。

    stripe-app.json
    { "id": "com.example.my-app", "version": "0.0.1", "name": "Your Stripe App", "icon": "./[YOUR_APP]_icon_32.png", "permissions": [ // Your app permissions here ], "stripe_api_access_type": "oauth", "distribution_type": "public", "allowed_redirect_uris": [ // Your redirect URIs here ] }
  3. アプリに必要な権限をすべて追加します。

  4. 「(オプション)」UI Extensions をアプリに追加します。ユーザーが設定を行ったり、アプリのドキュメントへのリンクを追加したりできるように、設定ビューを追加することをお勧めします。

  5. アプリを Stripe にアップロードします。

    Command Line
    stripe apps upload

アプリをテストする

  1. アプリの詳細ページに移動します。
  2. 外部テストタブを開き、始めるをクリックして外部テストを設定します。
  3. OAuth をテストセクションにある認証リンクにアクセスします。このリンクを使用すると、異なるアカウントでテストすることができます。

OAuth インストールリンクを作成する

ウェブページから、次のパラメーターを指定して OAuth インストールリンクにリダイレクトします: https://marketplace.stripe.com/oauth/v2/authorize?client_id=${clientId}&redirect_uri=${redirectUrl}&state=${state}。

Stripe は、本番環境とテスト環境の両方に対応するリンクを生成します。リンクは外部テストタブにあります。

Stripe ダッシュボード内のテスト OAuth リンクの場所

セキュリティのヒント

CSRF 攻撃を防止するには、推奨される state パラメーターを追加し、一意のトークンを値として渡します。Stripe は、お客様のサイトにユーザーをリダイレクトするときに、指定された state を含めます。サイトでは、state パラメーターが変更されていないことを確認できます。詳細については、URL パラメーターをご覧ください。

アプリを公開

Stripe App Marketplace にアプリを公開する準備ができたら、アプリを提出して審査を受けます

OAuth アプリを審査のために提出する際は、マーケットプレイスのインストール URL を指定する必要があります。この URL は、前のステップの OAuth インストールリンクを使用して、明確な手順が記載された、アカウント登録とインストールプロセスを開始できるページにリンクしている必要があります。

アプリの審査に入力するインストール URL が、「設定」タブ内にある公開 OAuth リンクを使用していることを確認してください。

Stripe ダッシュボード内の公開 OAuth リンクの場所

注

公開 OAuth インストールリンクは、アプリが公開されるまで機能しません。ただし、Stripe のアプリ審査チームは、このリンクからアプリをインストールしてテストすることができます。

アプリをインストールして認証する

  1. ブラウザーで、OAuth インストールリンクを開きます。クエリパラメーターを調整して、リダイレクト URL をアプリが対応している URL に変更できます。
  2. アプリをインストールするための権限を表示して受け入れます。URL パラメーターを指定していない場合、インストールが完了すると、ユーザーはお客様がアプリのマニフェストで定義した最初のコールバック URL にリダイレクトされます。

アクセストークンの認証コードを交換する

コールバック URL が OAuth 認証コードパラメーターを受信します。バックエンドはその OAuth 認証コードを API アクセストークンおよびリフレッシュトークンと交換する必要があります。この認証コードを使用するのは 1 回限りで、5 分間だけ有効であるため、その間にバックエンドは認証コードをアクセストークンと交換しなくてはなりません。バックエンドコードに OAuth クライアントライブラリを使用して実装する必要があるコマンドを以下に示します。

Command Line
curl -X POST https://api.stripe.com/v1/oauth/token \ -u sk_live_***: \ -d code=ac_*** \ -d grant_type=authorization_code

注

該当する環境のアプリ開発者 API キーを使用する必要があります。これを有効にするには、state 内で該当する環境を渡します。

上記の curl コマンドのレスポンス例を以下に示します。

{ "access_token": "{{ ACCESS_TOKEN }}", "livemode": true, "refresh_token": "{{ REFRESH_TOKEN }}", "scope": "stripe_apps", "stripe_publishable_key": "pk_live_***", "stripe_user_id": "acct_***", "token_type": "bearer" }

アクセストークンを更新する

アクセストークンの有効期限は 1 時間、リフレッシュトークンの有効期限は 1 年間です。リフレッシュトークンは交換のたびに更新されるため、新しいリフレッシュトークンの有効期限は常に、そのトークンが生成された時点または更新された時点から 1 年後の日付になります。1 年以内にリフレッシュトークンをアクセストークンに交換すると、リフレッシュトークンが有効期限日を迎えることはありません。

以下は、シークレットキーを使用してアクセストークンをリフレッシュトークンに交換する同等の curl コマンドです。

Command Line
curl -X POST https://api.stripe.com/v1/oauth/token \ -u sk_live_***: \ -d refresh_token={{ REFRESH_TOKEN }} \ -d grant_type=refresh_token

レスポンス例を以下に示します。

{ "access_token": "{{ ACCESS_TOKEN }}", "livemode": true, "refresh_token": "{{ REFRESH_TOKEN }}", "scope": "stripe_apps", "stripe_publishable_key": "pk_live_***", "stripe_user_id": "acct_***", "token_type": "bearer" }

新しいリフレッシュトークンを取得し、以前のリフレッシュトークンを有効期限切れにします。リフレッシュトークンはバックエンドに安全に保管し、Stripe ユーザーに代わって Stripe API にアクセスするときにいつでもそのリフレッシュトークンを使用して、新しいアクセストークンを取得する必要があります。

よくある間違い

アクセストークンを更新すると、必要な権限がないことを示すエラーが表示される場合があります。このエラーが表示された場合は、API コールの承認にアカウントのシークレットキーを使用していること、および誤ってリフレッシュトークン、アクセストークン、または制限付きキーを使用していないことを確認してください。

次の例のように Stripe API にリクエストして、アクセストークンを検証します。

Command Line
curl https://api.stripe.com/v1/customers \ -u "{{ ACCESS_TOKEN }}"

オプションURL パラメーターを使用してリンクをカスタマイズする

このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc