建立並管理 OAuth 用戶端
OAuth 是用於授權和委派的標準安全性通訊協定。這允許第三方應用程式存取 API 資源,不必揭露最終使用者認證。OAuth 用戶端可以取得授權代碼並交換以獲得可用來透過 API 存取 Qlik Cloud 內容的存取 Token。
公用和機密用戶端
OAuth 有兩個用戶端類型:公用用戶端和機密用戶端,以保護應用程式 (用戶端) 和授權伺服器 (Qlik Cloud) 之間的授權。
公用用戶端
公用用戶端是不使用用戶端密碼的應用程式,因為這不會維護所需認證的機密性。Qlik Cloud 中的公用用戶端通常是前端應用程式,例如含有內嵌分析的單頁應用程式,或 Qlik Sense 中的自訂視覺化延伸,需要關於最終使用者的資訊才能支援應用程式生命週期。
請參閱 :RFC 第 6749 節 2.1:OAuth 2.0 用戶端類型。
Qlik Cloud 支援傳統 Web (伺服器端) 應用程式的機密用戶端,和適合使用特定授予類型之原生和單頁應用程式的公用用戶端。
機密用戶端
機密用戶端是以安全方式維護用戶端 ID 和用戶端密碼的應用程式,不會向未獲授權者揭露這些內容。機密用戶端可以存取受保護的資源,因為他們擁有用戶端密碼。機密用戶端的一個範例是 Web 應用程式,與 Qlik Cloud API 有安全後端互動,以安排資料重新整理任務或管理使用者對內容的存取權限。
授權授予類型
Qlik 支援兩種授權授予類型或流程:授權代碼流程和使用證明金鑰進行代碼交換 (PKCE) 的授權代碼流程。這些流程非常類似,但支援不同的使用情況。
授權代碼流程
傳統 Web 應用程式是伺服器端應用程式,在此不會公開揭露原始程式碼,因此可以使用授權代碼流程,這交換 Token 的授權代碼。使用此流程的 Web 應用程式必須是伺服器端,因為應用程式的用戶端密碼會在 Token 交換期間傳遞至授權伺服器。
請參閱:授權代碼流程瞭解更多詳細資訊。
使用證明金鑰進行代碼交換 (PKCE) 的授權代碼流程
原生和單頁應用程式無法儲存用戶端密碼,因為可透過反編譯應用程式或經由瀏覽器檢視應用程式來源,存取其原始程式碼。PKCE 要求使用代碼驗證器以取得存取 Token,藉此對公用用戶端新增額外一層的防護。
請參閱:使用證明金鑰進行代碼交換 (PKCE) 的授權代碼流程瞭解詳細資訊。
可用於 OAuth 用戶端的限制範圍
OAuth 範圍提供限制向 OAuth 用戶端應用程式授予之存取額的方式。例如,對於向用戶端應用程式核發的存取權限 Token,可以授予受保護資源的完整存取權限,或僅讀取權限。
在 Qlik Cloud 中,範圍針對可用功能和資源提供控制用戶端存取權限的方式。每個範圍授予不同的存取層級。沒有範圍的用戶端將無法存取任何資源。
建立 OAuth 用戶端
租用戶管理員可從 OAuth 頁面上的 管理 活動中心管理 OAuth 用戶端。
透過 OAuth 用戶端,您可以整合用戶端應用程式與 Qlik Cloud。
若要瞭解如何建立用於部署的 OAuth 用戶端並安裝 Microsoft Excel 的 Qlik 增益集,請參閱 為 Microsoft Excel 建立 Qlik 增益集的 OAuth 用戶端。
請執行下列動作:
-
在 管理 活動中心內,前往 OAuth。
-
按一下新建。
-
選取用戶端類型。
為機密用戶端使用 Web 和單頁應用程式或為公用用戶端使用原生。
-
在對話方塊中,為 OAuth 用戶端命名。
-
也可以選擇新增說明。
-
捲動或使用搜尋欄位,以選取任何可用範圍。
範圍 權限 user_default 對帳戶和內容的完整存取權限 admin_classic 對租用戶的完整管理員存取權限
另請參見: 部署和管理 Qlik Cloud
資訊備註不支援單一頁面應用程式和原生用戶端類型。admin.apps 讀取並管理租用戶中的所有應用程式。
另請參見: 管理應用程式
admin.apps:export
匯出租用戶中的所有應用程式
另請參見: 匯出應用程式
admin.apps:read
讀取租用戶中的所有應用程式 admin.automations 讀取並管理租用戶中的所有自動化
另請參見: 管理自動化
admin.automations:read
讀取租用戶中的所有自動化 admin.spaces 讀取並管理租用戶中的所有空間
另請參見: 管理空間
admin.spaces:read
讀取租用戶中的所有空間 應用程式 讀取並管理應用程式
另請參見: 管理應用程式
apps:export
匯出應用程式
另請參見: 匯出應用程式
apps:read
讀取您的應用程式 自動化 讀取並管理您的自動化
另請參見: 管理自動化
automations:read
讀取您的自動化 automl-實驗 讀取並管理 ML 實驗 automl-部署 讀取並管理 ML 部署 identity.email:read 讀取您的電子郵件地址
另請參見: Qlik Cloud 中的識別提供者
identity.name:read
讀取您的全名 identity.picture:read 讀取您的個人檔案圖片
另請參見: Qlik Cloud 中的識別提供者
identity.subject:read
讀取使用者主體識別碼 spaces.data 讀取並管理資料空間
另請參見: 管理空間
spaces.data:read
讀取資料空間 spaces.managed 讀取並管理受管理空間
另請參見: 管理空間
spaces.managed:read
讀取受管理空間 spaces.shared 讀取並管理共用空間
另請參見: 管理空間
spaces.shared:read
讀取共用空間 offline_access 在離線時存取資源
資訊備註不支援單一頁面應用程式用戶端類型。資訊備註您可以使用清單上方的全部和已選取按鈕,以顯示所有範圍或僅所選範圍。資訊備註以上清單反映初始版本中支援的範圍。完整範圍清單 (包括初始版本後新增的任何範圍) 可見於 Qlik 開發人員入口網站。 -
為 OAuth 用戶端應用程式輸入一個或多個重新導向 URL。
提示備註重新導向 URL 可在驗證並授予權限後,讓授權伺服器將使用者的瀏覽器傳送至用戶端應用程式。例如,https://www.exampleapp.com/oauth/callback,其中 /oauth/callback 處理來自 OAuth 提供者的驗證回撥。只有在 URL 屬於重新導向 URL 的允許清單時,Qlik Cloud 才會在成功授權之後,將使用者重新導向回到應用程式。URL 必須以 https:// 開頭,除非網域為 localhost,在此情況下,可以使用 http:// 為開頭。原生應用程式也可以使用應用程式特定連結格式,例如 exampleapp://。
按一下新增以將重新導向 URL 新增至允許清單。
-
對於 Web 或單頁應用程式的用戶端類型,請指定一個或多個允許的來源。只有在 URL 新增至允許的來源清單時,才會授予應用程式的存取權限。
-
對於 Web 用戶端類型,您可以啟用允許機器對機器 (M2M) 或允許 M2M 使用者模擬,以進行自動化系統存取,而不需要使用者互動。M2M 模擬允許應用程式在驗證期間代表使用者行事。
-
按一下建立。
-
按一下複製到剪貼簿以儲存用戶端 ID 和用戶端密碼以供之後使用。將用戶端密碼儲存在安全的位置。按一下完成。
資訊備註公用用戶端不會有任何用戶端密碼。
為 Microsoft Excel 建立 Qlik 增益集的 OAuth 用戶端
需要 OAuth 用戶端設定才能安裝 Microsoft Excel 的 Qlik 增益集。增益集由報告開發人員使用,以準備報告範本,這控制從 Qlik Sense 應用程式輸出表格式報告。
為了讓 OAuth 在增益集運作,需要使用以下所示的確切設定來設定 OAuth 用戶端。
請執行下列動作:
-
在 管理 活動中心內,於 Qlik Cloud 中,前往 OAuth。
-
按一下新建。
-
在用戶端類型下拉式功能表中,選取單頁應用程式。將會顯示更多欄位。
-
插入名稱。描述為選填。
-
至少應選取核取方塊,以納入 user_default 範圍。您可以在設定中納入其他範圍,但沒有 user_default,安裝將無法運作。
請參閱 建立 OAuth 用戶端 瞭解每個可用範圍的完整描述。
-
在新增重新導向 URL 欄位中,插入租用戶的 URL,接著插入固定字串:/office-add-ins/oAuthLoginSuccess.html
結果應如下所示:https://YourServer/office-add-ins/oAuthLoginSuccess.html
-
按一下新增。
-
在新增允許來源欄位中,插入租用戶 URL,並按一下新增。
-
按一下建立。
-
就會顯示複製用戶端 ID 視窗。您可以選擇將用戶端 ID 複製到剪貼簿,或按一下完成以關閉視窗。
建立 OAuth 用戶端後,取得連結,從 管理 活動中心前往更新後的資訊清單 XML 檔案。前往設定頁面,並前往 管理 活動中心 內的共用和報告 > Excel 增益集。使用此連結部署並安裝增益集。
如需更多關於產生資訊清單檔案以及部署並安裝增益集的資訊,請參閱:
為應用程式內容的匿名內嵌建立 OAuth 用戶端
若要使用 qlik-embed 內嵌應用程式內容以進行匿名存取,您需要建立專門為此使用情況設計之類型的 OAuth 用戶端。
請執行下列動作:
-
在 管理活動中心內,前往 OAuth 區段。
-
按一下新建。
-
在用戶端類型下拉式功能表中,選取匿名內嵌。
-
輸入 OAuth 用戶端的名稱和描述 (選填)。
-
在允許的來源之下,輸入您需要授權的每個來源。這些網域將存取 Qlik Cloud 租用戶,以擷取內嵌分析的資訊。
插入每個 URL 後,按一下新增。
-
完成後,按一下建立。
-
按一下複製到剪貼簿以儲存用戶端 ID 以供之後使用。應用程式內容透過 qlik-embed 內嵌時將會需要。
-
按一下完成。
編輯 OAuth 用戶端
您可以重新命名 OAuth 用戶端、更新說明或管理重新導向 URL。
請執行下列動作:
- 在 管理 活動中心內,前往 OAuth。
- 選取您要編輯的 OAuth 用戶端。按一下 ... 然後選取編輯。
- 在對話方塊中,按需要變更 OAuth 用戶端選項。
- 按一下儲存。
發佈 OAuth 用戶端
已建立的 OAuth 用戶端會自動繫結至建立該 OAuth 用戶端的租用戶。您可以將 OAuth 用戶端設定為共用並向區域內的所有其他租用戶提供。然後連線至 Qlik Cloud 的第三方應用程式對於所有 Qlik Cloud 租用戶可以具有相同的用戶端 ID。應用程式擁有者可以輪換密碼並更新設定而沒有透過租用戶管理員互動。租用戶管理員不需要管理認證或知道任何設定詳細資訊。
若要允許其他租用戶連線至 OAuth 用戶端,則需要發佈。
請執行下列動作:
- 在 管理 活動中心內,前往 OAuth。
- 選取您要發佈的 OAuth 用戶端。按一下 ... 然後選取發佈。
- 按一下發佈。
使用者前往使用 Qlik OAuth 的外部網站時,會向他們提示租用戶主機名稱,之後也會提示使用者認證,除非使用者已經有作用中的 SaaS 工作階段。首次使用外部 OAuth 用戶端登入時,需要租用戶管理員的同意。核准後,新的 OAuth 用戶端會顯示在 管理 活動中心內。
同意方法
您有兩個同意選項:必需和受信任。若使用必需,則使用 OAuth 用戶端的授權將會在每次要求新的範圍時向使用者提示同意。若使用受信任,則不會提示使用者。對於未發佈的用戶端,您只能使用受信任。對於已發佈的用戶端,同意方法永遠是必需。
檢視並複製 OAuth 設定
在 管理 活動中心的 OAuth 區段中,選取檢視 OAuth 設定以顯示設定,作為要複製的程式碼片段和 URL。
刪除 OAuth 用戶端
若您不再需要 OAuth 用戶端或要撤銷存取權限,可以刪除 OAuth 用戶端。
請執行下列動作:
-
在 管理 活動中心內,前往 OAuth。
-
選取您要移除的 OAuth 用戶端,然後按一下刪除。
資訊備註您一次可以移除多個 OAuth 用戶端。 - 確認您想要刪除該 OAuth 用戶端。
管理用戶端密碼
舉例而言,若用戶端密碼遭到洩漏或安全性政策要求您定期更新用戶端密碼,則您可能需要新增或移除用戶端密碼。您也可以新增多個用戶端密碼,以防應用程式停止運作。例如,您可以建立第二密碼,在用戶端應用程式部署新的密碼,然後刪除舊的密碼。
請執行下列動作:
- 在 管理 活動中心內,前往 OAuth。
- 選取您要管理的 OAuth 用戶端。按一下 ... 然後選取管理密碼。
- 在對話方塊中,進行下列事項之一:
- 若要新增用戶端密碼,按一下產生新的用戶端密碼。
- 若要移除用戶端密碼,按一下用戶端密碼旁邊的 。
- 按一下關閉。
建置 OAuth 用戶端應用程式以存取 Qlik Cloud
透過 Qlik Cloud 註冊 OAuth 用戶端之後,您可以在自己的 OAuth 用戶端應用程式中使用相關的用戶端 ID 和用戶端密碼。教學課程可見於開發人員入口網站的 OAuth 區段,以瞭解如何使用部分最熱門的編碼語言建置用戶端應用程式。