您可以通過VPC Policy控制授權使用者允許訪問的資源,同時結合Bucket Policy指定資源允許哪些使用者訪問,從而保證雲上資料在一個安全網路環境內進行訪問,降低未授權訪問風險。
前提條件
已建立與Bucket在同一地區的VPC。具體操作,請參見建立和管理專用網路。
背景資訊
通過源端與目的端控制資料訪問安全的方案架構如下:
通過以上方案架構得知:
允許訪問
在授權的VPC內通過授信的使用者AccessKey訪問授權的Bucket資源。
拒絕訪問
在授權的VPC內通過非授信的使用者AccessKey訪問未被授權的Bucket資源。
在非授權的VPC內通過授信的使用者AccessKey訪問授權的Bucket資源。
情境描述
UID為174649585760xxxx
的使用者在OSS中建立了名為examplebucket的儲存空間,用於存放企業的重要資料。此外,使用者還購買了多台ECS運行業務,業務環境搭建在ID為t4nlw426y44rd3iq4xxxx
的Virtual Private Cloud內。
該使用者希望僅允許當前VPC訪問OSS指定資源examplebucket,從而對資料流進行VPC源端存取控制。此外,還需要阻止所有非當前VPC的OSS訪問請求,從而對資料流進行Bucket目的端存取控制。
步驟一:配置VPC Policy
通過VPC Policy限制ID為t4nlw426y44rd3iq4xxxx
的Virtual Private Cloud僅允許訪問OSS中examplebucket下的資源。
登入專用網路管理主控台。
在左側導覽列,單擊終端節點。
在頂部功能表列處,選擇要建立網關終端節點的地區。
單擊網關終端節點頁簽,然後單擊建立終端節點。
在建立終端節點頁面,配置以下參數資訊,然後單擊確定建立。
參數
說明
節點名稱
輸入網關終端節點的名稱。
終端節點類型
選擇需要建立的終端節點類型,本教程選擇網關終端節點。
終端節點服務
單擊選擇可用服務,然後選擇服務資源類型為Object Storage Service的終端節點服務。
專用網路
選擇需要建立網關終端節點的VPC。
路由表
選擇與網關終端節點關聯的路由表。
資源群組
選擇終端節點所屬資源群組。
描述
輸入終端節點的描述資訊。
存取原則
輸入以下存取原則。
{ "Statement": [ { "Action": "oss:*", "Effect": "Allow", "Principal": ["174649585760xxxx"], "Resource": ["acs:oss:*:*:examplebucket", "acs:oss:*:*:examplebucket/*"] } ], "Version": "1" }
重要如果沒有配置VPC Policy,則預設允許該VPC訪問相同地區的Bucket。如果配置了VPC Policy,則只有鑒權結果為Allow時,才允許該VPC訪問相同地區的Bucket。
步驟二:配置Bucket Policy
通過Bucket Policy阻止ID不為t4nlw426y44rd3iq4xxxx
VPC網路請求訪問OSS資源。
登入OSS管理主控台。
在左側導覽列,單擊Bucket 列表,然後單擊examplebucket。
在左側導覽列,選擇許可權控制>Bucket 授權策略。
在Bucket 授權策略頁簽,單擊按文法策略添加。
單擊編輯,然後輸入以下Bucket Policy。
{ "Statement" : [ { "Action": ["oss:*"], "Effect": "Deny", "Principal": ["*"], "Resource": "acs:oss:*:*:*", "Condition": { "StringNotEquals" : { "acs:SourceVpc": ["t4nlw426y44rd3iq4xxxx"] } } } ] , "Version": "1" }
重要如果Bucket Policy鑒權結果為Deny,則拒絕訪問。如果鑒權結果不是Deny,則需要結合RAM Policy等結果綜合判定是否允許訪問。更多資訊,請參見OSS鑒權詳解。
單擊保存後,在彈出的對話方塊,單擊確定。