Как я могу автоматически разделить пользователей на разные группы (пулы удостоверений)?

Я использую AWS Cognito в своем приложении для iOS, чтобы реализовать функции регистрации и входа пользователей. Я использовал официальные документы Amplify SDK DOC (https://aws-amplify.github.io/docs/ios/authentication) в качестве справки, и приложение работает хорошо. Но на самом деле я хочу предоставить своим пользователям разные права доступа, которые могут иметь различное содержимое (например, файлы в S3).

При регистрации в приложении пользователь должен выбрать группу. В зависимости от группы им предоставляются разные права доступа.

Я прочитал документацию SDK и руководство разработчика, но не нашел хорошего способа реализовать эту функцию.

Есть ли какая-либо функция в когнитивном режиме, которую я могу использовать для разделения пользователей на разные пулы идентификации? Или кто-нибудь может показать мне несколько примеров, которые позволяют пользователям иметь разные права доступа.

AWSMobileClient.sharedInstance().signUp(username: "your_username",
                                        password: "Abc@123!",
                                        userAttributes: ["email":"[email protected]", "phone_number": "+1973123456"]) { (signUpResult, error) in
    if let signUpResult = signUpResult {
        switch(signUpResult.signUpConfirmationState) {
        case .confirmed:
            print("User is signed up and confirmed.")
        case .unconfirmed:
            print("User is not confirmed and needs verification via \(signUpResult.codeDeliveryDetails!.deliveryMedium) sent at \(signUpResult.codeDeliveryDetails!.destination!)")
        case .unknown:
            print("Unexpected case")
        }
    } else if let error = error {
        if let error = error as? AWSMobileClientError {
            switch(error) {
            case .usernameExists(let message):
                print(message)
            default:
                break
            }
        }
        print("\(error.localizedDescription)")
    }
}

person keishinzzz    schedule 10.07.2019    source источник


Ответы (1)


Вам не нужно помещать пользователей в разные пулы удостоверений. В Cognito уже есть группы пользователей, которые можно использовать для назначения различных ролей. Я не знаком с IOS, но должен быть метод добавления пользователя в группу, который вы можете использовать.

person Ninad Gaikwad    schedule 11.07.2019
comment
Большое спасибо за ответ. Попробую найти, как пользоваться методом adminaddusertogroup. - person keishinzzz; 11.07.2019