UNPKG

@aws-sdk/client-cognito-identity-provider

Version:

AWS SDK for JavaScript Cognito Identity Provider Client for Node.js, Browser and React Native

124 lines (123 loc) 6.36 kB
import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { CognitoIdentityProviderClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CognitoIdentityProviderClient"; import { SetUserMFAPreferenceRequest, SetUserMFAPreferenceResponse } from "../models/models_1"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link SetUserMFAPreferenceCommand}. */ export interface SetUserMFAPreferenceCommandInput extends SetUserMFAPreferenceRequest { } /** * @public * * The output of {@link SetUserMFAPreferenceCommand}. */ export interface SetUserMFAPreferenceCommandOutput extends SetUserMFAPreferenceResponse, __MetadataBearer { } declare const SetUserMFAPreferenceCommand_base: { new (input: SetUserMFAPreferenceCommandInput): import("@smithy/smithy-client").CommandImpl<SetUserMFAPreferenceCommandInput, SetUserMFAPreferenceCommandOutput, CognitoIdentityProviderClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>; new (__0_0: SetUserMFAPreferenceCommandInput): import("@smithy/smithy-client").CommandImpl<SetUserMFAPreferenceCommandInput, SetUserMFAPreferenceCommandOutput, CognitoIdentityProviderClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** * <p>Set the user's multi-factor authentication (MFA) method preference, including which * MFA factors are activated and if any are preferred. Only one factor can be set as * preferred. The preferred MFA factor will be used to authenticate a user if multiple * factors are activated. If multiple options are activated and no preference is set, a * challenge to choose an MFA option will be returned during sign-in. If an MFA type is * activated for a user, the user will be prompted for MFA during all sign-in attempts * unless device tracking is turned on and the device has been trusted. If you want MFA to * be applied selectively based on the assessed risk level of sign-in attempts, deactivate * MFA for users and turn on Adaptive Authentication for the user pool.</p> * <p>Authorize this action with a signed-in user's access token. It must include the scope <code>aws.cognito.signin.user.admin</code>.</p> * <note> * <p>Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For * this operation, you can't use IAM credentials to authorize requests, and you can't * grant IAM permissions in policies. For more information about authorization models in * Amazon Cognito, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pools-API-operations.html">Using the Amazon Cognito user pools API and user pool endpoints</a>.</p> * </note> * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { CognitoIdentityProviderClient, SetUserMFAPreferenceCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import * // const { CognitoIdentityProviderClient, SetUserMFAPreferenceCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import * const client = new CognitoIdentityProviderClient(config); * const input = { // SetUserMFAPreferenceRequest * SMSMfaSettings: { // SMSMfaSettingsType * Enabled: true || false, * PreferredMfa: true || false, * }, * SoftwareTokenMfaSettings: { // SoftwareTokenMfaSettingsType * Enabled: true || false, * PreferredMfa: true || false, * }, * EmailMfaSettings: { // EmailMfaSettingsType * Enabled: true || false, * PreferredMfa: true || false, * }, * AccessToken: "STRING_VALUE", // required * }; * const command = new SetUserMFAPreferenceCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param SetUserMFAPreferenceCommandInput - {@link SetUserMFAPreferenceCommandInput} * @returns {@link SetUserMFAPreferenceCommandOutput} * @see {@link SetUserMFAPreferenceCommandInput} for command's `input` shape. * @see {@link SetUserMFAPreferenceCommandOutput} for command's `response` shape. * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. * * @throws {@link ForbiddenException} (client fault) * <p>This exception is thrown when WAF doesn't allow your request based on a web * ACL that's associated with your user pool.</p> * * @throws {@link InternalErrorException} (server fault) * <p>This exception is thrown when Amazon Cognito encounters an internal error.</p> * * @throws {@link InvalidParameterException} (client fault) * <p>This exception is thrown when the Amazon Cognito service encounters an invalid * parameter.</p> * * @throws {@link NotAuthorizedException} (client fault) * <p>This exception is thrown when a user isn't authorized.</p> * * @throws {@link PasswordResetRequiredException} (client fault) * <p>This exception is thrown when a password reset is required.</p> * * @throws {@link ResourceNotFoundException} (client fault) * <p>This exception is thrown when the Amazon Cognito service can't find the requested * resource.</p> * * @throws {@link UserNotConfirmedException} (client fault) * <p>This exception is thrown when a user isn't confirmed successfully.</p> * * @throws {@link UserNotFoundException} (client fault) * <p>This exception is thrown when a user isn't found.</p> * * @throws {@link CognitoIdentityProviderServiceException} * <p>Base exception class for all service exceptions from CognitoIdentityProvider service.</p> * * @public */ export declare class SetUserMFAPreferenceCommand extends SetUserMFAPreferenceCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: SetUserMFAPreferenceRequest; output: {}; }; sdk: { input: SetUserMFAPreferenceCommandInput; output: SetUserMFAPreferenceCommandOutput; }; }; }