Мы реализуем пулы пользователей и учетные записи с помощью AWS Cognito.Я очень неопытен в AWS и немного путаюсь.
В идеале процесс регистрации администратора выглядит следующим образом:
Незарегистрированный пользователь создает новую группу,назначает электронную почту и пароль и становится первым администратором этой группы
Чтобы пригласить больше администраторов, создатель группы (или любой администратор) может назначить электронное письмо нового администратора
Недавно приглашенный администратор получает код / временный пароль
Недавно приглашенный администратор выполняет вход с электронной почтой и временным паролем и получает запрос на обновление данных
Для обычных пользователей:
Незарегистрированные пользователи будут вводить код, уникальный для группы, к которой они хотят присоединиться
Новый пользователь создается под делегированием соответствующих администраторов группы
Все примеры Cognito специально для Android используют pool.signUpInBackground()
.Проблема здесь заключается в том, что все пользовательские атрибуты должны быть определены до регистрации.
В Java SDK (не в Android SDK) есть функция adminCreateUser
, которая кажетсяподдерживать то, что я пытаюсь сделать, но
a) Я очень запутался в том, какие библиотеки / зависимости включить.После добавления Java API в Gradle я вижу импорт из множества различных пакетов, которые, похоже, имеют общие функциональные возможности.
, т. Е. В чем разница между
com.amazonaws.mobileconnectors.cognitoidentityprovider
,
com.amazonaws.services.cognitoidentityprovider.model
com.amazonaws.auth.AWSCognitoIdentityProvider
com.amazonaws.services.cognitoidp
b) Как безопасно внедрить adminAddUser
в мой код и убедиться, что нет возможности злоупотребитьпозвонить, чтобы зарегистрировать пользователя в другой группе?
Перекрытие между всеми этими API-интерфейсами меня очень смущает.Спасибо всем, кто может это прояснить.