華為云計(jì)算 云知識(shí) 獲取桶策略GetBucketPolicy
獲取桶策略GetBucketPolicy

 

接口說明

該接口的實(shí)現(xiàn)使用policy子資源來將指定桶的策略返回給客戶端。

要使用該接口,使用者要求必須是桶的所有者,或者是桶所有者的子用戶且具有獲取桶策略的權(quán)限。

以下兩種場(chǎng)景無法使用此接口獲取桶策略,系統(tǒng)將返回“404 NoSuchBucketPolicy”的錯(cuò)誤: 指定桶的策略不存在 指定桶的標(biāo)準(zhǔn)桶策略為私有且未設(shè)置高級(jí)桶策略

URL
GET  https://obs.cn-north-4.myhuaweicloud.com/ 
請(qǐng)求參數(shù)
名稱 類型 IN 必選 描述
Authorization
 
string header

請(qǐng)求消息中可帶的簽名信息。

Date
 
string header

請(qǐng)求發(fā)起端的日期和時(shí)間,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默認(rèn)值:無。 條件:如果消息頭中帶了x-obs-date字段,則可以不帶該字段,其他情況下必選。

bucket_name
 
string query

請(qǐng)求的桶名稱。

policy
 
string query

policy表示請(qǐng)求桶策略API。

返回參數(shù)
返回碼: 200

成功響應(yīng)消息

名稱 類型 必選 描述
Content-Length
 
string

響應(yīng)消息體的字節(jié)長度。

Connection
 
string

指明與服務(wù)器的連接是長連接還是短連接。

Date
 
string

OBS系統(tǒng)響應(yīng)的時(shí)間。

ETag
 
string

對(duì)象的base64編碼的128位MD5摘要。ETag是對(duì)象內(nèi)容的唯一標(biāo)識(shí),可以通過該值識(shí)別對(duì)象內(nèi)容是否有變化。比如上傳對(duì)象時(shí)ETag為A,下載對(duì)象時(shí)ETag為B,則說明對(duì)象內(nèi)容發(fā)生了變化。實(shí)際的ETag是對(duì)象的哈希值。ETag只反映變化的內(nèi)容,而不是其元數(shù)據(jù)。上傳的對(duì)象或拷貝操作創(chuàng)建的對(duì)象,通過MD5加密后都有唯一的ETag。如果通過多段上傳對(duì)象,則無論加密方法如何,MD5會(huì)拆分ETag,此類情況ETag就不是MD5的摘要。

x-obs-id-2
 
string

幫助定位問題的特殊符號(hào)。

x-obs-request-id
 
string

由OBS創(chuàng)建來唯一確定本次請(qǐng)求的值,可以通過該值來定位問題。

名稱 類型 必選 描述
Policy
 
SetBucketPolicyRequestBody object  
200 Policy
名稱 類型 必選 描述
Statement
 
Array of Statement objects  
200 Policy.Statement
名稱 類型 必選 描述
Sid
 
string

statement Id,可選關(guān)鍵字,描述statement的字符串。

Principal
 
Principal object

可選關(guān)鍵字,被授權(quán)人,指定本條statement權(quán)限針對(duì)的Domain以及User,支持通配符“”,表示所有用戶。當(dāng)對(duì)Domain下所有用戶授權(quán)時(shí),Principal格式為domain/domainid:user/。當(dāng)對(duì)某個(gè)User進(jìn)行授權(quán)時(shí),Principal格式為domain/domainid:user/userId或者domain/domainid:user/userName。

如果通過控制臺(tái)進(jìn)行桶清單配置,控制臺(tái)會(huì)自動(dòng)生成目標(biāo)桶的桶策略。目標(biāo)桶的桶策略中Principal取值則固定為{"Service": "obs"}。關(guān)于桶清單的詳細(xì)介紹請(qǐng)參見桶清單說明。

可選,Principal與NotPrincipal選其一。

NotPrincipal
 
NotPrincipal object

可選關(guān)鍵字,不被授權(quán)人,statement匹配除此之外的其他人。取值同Principal。

