Derive ARN of AssumedRoles from its role ARN and session name.
This commit is contained in:
parent
24dcdb7453
commit
27fdbb7736
@ -106,7 +106,7 @@ class AssumedRoleAccessKey(object):
|
||||
self._access_key_id = access_key_id
|
||||
self._secret_access_key = assumed_role.secret_access_key
|
||||
self._session_token = assumed_role.session_token
|
||||
self._owner_role_name = assumed_role.arn.split("/")[-1]
|
||||
self._owner_role_name = assumed_role.role_arn.split("/")[-1]
|
||||
self._session_name = assumed_role.session_name
|
||||
if headers["X-Amz-Security-Token"] != self._session_token:
|
||||
raise CreateAccessKeyFailure(reason="InvalidToken")
|
||||
|
@ -22,7 +22,7 @@ class AssumedRole(BaseModel):
|
||||
|
||||
def __init__(self, role_session_name, role_arn, policy, duration, external_id):
|
||||
self.session_name = role_session_name
|
||||
self.arn = role_arn + "/" + role_session_name
|
||||
self.role_arn = role_arn
|
||||
self.policy = policy
|
||||
now = datetime.datetime.utcnow()
|
||||
self.expiration = now + datetime.timedelta(seconds=duration)
|
||||
@ -40,6 +40,10 @@ class AssumedRole(BaseModel):
|
||||
def user_id(self):
|
||||
return self.assumed_role_id + ":" + self.session_name
|
||||
|
||||
@property
|
||||
def arn(self):
|
||||
return self.role_arn + "/" + self.session_name
|
||||
|
||||
|
||||
class STSBackend(BaseBackend):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user