本文為您介紹如何在IDaaS中配置SonarQube單點登入。
應用簡介
SonarQube是一個開源的代碼品質管理系統,支援超過25種語言,提供重複代碼、編碼通訊協定、單元測試、程式碼涵蓋範圍、代碼複雜度、潛在Bug、注釋和軟體設計報告。
SonarQube 8.x+版本中,系統原生提供SAML 2.0的SSO支援。我們推薦您使用8.x以上版本。 若您當前使用版本低於8.0,或您需要啟用SAML的進階安全功能(簽名、加密傳輸等),可能需要額外安裝免費/付費外掛程式。可以參考sonar-auth-saml或SonarQube-MiniOrange等外部外掛程式。 本文檔中,SonarQube版本為9.2社區版。
操作步驟
一、建立應用
請管理員前往,搜尋到SonarQube。確認應用程式名稱後,即可完成添加應用。

添加後,會自動來到SSO配置頁。
配置SSO
您只需要將SonarQube 服務地址填寫進來。

為了便於測試,授權範圍可暫時選擇全員可訪問。
其他選項保持預設,單擊儲存即可完成全部SSO配置。
應用賬戶:預設使用IDaaS賬戶名作為應用登入標識。SonarQube支援自動建立賬戶,單點登入時,若SonarQube中不存在指定賬戶,則會直接建立出來。若希望靈活配置,請參考SAML應用賬戶配置進行配置。若希望指定可訪問應用的IDaaS賬戶,請參考應用授權進行配置。
配置頁面下方,包含了一系列SonarQube完成配置所需要的參數。

從中您需要擷取ldP 唯一標識及IdP SSO 地址和密鑰憑證三個參數。
二、配置SonarQube
請在新的瀏覽器標籤中使用管理員帳號登入SonarQube後台。
通過,來到SAML配置頁。

將IDaaS中擷取到的資訊填寫進入表格中。參數對照如下:
欄位 | IDaaS 中欄位名稱 | 說明 |
Enabled | - | 啟用。 |
ApplicationID | - | 固定值為 |
Provider Name | - | 建議填寫為使用阿里雲 IDaaS SSO |
Provider ID | IdP唯一標識 IdP Entity ID | 從IDaaS SSO配置頁應用配置資訊中擷取。 |
SAML Login URL | IdP SSO 地址 IdP SSO URL | 從IDaaS SSO配置頁應用配置資訊中擷取。 |
Provider Certificate | 密鑰憑證 Certificate | 從IDaaS SSO配置頁應用配置資訊中擷取。 |
SAML user name attribute | - | 填寫 |
SAML user email attribute | - | 填寫 |
將以上配置儲存,即可使用SonarQube SSO。
三、嘗試SSO
您已經可以嘗試SonarQube SSO。
SonarQube既支援IDP(IDaaS門戶)發起SSO,也支援SP(應用)發起SSO。
SonarQube支援自動建立賬戶(Just-in-time Provisioning),單點登入時,若SonarQube中不存在指定應用賬戶,則會直接建立,不會拒絕訪問。請在IDaaS中管理SonarQube存取權限。
IDP發起
請用已授權使用SonarQube的IDaaS賬戶,登入到IDaaS門戶頁,單擊頁面上SonarQube,發起SSO。

SP發起
請在匿名瀏覽器中,開啟SonarQube登入頁。若未登入,將跳轉到IDaaS登入頁進行登入。

驗證通過後,將直接登入到SonarQube中。