in aws_msk_iam_sasl_signer/MSKAuthTokenProvider.py [0:0]
def __get_expiration_time_ms(request):
"""
Private function that parses the url and gets the expiration time
Args: request (AWSRequest): The signed aws request object
"""
# Parse the signed request
parsed_url = urlparse(request.url)
parsed_ul_params = parse_qs(parsed_url.query)
parsed_signing_time = datetime.strptime(parsed_ul_params['X-Amz-Date'][0],
"%Y%m%dT%H%M%SZ")
# Make the datetime object timezone-aware
signing_time = parsed_signing_time.replace(tzinfo=timezone.utc)
# Convert the Unix timestamp to milliseconds
expiration_timestamp_seconds = int(
signing_time.timestamp()) + DEFAULT_TOKEN_EXPIRY_SECONDS
# Get lifetime of token
expiration_timestamp_ms = expiration_timestamp_seconds * 1000
return expiration_timestamp_ms