本文為您介紹如何在IDaaS中配置Bitbucket miniOrange saml單點登入。
應用簡介
Bitbucket是Atlassian公司提供的一個基於web的版本庫託管服務,支援Mercurial和Git版本控制系統。
Bitbucket需要額外外掛程式才能實現SSO,例如:SAML Single Sign On-SAML SSO Login
本篇文檔中Bitbucket版本為6.0.3。 在Bitbucket中通過配置請參考文檔。
操作步驟
一、建立應用
登入IDaaS管理主控台。
選擇IDaaS執行個體並在操作地區下方單擊存取控制台。

前往,搜尋到Bitbucket miniOrange SAML。單擊添加應用。

確認應用程式名稱,即可完成添加。
二、在IDaaS中配置SSO
您只需要將Bitbucket服務地址填寫進來,注意結尾不要以/結尾。
填寫SSO配置

其他選項保持預設,單擊儲存即可完成全部SSO配置。
應用賬戶:預設使用IDaaS賬戶名作為應用登入標識。Bitbucket支援自動建立賬戶,單點登入時,若Bitbucket中不存在指定賬戶,則會直接建立出來。
若希望靈活配置,請參考單點登入通用說明進行配置。
授權範圍:預設全員可用。若希望指定可訪問應用的IDaaS賬戶,請參考單點登入通用說明進行配置。
擷取Bitbucket配置資訊
配置頁下方的應用配置資訊中,包含了Bitbucket完成配置所需要的參數。
從中您需要擷取IdP 中繼資料,IdP 唯一標識IdP,發起SSO地址和密鑰憑證四個參數。
三、Bitbucket中配置SSO
1. 安裝外掛程式
Bitbucket外掛程式市場中有多款用於實現單點登入的外掛程式,單擊Manage apps,搜尋SAML Single Sign On,在搜尋列表中,選擇SAML Single Sign On-SAML SSO Login外掛程式(該外掛程式由miniOrange提供),單擊立即安裝。
外掛程式安裝成功之後,在User-installed apps中可找到SAML Single Sign On for Bitbucket。
2. 配置SSO
啟用外掛程式之後,Bitbucket將在左側導覽列中增加菜單SAML Single Sign On,單擊該菜單,即可進入編輯頁面,如下圖所示:
在Identity Providers頁簽內,單擊Add new Idp,如下圖所示:
單擊Add new Idp表徵圖後,彈框,選擇您的身份提供方Other Idp。

選擇完身份提供方後,填寫Name,如下圖,然後單擊Next。
找到介面中的SAML Idp Metadata Settings,可以通過上傳IDP中繼資料和手動填寫IDP中繼資料兩種方式,配置IdP資訊。
上傳IDP中繼資料
下載列表,選擇I have ametadata URL頁簽,Metadata URL填寫Idp中繼資料地址。

欄位 | IDaaS 中欄位名稱 | 說明 |
Name | - | 輸入一個名字,例如: AliyunIDaaS |
Metadata URL | IdP 中繼資料 IdP Metadata | 從IDaaS單點登入配置頁應用配置資訊中擷取,對應IdP 中繼資料,您可以將中繼資料下載到本地之後,然後在當前頁面進行上傳。 |
匯入完成後可看到如下圖,修改Login Binding 方式為REDIRECT。

手動填寫IDP中繼資料
將IDaaS中擷取到的資訊填寫進入表格中。參數對照如下:
欄位 | IDaaS 中欄位名稱 | 說明 |
Identity Provider Name | - | 輸入一個名字,例如: AliyunIDaaS,這個名字將在 BitBucket登入頁中顯示。 |
IdP Entity ID / Issuer | IdP 唯一標識 IdP Entity ID | 從IDaaS SSO配置頁應用配置資訊中擷取,對應IdP 唯一標識。 |
Login Binding | SP發起請求方式 | 固定值:REDIRECT |
Idp REDIRECT Binding URL | IdP SSO地址 IdP Sign-in URL | 從IDaaS SSO配置頁應用配置資訊中擷取,對應IdP SSO 地址。 |
Certificate | 密鑰憑證 Certificate | 從IDaaS SSO配置頁應用配置資訊中擷取,對應IdP 密鑰憑證。 |
同時關閉Sign Authentication Requests。

選中Service Provider,修改Entity Id為Bitbucket的網域名稱。
修改Protocal Binding方式為POST。

3. 配置屬性對應
若只進行單點登入,則在Find user by Bitbucket attribute,選擇對應的映射規則即可。

4. 單點登入時同步配置(可選)
選擇User Update Method為Update from SAML-Attribute(Just-in-Time Provisioning),如下圖:
開啟Create New Users
建議關閉Update users not created by this app(關閉後,同步時修改只修改單點登入同步過來的使用者)。

必須選擇組,同步後,賬戶會同步到對應的組下面。若不填此項,則同步過來的賬戶單點登入時無許可權。

屬性配置。賬戶同步時,必須有配置FullName和Eamil的屬性對應。如下圖:

目前支援的屬性對應如下圖:
Bitbucket 屬性名稱 | IDaaS SAML 斷言中的屬性名稱 | 說明 |
Username | username | 如果IDaaS中,使用者的使用者名稱。若單點登入時,Use Name ID對應的不是Usename,則需要單獨配置此映射。 |
Full Name | displayName | 如果IDaaS中,使用者的顯示名稱存在,則會在SAML斷言中,通過displayName屬性傳遞給 Bitbucket。 |
E-Mail Address | 如果IDaaS中,使用者的郵箱存在,則會在SAML斷言中,通過 email屬性傳遞給Bitbucket。 |
四、嘗試SSO
您已經可以嘗試Bitbucket SSO。
Bitbucket既支援IDP(IDaaS門戶)發起SSO,也支援SP(應用)發起SSO。
Bitbucket支援自動建立賬戶,單點登入時,若Bitbucket配置使用者同步,則Bitbucket中不存在賬戶則會直接建立,不會拒絕訪問。請在IDaaS中管理Bitbucket存取權限。
IDP發起
請用已授權使用Bitbucket的IDaaS賬戶,登入到IDaaS門戶頁,單擊頁面上Bitbucket,發起SSO。

SP發起
請在匿名瀏覽器中,開啟Bitbucket登入頁,單擊Login again with Single Sign On,則會跳轉到IDaaS進行登入。如果使用者尚未登入IDaaS ,則IDaaS會引導使用者進行登入 。

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