阿里云-訪問控制服務API文檔-D_第1頁
阿里云-訪問控制服務API文檔-D_第2頁
阿里云-訪問控制服務API文檔-D_第3頁
阿里云-訪問控制服務API文檔-D_第4頁
阿里云-訪問控制服務API文檔-D_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、訪問控制STS API文檔訪問控制/STS API文檔訪問控制/STS API文檔 PAGE 13 PAGE 13STS API文檔STS介紹阿里云STS (Security Token Service) 是為阿里云賬號(或RAM用戶)提供短期訪問權限管理的云服務。通過STS,您可以為聯(lián)盟用戶(您的本地賬號系統(tǒng)所管理的用戶)頒發(fā)一個自定義時效和訪問權限的訪問憑證。聯(lián) 盟用戶可以使用STS短期訪問憑證直接調用阿里云服務API,或登錄阿里云管理控制臺操作被授權訪問的資源。訪問點STS的默認訪問點地址是: ,用戶必須使用https接入訪問點。術語表術語中文說明Federated identity聯(lián)盟

2、用戶身份聯(lián)盟用戶的身份認證由客戶自己管理Policy訪問策略用來描述授權策略的一種描述語言Grantor授權者授權令牌的頒發(fā)者(云賬號或RAM用戶)Name被授權者授權令牌的使用者(即聯(lián)盟用戶)調用方式請求結構服務地址STS服務的API接入地址為通信協(xié)議為了保證通信的安全性,STS服務僅支持使用HTTPS安全通道發(fā)送請求。HTTP請求方法支持HTTP GET/POST方法發(fā)送請求,這種方式下請求參數(shù)需要包含在請求的URL中。(GET請求最大不得超過4KB, POST請求最大不得超過10MB)請求參數(shù)每個請求都需要指定要執(zhí)行的操作,即Action參數(shù)(例如AddUser),以及每個操作接口都需要

3、包含的公共請 求參數(shù)和指定操作接口所特有的請求參數(shù)。字符編碼請求及返回結果都使用UTF-8字符集進行編碼。公共請求參數(shù)FormatFormatStringJSON與XML,默認為XML。VersionVersionStringAPI版本號,為日期形式:YYYY-MM-DD,本版本對應為2015-04-01。AccessKeyIdAccessKeyIdStringID。SignatureSignatureStringSignatureMethodSignatureMethodStringHMAC-SHA1。SignatureVersionSignatureVersionString1.0Sign

4、atureNonceSignatureNonceStringTimestampTimestampStringISO8601標準表示,并需要使用UTCYYYY-MM-DDThh:mm:ssZ 例如,2013-01-10T12:00:00Z(為北京時間2013年1月10日20點0分0秒)請求示例/?Format=xml &Version=2015-04-01&Signature=Pc5WB8gokVn0 xfeu%2FZV%2BiNM1dgI%3D &SignatureMethod=HMAC-SHA1 &SignatureNonce=15215528852396 &SignatureVersion

5、=1.0&AccessKeyId=key-test &Timestamp=2012-06-01T12:00:00Z公共返回參數(shù)用戶發(fā)送的每次接口調用請求,無論成功與否,系統(tǒng)都會返回一個唯一識別碼RequestId給用戶。示例4C467B38-3910-447D-87BC-AC049166F216JSON示例RequestId: 4C467B38-3910-447D-87BC-AC049166F216/* 返回結果數(shù)據(jù) */返回結果處理調用API服務后返回數(shù)據(jù)采用統(tǒng)一格式,返回的HTTP狀態(tài)碼為2xx,代表調用成功;返回4xx或5xx的HTTP狀態(tài) 碼代表調用失敗。調用成功返回的數(shù)據(jù)格式主要有X

