12 lines
414 B
Python
12 lines
414 B
Python
import base64
|
|
import hashlib
|
|
import hmac
|
|
|
|
def calculate_secret_hash(username: str, client_id: str, client_secret: str) -> str:
|
|
"""
|
|
Calculate the Cognito SECRET_HASH using HMAC SHA256 for secret-enabled clients.
|
|
"""
|
|
msg = username + client_id
|
|
dig = hmac.new(client_secret.encode('utf-8'),
|
|
msg.encode('utf-8'), hashlib.sha256).digest()
|
|
return base64.b64encode(dig).decode() |