OAuth 2.0 設定
initOAuth
メソッドを呼び出すことで、OAuth 2.0 認証を設定できます。
プロパティ名 | Docker 変数 | 説明 |
---|---|---|
clientId | OAUTH_CLIENT_ID | デフォルトのクライアント ID。文字列である必要があります。 |
clientSecret | OAUTH_CLIENT_SECRET | 🚨 このパラメータは本番環境では絶対に使用しないでください。これは重要なセキュリティ情報を公開します。この機能は開発/テスト環境でのみ使用することを目的としています。 🚨 デフォルトのクライアントシークレット。文字列である必要があります。 |
realm | OAUTH_REALM | authorizationUrl と tokenUrl に追加される realm クエリパラメータ (oauth1 用)。文字列である必要があります。 |
appName | OAUTH_APP_NAME | アプリケーション名。認証ポップアップに表示されます。文字列である必要があります。 |
scopeSeparator | OAUTH_SCOPE_SEPARATOR | スコープを渡すためのスコープ区切り文字。呼び出し前にエンコードされます。デフォルト値はスペース (エンコード値 %20 ) です。文字列である必要があります。 |
scopes | OAUTH_SCOPES | 初期選択された oauth スコープの文字列配列またはスコープ区切り文字 (つまりスペース) で区切られた文字列。デフォルトは空の配列です。 |
additionalQueryStringParams | OAUTH_ADDITIONAL_PARAMS | authorizationUrl と tokenUrl に追加される追加のクエリパラメータ。オブジェクトである必要があります。 |
useBasicAuthenticationWithAccessCodeGrant | OAUTH_USE_BASIC_AUTH | accessCode フローでのみアクティブになります。authorization_code リクエストを tokenUrl に送信する際に、HTTP 基本認証スキーム (Authorization ヘッダーに Basic base64encode(client_id + client_secret) ) を使用して クライアントパスワード を渡します。デフォルトは false です。 |
usePkceWithAuthorizationCodeGrant | OAUTH_USE_PKCE | Authorization Code フローにのみ適用されます。Proof Key for Code Exchange (PKCE) は、OAuth パブリッククライアントのセキュリティを強化します。デフォルトは false です。注: このオプションはクライアントシークレットの入力を非表示にしません。なぜなら、PKCE もクライアントシークレットも互いの代わりにはならないからです。 |
1const ui = SwaggerUI({...})2
3// Method can be called in any place after calling constructor SwaggerUIBundle4ui.initOAuth({5 clientId: "your-client-id",6 clientSecret: "your-client-secret-if-required",7 realm: "your-realms",8 appName: "your-app-name",9 scopeSeparator: " ",10 scopes: "openid profile",11 additionalQueryStringParams: {test: "hello"},12 useBasicAuthenticationWithAccessCodeGrant: true,13 usePkceWithAuthorizationCodeGrant: true14 })