6、ML和JSON兩種,外部系統(tǒng)可以在請求時傳入?yún)?shù)來制定 返回的數(shù)據(jù)格式,默認為XML格式。本文檔中的返回示例為了便于用戶查看,做了格式化處理,實際返回結果 是沒有進行換行、縮進等處理的。成功結果XML示例4C467B38-3910-447D-87BC-AC049166F216JSON示例RequestId: 4C467B38-3910-447D-87BC-AC049166F216,/* 返回結果數(shù)據(jù) */錯誤結果調用接口出錯后,將不會返回結果數(shù)據(jù)。調用方可根據(jù)附表來定位錯誤原因。當調用出錯時,HTTP請求返回一個4xx或5xx的HTTP狀態(tài)碼。返回的消息體中是具體的錯誤代碼及錯誤信息。 另外還

7、包含一個全局唯一的請求ID:RequestId和一個您該次請求訪問的站點ID:HostId。在調用方找不到錯 誤原因時,可以聯(lián)系阿里云客服,并提供該HostId和RequestId,以便我們盡快幫您解決問題。8906582E-6722-409A-A6C4-0E7863B733A5InvalidParameterInvalidParameterThe specified parameter Action or Version is not valid.RequestId: 7463B73D-35CC-4D19-A010-6B8D65D242EF,RequestId: 7463B73D-35CC-

8、4D19-A010-6B8D65D242EF,HostId: , Code: InvalidParameter,Message: The specified parameter Action or Version is not valid.簽名機制HTTP還是HTTPS協(xié)議提交請求,都需要在請求中包 含簽名(Signature)信息。STS通過使用Access Key ID和Access Key Secret進行對稱加密的方法來驗證請求的發(fā)送者身份。Access Key ID和Access Key Secret由阿里云官方頒發(fā)給訪問者(可以通過阿里云官方網(wǎng)站申請和管理),其中Access Ke

9、y ID用于標識訪問者的身份;Access Key Secret是用于加密簽名字符串和服務器端驗證簽名字符串的密鑰,必須嚴格保密,只有阿里云和用戶知道。簽名步驟使用請求參數(shù)構造規(guī)范化的請求字符串(Canonicalized Query String)按照參數(shù)名稱的字典順序對請求中所有的請求參數(shù)(包括文檔中描述的公共請求參數(shù)和給定了的 請求接口的自定義參數(shù),但不能包括公共請求參數(shù)中提到Signature參數(shù)本身)進行排序。注:當使用GET方法提交請求時,這些參數(shù)就是請求URI中的參數(shù)部分(即URI中?之后由&連接 的部分)。對每個請求參數(shù)的名稱和值進行編碼。名稱和值要使用UTF-8字符集進行UR

10、L編碼,URL編碼的編 碼規(guī)則是:A-Z、a-z、0-9以及字符-、_、.、不編碼;對于其他字符編碼成%XY的格式,其中XY是字符對應ASCII碼的16進制表示。比如英文 的雙引號()對應的編碼就是%22需要說明的是英文空格()要被編碼是%20,而不是加號(+)。注:一般支持URL編碼的庫(比如Java中的.URLEncoder)都是按照application/x-www- form-urlencoded的MIME類型的規(guī)則進行編碼的。實現(xiàn)時可以直接使用這類方式進行編碼,把編碼后的字符串中加號(+)替換成%20、星號(*)替換成%2A、%7E替換回波浪號(),即可得 到上述規(guī)則描述的編碼字符串

11、。對編碼后的參數(shù)名稱和值使用英文等號(=)進行連接。再把英文等號連接得到的字符串按參數(shù)名稱的字典順序依次使用&符號連接,即得到規(guī)范化請求 字符串。StringToSign= HTTPMethod + & + percentEncode(/) + & +percentEncode(CanonicalizedQueryString)StringToSign= HTTPMethod + & + percentEncode(/) + & +percentEncode(CanonicalizedQueryString)其中HTTPMethod是提交請求用的HTTP方法,比GET。 percentEnco

