在DataWorks中,您可使用某RAM使用者扮演指定RAM角色,並通過該角色登入DataWork進行相關開發操作。本文為您介紹如何使用角色SSO(Role Base_SSO)的方式登入並使用DataWorks。
背景資訊
DataWorks支援使用如下方式登入:
使用雲帳號登入
您可通過主帳號或RAM使用者登入並使用DataWorks。該方式通過輸入帳號、密碼的方式登入阿里雲控制台,並以當前登入帳號的身份使用DataWorks。該雲帳號將成為DataWorks某個工作空間的成員,擁有DataWorks產品的使用許可權。
使用角色登入
隨著企業安全監管要求的日益嚴格,部分企業更願意通過角色SSO的方式登入並使用DataWorks,此時,阿里雲存取控制角色(RAM Role)將成為DataWorks某個工作空間的成員,扮演該角色的使用者將擁有類似雲帳號成員同樣的產品使用許可權。角色詳情,請參見RAM角色概覽和SAML角色SSO概覽。
注意事項
DataWorks目前支援建立的資料來源中,僅MaxCompute、Hologres支援使用RAM角色操作。
以下授權操作如果需要RAM使用者或角色完成,請為RAM使用者或角色授權AliyunRAMFullAccess策略。授權詳情,請參見為RAM使用者授權。
步驟一:建立RAM角色
登入RAM控制台。
雲帳號管理者以帳號、密碼方式,使用阿里雲主帳號登入RAM控制台。
在左側導覽列,選擇 。
建立角色。
在角色頁面,單擊建立角色,按照指引建立RAM角色。
若需要通過阿里雲控制台切換身份方式扮演該角色,選擇阿里雲帳號類型角色。詳情請參見建立可信實體為阿里雲帳號的RAM角色。
若需要通過本地IDP身份供應商帳號登入至阿里雲扮演該角色,選擇身份供應商類型角色。詳情請參見建立可信實體為身份供應商的RAM角色。
步驟二:定義RAM角色策略
在
頁面,單擊角色名稱,在信任策略頁簽定義RAM角色策略。內容策略大致分兩部分,一部分定義該RAM角色可被阿里雲帳號下RAM使用者或IDP身份扮演,一部分定義該RAM角色可被DataWorks服務扮演,具體策略內容如下,您可根據實際情境選擇。請替換下述策略中的UID為阿里雲主帳號的UID,替換IDP為您選擇的身份供應商的名稱。
情境一:RAM帳號扮演RAM角色
若需要通過RAM使用者扮演RAM角色訪問DataWorks,請為該RAM角色添加以下策略內容。
如下策略中,允許兩個實體(指定RAM使用者和DataWorks服務)擷取扮演角色的臨時身份憑證,AssumeRole的更多資訊,請參見AssumeRole - 擷取扮演角色的臨時身份憑證。
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"RAM": [
"acs:ram::UID:root"
]
}
},
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"dataworks.aliyuncs.com"
]
}
}
],
"Version": "1"
}
情境二:IDP身份供應商帳號扮演RAM角色
若需要通過IDP身份供應商帳號扮演RAM角色訪問DataWorks,請為該RAM角色添加以下策略內容。
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"saml:recipient": "https://signin.aliyun.com/saml-role/sso"
}
},
"Effect": "Allow",
"Principal": {
"Federated": [
"acs:ram::UID:saml-provider/IDP"
]
}
},
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"dataworks.aliyuncs.com"
]
}
}
],
"Version": "1"
}
步驟三:授權RAM使用者AliyunSTSAssumeRoleAccess策略
如果您使用RAM使用者而非IDP帳號來扮演RAM角色,請為RAM使用者授予AliyunSTSAssumeRoleAccess策略。允許RAM使用者調用STS服務,通過調用AssumeRole介面,來擷取該RAM角色的STS Token,獲得該臨時身份憑證。策略授權,詳情請參見為RAM使用者授權。
若通過IDP身份供應商帳號扮演RAM角色,無須執行此步驟。
步驟四:RAM使用者通過RAM角色登入DataWorks
本步驟為您展示RAM使用者如何扮演RAM角色,登入並使用DataWorks。角色SSO詳情,請參見SAML角色SSO概覽。
使用RAM使用者(子帳號)登入DataWorks控制台。
切換身份。
進入DataWorks管理主控台後,將滑鼠移至上方至右上方個人資訊處,單擊切換身份,通過RAM角色登入DataWorks管理主控台。
後續步驟
建立工作空間後,您可執行如下操作:
將RAM角色加入DataWorks工作空間進行資料開發
DataWorks空間管理員可將該RAM角色添加至DataWorks工作空間進行資料開發,操作詳情請參見增加空間成員並管理成員角色許可權。
將RAM角色設定為MaxCompute生產調度身份
建立MaxCompute資料來源時,可將該RAM角色設定為MaxCompute引擎生產環境調度訪問身份,一旦設定為調度訪問身份後,該RAM角色請勿再用於其它地方,並且需保障所有任務均通過獨享調度資源群組執行。