sts: Implement get_caller_identity (#806)
Return a canned response Signed-off-by: Andrew Harris <andrew.harris@getbraintree.com>
This commit is contained in:
parent
55f39265dd
commit
f68b2963db
@ -39,6 +39,9 @@ class TokenResponse(BaseResponse):
|
||||
template = self.response_template(ASSUME_ROLE_RESPONSE)
|
||||
return template.render(role=role)
|
||||
|
||||
def get_caller_identity(self):
|
||||
template = self.response_template(GET_CALLER_IDENTITY_RESPONSE)
|
||||
return template.render()
|
||||
|
||||
GET_SESSION_TOKEN_RESPONSE = """<GetSessionTokenResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/">
|
||||
<GetSessionTokenResult>
|
||||
@ -95,3 +98,15 @@ ASSUME_ROLE_RESPONSE = """<AssumeRoleResponse xmlns="https://sts.amazonaws.com/d
|
||||
<RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>
|
||||
</ResponseMetadata>
|
||||
</AssumeRoleResponse>"""
|
||||
|
||||
GET_CALLER_IDENTITY_RESPONSE = """<GetCallerIdentityResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/">
|
||||
<GetCallerIdentityResult>
|
||||
<Arn>arn:aws:sts::123456789012:user/moto</Arn>
|
||||
<UserId>AKIAIOSFODNN7EXAMPLE</UserId>
|
||||
<Account>123456789012</Account>
|
||||
</GetCallerIdentityResult>
|
||||
<ResponseMetadata>
|
||||
<RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>
|
||||
</ResponseMetadata>
|
||||
</GetCallerIdentityResponse>
|
||||
"""
|
||||
|
@ -26,3 +26,14 @@ def test_sts_get_federation_token():
|
||||
res.status_code.should.equal(200)
|
||||
res.data.should.contain(b"SessionToken")
|
||||
res.data.should.contain(b"AccessKeyId")
|
||||
|
||||
|
||||
def test_sts_get_caller_identity():
|
||||
backend = server.create_backend_app("sts")
|
||||
test_client = backend.test_client()
|
||||
|
||||
res = test_client.get('/?Action=GetCallerIdentity')
|
||||
res.status_code.should.equal(200)
|
||||
res.data.should.contain(b"Arn")
|
||||
res.data.should.contain(b"UserId")
|
||||
res.data.should.contain(b"Account")
|
||||
|
@ -2,6 +2,7 @@ from __future__ import unicode_literals
|
||||
import json
|
||||
|
||||
import boto
|
||||
import boto3
|
||||
from freezegun import freeze_time
|
||||
import sure # noqa
|
||||
|
||||
@ -64,3 +65,11 @@ def test_assume_role():
|
||||
|
||||
role.user.arn.should.equal("arn:aws:iam::123456789012:role/test-role")
|
||||
role.user.assume_role_id.should.contain("session-name")
|
||||
|
||||
@mock_sts
|
||||
def test_get_caller_identity():
|
||||
identity = boto3.client("sts").get_caller_identity()
|
||||
|
||||
identity['Arn'].should.equal('arn:aws:sts::123456789012:user/moto')
|
||||
identity['UserId'].should.equal('AKIAIOSFODNN7EXAMPLE')
|
||||
identity['Account'].should.equal('123456789012')
|
||||
|
Loading…
Reference in New Issue
Block a user