Используя AWS SDK для .Net, я могу зарегистрировать пользователя в UserPool, используя
AmazonCognitoIdentityProviderClient provider = new AmazonCognitoIdentityProviderClient(new Amazon.Runtime.AnonymousAWSCredentials(), RegionEndpoint.USEast1);
SignUpRequest signUpRequest = new SignUpRequest()
{
ClientId = CLIENTAPP_ID,
Password = user.Password,
Username = user.Username
};
await provider.SignUpAsync(signUpRequest);
После регистрации я хочу аутентифицировать пользователя и войти в систему и перенаправить на авторизованную страницу. Используя следующий код, я могу получить Auth Token
CognitoUserPool userPool = new CognitoUserPool(this.POOL_ID, this.CLIENTAPP_ID, provider);
CognitoUser user = new CognitoUser(username, this.CLIENTAPP_ID, userPool, provider);
InitiateSrpAuthRequest authRequest = new InitiateSrpAuthRequest()
{
Password = password
};
AuthFlowResponse authResponse = await user.StartWithSrpAuthAsync(authRequest).ConfigureAwait(false);
if (authResponse.AuthenticationResult != null)
{
// Here i can see authResponse.AuthenticationResult.AccessToken
}
Но теперь для любого следующего запроса к GetUserAttributes или DeleteUser, как я могу использовать возвращенный токен пользователя?
Я вижу, что есть userPool.getCurrentUser();
, но это не доступно в .Net SDK, его в JS SDK я думаю.
Итак, как я могу делать аутентифицированные запросы после регистрации / входа в систему для выполнения различных других операций, таких как UpdateAttributes или DeleteUser и т. Д., Используя .Net SDK или используя вызовы REST Api
Пожалуйста, предложите