12、de(/)是按照1.b中描述的URL編碼規(guī)則對字符/進行編碼得到的值,即%2F。percentEncode(CanonicalizedQueryString)是對第1步中構造的規(guī)范化請求字符串按1.b中描述的URL編碼規(guī)則編碼后得到的字符串。按照RFC2104的定義,使用上面的用于簽名的字符串計算簽名HMAC值。注意:計算簽名時使用的Key就是用戶持有的Access Key Secret并加上一個&字符(ASCII:38),使用的哈希算法是SHA1。按照Base64編碼規(guī)則把上面的HMAC值編碼成字符串,即得到簽名值(Signature)。5. 將得到的簽名值作為Signature參數(shù)添加到請

13、求參數(shù)中,即完成對請求簽名的過程。 注意:得到的簽名值在作為最后的請求參數(shù)值提交給STS服務器的時候,要和其他參數(shù)一樣,按照RFC3986的規(guī)則進 行URL編碼)。示例/?SignatureVersion=1.0&Format=JSON&Timestamp=2015-09- 01T05%3A57%3A34Z&RoleArn=acs%3Aram%3A%3A1234567890123%3Arole%2Ffirstrole&RoleSessionName=clien /?SignatureVersion=1.0&Format=JSON&Timestamp=2015-09- 01T05%3A57%3A

14、34Z&RoleArn=acs%3Aram%3A%3A1234567890123%3Arole%2Ffirstrole&RoleSessionName=clien t&AccessKeyId=testid&SignatureMethod=HMAC-SHA1&Version=2015-04- 01&Action=AssumeRole&SignatureNonce=571f8fb8-506e-11e5-8e12-b8e8563dc8d2對應的StringToSign是:GET&%2F&AccessKeyId%3Dtestid%26Action%3DAssumeRole%26Format%3DJSO

15、N%26RoleArn%3Dacs%253AramGET&%2F&AccessKeyId%3Dtestid%26Action%3DAssumeRole%26Format%3DJSON%26RoleArn%3Dacs%253Aram%253A%253A1234567890123%253Arole%252Ffirstrole%26RoleSessionName%3Dclient%26SignatureMethod%3DH MAC-SHA1%26SignatureNonce%3D571f8fb8-506e-11e5-8e12- b8e8563dc8d2%26SignatureVersion%3D1.

16、0%26Timestamp%3D2015-09-01T05%253A57%253A34Z%26Version%3D2015-04-0101T05%253A57%253A34Z%26Version%3D2015-04-01gNI7b0AyKZHxDgjBGPDgJ1Ce3L4=假如使用的Access Key Id是testid,Access Key Secret是testsecret,用于計算HMAC的Key就是testsecret&,則計算得到的簽名值是:gNI7b0AyKZHxDgjBGPDgJ1Ce3L4=簽名后的請求URL為(注意增加了Signature參數(shù)):/?SignatureVe

17、rsion=1.0&Format=JSON&Timestamp=2015-09- /?SignatureVersion=1.0&Format=JSON&Timestamp=2015-09- 01T05%3A57%3A34Z&RoleArn=acs%3Aram%3A%3A1234567890123%3Arole%2Ffirstrole&RoleSessionName=clien t&AccessKeyId=testid&SignatureMethod=HMAC-SHA1&Version=2015-04- 01&Signature=gNI7b0AyKZHxDgjBGPDgJ1Ce3L4%3D&Ac

18、tion=AssumeRole&SignatureNonce=571f8fb8-506e- 11e5-8e12-b8e8563dc8d2操作接口扮演角色(AssumeRole)接口描述通過該接口,獲取一個扮演該角色的臨時身份。請求參數(shù)Action類型:String必須:是描述:系統(tǒng)規(guī)定參數(shù),取值:AssumeRoleRoleArn類型:String必須:是描述:指定角色的資源描述符;每個角色都有一個唯一的資源描述符(Arn),您可以在RAM的角色管理中查看一個角色的ArnRoleSessionName類型:String必須:是描述:此參數(shù)用來區(qū)分不同的Token,以標明誰在使用此Token,便

