要在AWS Cognito中创建一个通过电子邮件进行身份验证的帐户,可以使用以下代码示例:
import boto3
client = boto3.client('cognito-idp', region_name='YOUR_AWS_REGION', aws_access_key_id='YOUR_AWS_ACCESS_KEY', aws_secret_access_key='YOUR_AWS_SECRET_ACCESS_KEY')
请将 YOUR_AWS_REGION,YOUR_AWS_ACCESS_KEY 和 YOUR_AWS_SECRET_ACCESS_KEY 替换为您的实际值。
response = client.create_user_pool(
PoolName='YOUR_USER_POOL_NAME',
Policies={
'PasswordPolicy': {
'MinimumLength': 8,
'RequireUppercase': True,
'RequireLowercase': True,
'RequireNumbers': True,
'RequireSymbols': True
}
},
AutoVerifiedAttributes=['email'],
EmailVerificationMessage='Your verification code is {####}.',
EmailVerificationSubject='Verify your email'
)
请将 YOUR_USER_POOL_NAME 替换为您想要创建的用户池的名称。
user_pool_id = response['UserPool']['Id']
response = client.admin_create_user(
UserPoolId=user_pool_id,
Username='user@example.com',
TemporaryPassword='Temp@1234',
UserAttributes=[
{
'Name': 'email',
'Value': 'user@example.com'
},
{
'Name': 'email_verified',
'Value': 'true'
}
]
)
请将 user@example.com 替换为您想要创建的用户的电子邮件地址。
response = client.admin_initiate_auth(
UserPoolId=user_pool_id,
ClientId='YOUR_APP_CLIENT_ID',
AuthFlow='ADMIN_USER_PASSWORD_AUTH',
AuthParameters={
'USERNAME': 'user@example.com',
'PASSWORD': 'Temp@1234'
}
)
请将 YOUR_APP_CLIENT_ID 替换为您的应用程序客户端ID。
以上代码示例演示了如何通过电子邮件进行身份验证的一般流程。请根据您的实际需求进行适当的修改和调整。