Skip to main content
custom-token-exchange Actions トリガーの API オブジェクトには、以下が含まれます。

api.access

リクエストの拒否など、トークン交換リクエストへのアクセスを変更します。

api.access.deny(code, reason)

現在のトークン交換を拒否として扱います。 無効なサブジェクトトークンを理由にリクエストを拒否する場合は、サブジェクトトークンに対するブルートフォース試行と、リクエストを拒否するその他の理由を区別するため、代わりに api.access.rejectInvalidSubjectToken を使用することを推奨します。
パラメータ

api.access.rejectInvalidSubjectToken(reason)

リクエストで指定されたサブジェクトトークンを無効として扱います。これにより、リクエストは “invalid_request” エラーコードで拒否されます。 また、無効なサブジェクトトークンが指定されたことが攻撃対策機能に通知されるため、 サブジェクトトークンに対するブルートフォース攻撃を防ぐための保護を適用できます。
パラメータ

api.authentication

サブジェクトトークンの認証結果を示し、トークンの発行先となるユーザーを指定します。

api.authentication.setUserById(user_id)

userId を指定して、subject_token に対応するユーザーを指定します。トークン交換リクエストでは、このユーザーのトークンが発行されます。 指定するユーザーは既存のユーザーである必要があります。 注: カスタムトークン交換 Action では、api.authentication.setUserByConnection または api.authentication.setUserById のいずれか一方のみを呼び出す必要があります。
パラメータ

api.authentication.setUserByConnection(connection_name, user_attributes, options)

接続とユーザー属性を指定して、subject_token に対応するユーザーを設定します。 トークン交換リクエストでは、このユーザーのトークンが発行されます。 既存のユーザーまたは新規ユーザーを指定できます。ユーザーが存在しない場合は作成されます。 ユーザー_profile の user_id プロパティを使用して、ユーザーがすでに存在するかどうかを判断します。 注: カスタムトークン交換 Action では、api.authentication.setUserByConnection または api.authentication.setUserById のいずれか一方を必ず呼び出す必要があります。
Set user by connection with full profile attributes
Create a user without verifying email
パラメータ

api.authentication.setOrganization(organization_id_or_name)

トークン交換に関連付けられたユーザーのorganizationを設定します。
パラメータ

api.authentication.setActor(actor)

サブジェクトに代わって操作を行うエンティティを表すため、トークン交換のアクターを設定します。 setUserById または SetUserByConnection コマンドと併用する必要があります。setActor の呼び出しは任意です。 リクエストで actor_token を受信しても、act claim が自動的に生成されることはありません。Action でこのメソッドを明示的に呼び出す必要があります。 トランザクションにアクターが設定されている場合、リフレッシュトークンは発行されません。
パラメータ

api.user

サブジェクトトークンに対応するユーザーの変更をリクエストします。

api.user.setAppMetadata(key, value)

サブジェクトトークンに対応するユーザーのアプリケーション固有のメタデータを設定します。
パラメータ

api.user.setUserMetadata(key, value)

サブジェクトトークンに対応するユーザーの一般メタデータを設定します。
パラメータ

api.cache

実行をまたいで保持されるデータを保存・取得します。

api.cache.delete(key)

指定されたキーにキャッシュ値を表すレコードが存在する場合、そのレコードを削除します。 パラメータ

api.cache.get(key)

指定されたキーにキャッシュ内のレコードが存在する場合、そのキャッシュ値に関するレコードを取得します。レコードが見つかった場合、キャッシュ値は返されるオブジェクトの value プロパティに格納されています。 パラメータ

api.cache.set(key, value, options)

指定したキーに文字列値をキャッシュへ保存または更新します。 このキャッシュに保存された値は、設定されたトリガーのスコープ内でのみ使用できます。 これらの値には、Actions Cache Limits が適用されます。 この方法で保存された値の有効期間は、指定した ttl または expires_at の値までです。有効期間が指定されていない場合は、デフォルトで 15 分となります。有効期間は、Actions Cache Limits に記載されている最大 期間を超えることはできません。 重要: このキャッシュは、短期間のみ保持する一時的なデータ用に設計されています。指定された有効期間内であっても、後続のトランザクションでは 項目を利用できない場合があります。 パラメータ