6

アプリケーションにAWS Cognitoaws-cpp-sdkを使用しています。ユーザー プールとアプリケーションを定義し、アプリ クライアント ID とアプリ シークレットを取得しました。ユーザープールオブジェクトを作成できます:

    Aws::Client::ClientConfiguration clientConfig;
    clientConfig.region =
        Aws::Region::EU_CENTRAL_1;  // "RegionEndpoint.EUCentral1";
    clientConfig.scheme = Aws::Http::Scheme::HTTPS;
    clientConfig.connectTimeoutMs = 30000;
    clientConfig.requestTimeoutMs = 600000;

    CognitoIdentityProviderClient client;
    client = CognitoIdentityProviderClient(clientConfig);

    DescribeUserPoolClientRequest describeUserPoolClientRequest;
    describeUserPoolClientRequest.WithUserPoolId(POOL_ID)
        .WithClientId(TEST_APP_CLIENT_ID);
    DescribeUserPoolClientOutcome describeUserPoolClientOutcome =
        client.DescribeUserPoolClient(describeUserPoolClientRequest);

SignUpRequestでユーザーを定義した後、次のようなエラーが発生しました: NotAuthorizedException A client attempts to write illegal attribute

これは私のサインアップコードです:

    SignUpRequest signUpRequest;
    signUpRequest.SetClientId(describeUserPoolClientOutcome.GetResult()
                                  .GetUserPoolClient()
                                  .GetClientId());
    signUpRequest.SetUsername("xxxxx");
    signUpRequest.SetPassword("xxxxxx?");
    AttributeType email, phone_number, gender, given_name, family_name, picture;
    email.WithName("email").WithValue("gacer@ku.edu.tr");
    phone_number.WithName("phone_number").WithValue("+xxxxx");
    given_name.WithName("given_name").WithValue("xxx");
    family_name.WithName("familiy_name").WithValue("xxx");
    gender.WithName("gender").WithValue("MALE");
    picture.WithName("picture").WithValue(
        "http://xxxx");
    signUpRequest.AddUserAttributes(email);
    signUpRequest.AddUserAttributes(phone_number);
    signUpRequest.AddUserAttributes(given_name);
    signUpRequest.AddUserAttributes(family_name);
    signUpRequest.AddUserAttributes(gender);
    signUpRequest.AddUserAttributes(picture);

    SignUpOutcome signUpOutcome = client.SignUp(signUpRequest);

何が問題ですか?どうすれば解決できますか?

4

3 に答える 3

1

私は同じ問題を抱えていますが、他の属性に custom: を追加することで解決しました。カスタム属性を追加している間に、追加する必要があります

custom:family_name

于 2019-04-09T05:32:47.257 に答える
0

ああ、神様!例外の理由は書き間違いのみです。この問題は、次の行の入力エラーをファミリからファミリに修正することで解決されます。

family_name.WithName("familiy_name").WithValue("xxx");
于 2017-02-20T17:25:49.757 に答える