19、于審計;- 格式:a-zA-Z0-9.-_+$ 2-32個字符Policy名稱:Policy類型:String必須:否描述:長度限制為1024字節(jié);您可以通過此參數(shù)限制生成的Token的權限,不指定則返回的Token將 擁有指定角色的所有權限;DurationSeconds名稱:DurationSeconds類型:Integer必須:否描述:指定的過期時間,單位為秒。過期時間范圍:9003600,默認值為3600。返回參數(shù)Credentials類型:Credentials描述:訪問憑證AssumedRoleUser類型:AssumedRoleUser描述:角色扮演臨時身份操作示例?Action

20、=AssumeRole &RoleArn=acs:ram:1234567890123456:role/adminroleHTTP Request?Action=AssumeRole &RoleArn=acs:ram:1234567890123456:role/adminrole&RoleSessionName=alice &DurationSeconds=3600 &Policy= &RoleSessionName=alice &DurationSeconds=3600 &Policy= &HTTP Response6894B13B-6D71-4EF5-88FA-F32781734A7Facs

21、:sts:1234567890123456:assumed-role/AdminRole/alice6894B13B-6D71-4EF5-88FA-F32781734A7Facs:sts:1234567890123456:assumed-role/AdminRole/alice344584339364951186:aliceSTS.L4aBSCSJVMuKg5U1vFDwwyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pKCNZ9CAESrAIIARKAAShQquMnLIlbvEcIxO6wCoqJufs8sWwieUxu45hS9AvKNEte8KRUWiJWJ6Y+Y

22、HAPgN wi7yfRecMFydL2uPOgBI7LDio0RkbYLmJfIxHM2nGBPdml7kYEOXmJp2aDhbvvwVYIyt/8iES/R6N208wQh0Pk2bu+/9d valp6wOHF4gkFGhhTVFMuTDRhQlNDU0pWTXVLZzVVMXZGRHciBTQzMjc0KgVhbGljZTCpnJjwySk6BlJzYU1ENUJuC gExGmkKBUFsbG93Eh8KDEFjdGlvbkVxdWFscxIGQWN0aW9uGgcKBW9zczoqEj8KDlJlc291cmNlRXF1YWxzEghSZXNv dXJjZRojCiFhY3M6b

23、3NzOio6NDMyNzQ6c2FtcGxlYm94L2FsaWNlLyo=2015-04-09T11:52:19ZJSON格式Credentials: AccessKeyId: STS.L4aBSCSJVMuKg5U1vFDw,AccessKeySecret: wyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pKCNZ9, Expiration: 2015-04-09T11:52:19Z,SecurityToken: CAESrAIIARKAAShQquMnLIlbvEcIxO6wCoqJufs8sWwieUxu45hS9AvKNEte8KRUWiJWJ6Y+YHAPg

24、Nwi7yfRecMFydL2 uPOgBI7LDio0RkbYLmJfIxHM2nGBPdml7kYEOXmJp2aDhbvvwVYIyt/8iES/R6N208wQh0Pk2bu+/9dvalp6wOHF4gkF GhhTVFMuTDRhQlNDU0pWTXVLZzVVMXZGRHciBTQzMjc0KgVhbGljZTCpnJjwySk6BlJzYU1ENUJuCgExGmkKBUFsb G93Eh8KDEFjdGlvbkVxdWFscxIGQWN0aW9uGgcKBW9zczoqEj8KDlJlc291cmNlRXF1YWxzEghSZXNvdXJjZRojCiFhY3 M6b3NzO

25、io6NDMyNzQ6c2FtcGxlYm94L2FsaWNlLyo=,AssumedRoleUser: arn: acs:sts:1234567890123456:assumed-role/AdminRole/alice, AssumedRoleUserId:344584339364951186:alice,RequestId: 6894B13B-6D71-4EF5-88FA-F32781734A7F數(shù)據(jù)類型Credentials描述訪問憑證節(jié)點名稱Credentials子節(jié)點AccessKeyId類型:String描述:訪問密鑰標識AccessKeySecret類型:String描述:訪問密鑰SecurityToken類型:String描述:安全令牌Expiration類型:String描述:失效時間AssumedRoleUser描述通過扮演角色接口獲取的臨時身份節(jié)點名稱As

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論