簡介:企業上雲多帳號架構中,如何作到從上到下管理的同時,處理好員工的權限邊界問題?
咱們的企業客戶上雲,通常都是從嘗試部署少許業務開始,而後逐步將更多業務採用雲上架構。隨着企業上雲的進一步深刻,愈來愈多的企業業務被放在了雲端,這使得企業採購的雲資源迅速增多,資源、項目、人員、權限的管理變得極其複雜,僅僅使用一個帳號,使得問題被放大,很可貴到有效解決。單帳號負載太重已無力支撐,許多企業開始建立更多帳號以分散業務壓力。因而,許多企業選擇使用了更多帳號,對應其不一樣的業務。所以,從帳號的使用方面看,企業使用的帳號數量逐步增多,多帳號上雲模式逐漸成爲多業務上雲的重要選項。html
諸多企業選擇採用多帳號模式上雲,也是因爲多帳號相對單帳號而言,有着不可替代的優點。安全
帳號與帳號之間默認是隔離的。這將避免不一樣業務間發生依賴項衝突或資源爭用,甚至能夠支持爲每一個業務設置明確的資源限制。架構
消除安全「核按鈕」。當非法用戶竊取到一個高權限時,「爆炸半徑」被限定到單個帳號內,而不影響企業全部業務。運維
每一個帳號均可對應惟一一個法律主體,多帳號環境自然支持集團企業的多分公司主體、以及不一樣業務的不一樣結算模式。測試
業務過多致使「臃腫」不利於管理,業務間也非扁平形態,存在業務關聯的「組織性」要求,單個帳號很難解決,多帳號卻易於實現;同時,藉助帳號的獨立性,它們可輕鬆地拆分或融合於不一樣的管控域,與企業業務適配聯動。阿里雲
多帳號的採用,若是不去有序的管理它,也會有不少麻煩。spa
好比,帳號散落沒有集中、沒有結構化,就沒法作到組織化管理。再好比,上層管理者如何可以一眼全局、如何可以集中管控,都是影響企業業務效率的問題,須要解決。設計
無序管理的多帳號人心渙散,有序管理是企業多帳號模式促進生產效率的第一要務。日誌
從多帳號組織化問題看,阿里雲的資源目錄產品,能夠很好地解決多帳號有序管理問題。這是資源目錄的基礎能力之一。code
資源目錄是阿里雲面向企業客戶,提供的基於多帳號的管理與治理服務。詳細瞭解資源目錄
你們能夠看到,上圖中,利用資源目錄的組織能力,企業能夠很快的構建屬於本身的業務架構,將企業多帳號按照業務關係聚合,造成結構化易管理的形態,並提供閉環的企業雲資源管理服務,以此來適配業務的管理須要。
阿里雲諸多大客戶對於企業TopDown管控愈來愈重視。
隨着客戶業務的大量上雲,員工(user)被密集且複雜的授予各類資源、服務的權限以運做這些業務,企業管理端很難很是細緻地考量每一個業務的具體受權,但但願可以從頂層作出企業的全局管控,即制定企業「大規範」以限定用戶權限邊界,以避免超出公司的合規範圍。
如何可以簡單高效的解決這個問題?如下是資源目錄管控策略產品設計的初衷。
管控策略(Control Policy,下文簡稱CP) 是一種基於資源結構(資源目錄中的組織單元或成員帳號)的訪問控制策略,能夠統一管理資源目錄各層級內資源訪問的權限邊界,創建企業總體訪問控制原則或局部專用原則。管控策略只定義權限邊界,並不真正授予權限,您還須要在某個成員帳號中使用訪問控制(RAM)設置權限後,相應身份才具有對資源的訪問權限。
從企業上雲的角度看,管控策略的實施對象是企業用戶對所需雲資源的操做行爲。從企業用戶訂購雲資源、配置和使用雲資源、最後到銷燬雲資源,管控策略能夠對企業用戶操做雲資源的整個生命週期行爲做出預設的前置校驗,阻止不符合預設規則的操做發生,最終達到規範企業用戶對雲資源使用行爲的目的。
管控策略(CP)是如何實現權限管控效果的呢?
上圖所示爲用戶訪問資源請求的鑑權流程。管控策略在鑑權引擎中增長前置校驗邏輯,在正式鑑權以前就對操做發生的邊界進行斷定:對於Explicit Deny(顯式拒絕)或Implicit Deny(隱式拒絕),將直接作出「拒絕」結果,僅當管控策略的斷定結果是Allow(容許)時,鑑權引擎纔會進行下一步斷定。您能夠詳細瞭解權限斷定流程
當企業建立了一個資源目錄,併爲每一個部門建立了成員帳號後,若是對各成員帳號的行爲不加以管控,就會破壞運維規則,帶來安全風險和成本浪費。利用資源目錄-管控策略功能,企業能夠經過企業管理帳號集中制定管理規則,並將這些管理規則應用於資源目錄的各級組織結構(資源夾、成員帳號)上,管控各成員帳號內資源的訪問規則,確保安全合規和成本可控。例如:禁止成員帳號申請域名,禁止成員帳號刪除日誌記錄等。
當成員帳號中的RAM用戶或角色訪問阿里雲服務時,阿里雲將會先進行管控策略檢查,再進行帳號內的RAM權限檢查。具體以下:
CP使用與RAM基本相同的語法結構。您能夠詳細瞭解權限策略語法和結構
CP語法結構中包含版本號和受權語句列表,每條受權語句包括受權效力(Effect)、操做(Action)、資源(Resource)以及限制條件(Condition,可選項)。其中CP較RAM的Condition支持上,多了一種條件Key:acs:PrincipalARN,實現對執行者身份(目前支持Role)的條件檢查,主要應用場景爲下文中提到的「避免指定雲服務訪問被管控」。您能夠瞭解更多CP語言的使用方法
您能夠將自定義CP綁定到資源目錄的任意節點,包含任何一個資源夾或成員帳號。CP具有基於資源目錄樹形結構從上向下繼承的特色,例如:爲父資源夾設置管控策略A,爲子資源夾設置管控策略B,則管控策略A和管控策略B都會在子資源夾及其下的成員帳號中生效。
管控策略將對被管控成員帳號中的資源訪問權限限定邊界,邊界以外的權限將不容許生效,此限定一樣影響阿里雲服務對該成員帳號訪問的有效性。
阿里雲服務可能使用服務角色(Service Role)訪問您帳號中的資源,以實現雲服務的某些功能。當一個服務角色的權限超過管控策略的邊界時,此權限會受到管控策略的約束,這可能致使雲服務的某些功能不能正常使用。若是這正是您配置管控策略指望的結果,則無需進行其餘額外操做,可是,若是您不但願這些雲服務被管控,您能夠採用如下方法進行處理:
{ "Statement": [ { "Action": [ "ram:UpdateUser" ], "Resource": "*", "Effect": "Deny", "Condition": { "StringNotLike": { "acs:PrincipalARN":"acs:ram:*:*:role/<服務角色名稱>" } } } ], "Version": "1" }
阿里雲資源目錄-管控策略目前已支持對152款雲產品,您能夠查看支持管控策略的雲服務
管控策略的使用限制以下:
咱們建議您先進行局部小範圍測試,確保策略的有效性與預期一致,而後再綁定到所有目標節點(資源夾、成員帳號)。
您在編寫自定義管控策略時,可參考自定義管控策略示例
本文內容由阿里雲實名註冊用戶自發貢獻,版權歸原做者全部,阿里雲開發者社區不擁有其著做權,亦不承擔相應法律責任。具體規則請查看《阿里雲開發者社區用戶服務協議》和《阿里雲開發者社區知識產權保護指引》。若是您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將馬上刪除涉嫌侵權內容。