可選,NotPrincipal與Principal選其一。

Action
 
Array of strings

可選關(guān)鍵字,指定本條statement作用的操作,Action字段為OBS支持的所有操作集合,以字符串形式表示,不區(qū)分大小寫。支持通配符“”,表示該資源能進(jìn)行的所有操作。例如:"Action":["List", "Get*"]。 可選,Action與NotAction選其一。

NotAction
 
Array of strings

可選關(guān)鍵字,指定一組操作,statement匹配除該組操作之外的其他操作。 取值同Action。 可選,Action與NotAction選其一。

Effect
 
string

必選關(guān)鍵字,效果,指定本條statement的權(quán)限是允許還是拒絕,Effect的值必須為Allow或者Deny。

Resource
 
Array of strings

可選關(guān)鍵字,指定statement起作用的一組資源,支持通配符“*”,表示所有資源。 可選,Resource與NotResource選其一。

NotResource
 
Array of strings

可選關(guān)鍵字,指定一組資源,statement匹配除該組資源之外的其他資源。 取值同Resource。 可選,Resource與NotResource選其一。

Condition
 
Condition object

除了指定效果、被授權(quán)用戶、資源、動(dòng)作外,桶策略還可以指定生效條件。只有當(dāng)條件設(shè)置的表達(dá)式與訪問請(qǐng)求中的值匹配時(shí),桶策略才生效。條件是可選參數(shù),用戶可以根據(jù)業(yè)務(wù)需要選擇是否使用。

條件由條件運(yùn)算符、鍵、值三部分組成,最終組成一個(gè)條件表達(dá)式,決定桶策略生效的條件。同一個(gè)條件運(yùn)算符中,如果存在多個(gè)相同的鍵,則只會(huì)保留最后一個(gè)鍵。條件運(yùn)算符、鍵兩者之間存在互相限制的關(guān)聯(lián)關(guān)系,例如: 條件運(yùn)算符選擇了一個(gè)String類型的,比如StringEquals,鍵就只能選擇String類型的,比如UserAgent。 鍵選擇了一個(gè)Date類型,比如CurrentTime,條件運(yùn)算符就只能選擇Date類型的,比如DateEquals。

Condition判斷類型和鍵如桶策略參數(shù)說明表4-7所示。

200 Policy.Statement.Principal
名稱 類型 必選 描述
ID
 
Array of strings

OBS支持的Principal或NotPrincipal有匿名用戶、特定租戶、特定用戶、聯(lián)合身份用戶,委托用戶。

200 Policy.Statement.NotPrincipal
名稱 類型 必選 描述
ID
 
Array of strings

OBS支持的Principal或NotPrincipal有匿名用戶、特定租戶、特定用戶、聯(lián)合身份用戶,委托用戶。

返回碼: 400

請(qǐng)求失敗響應(yīng)消息。

名稱 類型 必選 描述
Code
 
string

錯(cuò)誤響應(yīng)消息體XML中錯(cuò)誤響應(yīng)對(duì)應(yīng)的HTTP消息返回碼,具體的錯(cuò)誤碼請(qǐng)參見錯(cuò)誤碼-表2。

Message
 
string

錯(cuò)誤響應(yīng)消息體XML中具體錯(cuò)誤更全面、詳細(xì)的英文解釋,具體的錯(cuò)誤消息請(qǐng)參見錯(cuò)誤碼-表2。

RequestId
 
string

本次錯(cuò)誤請(qǐng)求的請(qǐng)求ID,用于錯(cuò)誤定位。

HostId
 
string

返回該消息的服務(wù)端ID。

Resource
 
string

該錯(cuò)誤相關(guān)的桶或?qū)ο筚Y源。

請(qǐng)求示例
示例 1

獲取桶策略

 
"/?policy"
 
"GET /?policy HTTP/1.1 \nHost: examplebucket.obs.cn-north-4.myhuaweicloud.com\nDate: WED, 01 Jul 2015 02:35:46 GMT \nAuthorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=\n"
錯(cuò)誤碼
請(qǐng)參考 錯(cuò)誤碼說明