外部による動的なクライアント登録を通じて作成されたアプリケーションが、プライベートユースのURIスキームに準拠するようにするには、リクエスト変換ルールを設定する必要があります。
このタスクについて
セクション https://datatracker.ietf.org/doc/html/rfc8252#section-7.1 では、アプリに関連付けるURIスキームを選択する際、アプリは、[ RFC7595 ]のセクション 3.8 で私的利用のURIスキームについて推奨されているように、自身が管理するドメイン名に基づき、逆順で表記されたURIスキームを使用しなければならない
と規定されている
外部による動的なクライアント登録を通じて作成されたアプリケーションがこの要件に準拠するようにするには、リクエスト変換ルールを設定する必要があります。
手順
- を選択します。
- 「動的クライアント登録」 を選択します。
- 以下のテストをリクエスト変換ルールにコピーして貼り付けてください。
statements:
- context: scl := requestContext.metadata.redirect_uris.map(ru, ru.substring(0, ru.indexOf(":")))
- context: chk := context.scl.filter(sc, (sc.matches("^(http|https|smtp|mailto|ftp)$") || sc.indexOf(".") > -1) == false)
- context: err := context.chk.size() > 0
- if:
match: context.err
block:
- return: requestContext.metadata.remove("redirect_uris")
else:
- return: requestContext.metadata
- 「変更を保存」 を選択します。
このリクエスト変換ルールは、各リダイレクトURIが要件を満たしていることを確認するために検証を行います。 無効なリダイレクトURIが検出された場合、エラーを強制的に発生させるために を redirect_uris 削除します。 redirect_urisこの動的なクライアント登録を行っている側は、その後、適切な値を指定した新しいリクエストを送信する必要があります。