SonarQube SSO

本文为您介绍如何在IDaaS中配置SonarQube单点登录。

应用简介

SonarQube是一个开源的代码质量管理系统,支持超过25种语言,提供重复代码、编码标准、单元测试、代码覆盖率、代码复杂度、潜在Bug、注释和软件设计报告。

说明

SonarQube 8.x+版本中,系统原生提供SAML 2.0SSO支持。我们推荐您使用8.x以上版本。 若您当前使用版本低于8.0,或您需要启用SAML的高级安全功能(签名、加密传输等),可能需要额外安装免费/付费插件。可以参考sonar-auth-samlSonarQube-MiniOrange等外部插件。 本文档中,SonarQube版本为9.2社区版。

操作步骤

一、创建应用

请管理员前往应用 > 应用市场,搜索到SonarQube。确认应用名后,即可完成添加应用

image.png

添加后,会自动来到SSO配置页。

配置SSO

您只需要将SonarQube 服务地址填写进来。

image.png

为了便于测试,授权范围可暂时选择全员可访问

其他选项保持默认,单击保存即可完成全部SSO配置。

说明

应用账户:默认使用IDaaS账户名作为应用登录标识。SonarQube支持自动创建账户,单点登录时,若SonarQube中不存在指定账户,则会直接创建出来。若希望灵活配置,请参考SAML应用账户配置进行配置。若希望指定可访问应用的IDaaS账户,请参考应用授权进行配置。

配置页面下方,包含了一系列SonarQube完成配置所需要的参数。

从中您需要获取ldP 唯一标识及IdP SSO 地址公钥证书三个参数。​

二、配置SonarQube

请在新的浏览器标签中使用管理员账号登录SonarQube后台。​

通过Administration > Security,来到SAML配置页。

image.png

IDaaS中获取到的信息填写进入表格中。参数对照如下:

字段

IDaaS 中字段名称

说明

Enabled

-

启用。

ApplicationID

-

固定值为sonarqube

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

-

填写username即可。

SAML user email attribute

-

填写username即可。

将以上配置保存,即可使用SonarQube SSO。

三、尝试SSO

您已经可以尝试SonarQube SSO。​

SonarQube既支持IDP(IDaaS门户)发起SSO,也支持SP(应用)发起SSO。

说明

SonarQube支持自动创建账户(Just-in-time Provisioning),单点登录时,若SonarQube中不存在指定应用账户,则会直接创建,不会拒绝访问。请在IDaaS中管理SonarQube访问权限。

IDP发起

请用已授权使用SonarQubeIDaaS账户,登录到IDaaS门户页,单击页面上SonarQube,发起SSO。

image.png

SP发起

请在匿名浏览器中,打开SonarQube登录页。若未登录,将跳转到IDaaS登录页进行登录。

image.png

验证通过后,将直接登录到SonarQube中。