OAuth 2.0 設定
您可以呼叫 initOAuth
方法來設定 OAuth 2.0 授權。
屬性名稱 | Docker 變數 | 描述 |
---|---|---|
clientId | OAUTH_CLIENT_ID | 預設 clientId。必須是字串 |
clientSecret | OAUTH_CLIENT_SECRET | 🚨 請勿在您的生產環境中使用此參數。它會暴露重要的安全性資訊。此功能僅適用於開發/測試環境。🚨 預設 clientSecret。必須是字串 |
realm | OAUTH_REALM | realm 查詢參數 (適用於 oauth1) 已新增至 authorizationUrl 和 tokenUrl 。必須是字串 |
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 流程啟用。在對 tokenUrl 的 authorization_code 請求期間,使用 HTTP 基本驗證配置 (Authorization 標頭,其值為 Basic base64encode(client_id + client_secret) ) 傳遞用戶端密碼。預設值為 false |
usePkceWithAuthorizationCodeGrant | OAUTH_USE_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 })