В Руководстве пользователя Amazon Cognito на странице « Настройка атрибутов пользовательского пула » есть этот абзац (с дополнительным выделением):
«Если ваше приложение не требует имени пользователя, вам не нужно просить его предоставить его. Ваше приложение может создать уникальное имя пользователя для пользователей в фоновом режиме . Это полезно, если, например, вы хотите, чтобы пользователи регистрировались и входили в систему с адресом электронной почты и паролем ».
Я хочу делать именно то, что говорится в абзаце: пока пользователи регистрируются, создавайте в фон - собственный идентификатор пользователя для них лично, потому что мне нужно, чтобы эти идентификаторы соответствовали определенному формату c semanti c, который встраивает контекст клиента в идентификаторы (что-то вроде «T01234 # U01234567», что означает «пользователь U01234567 внутри tenant T01234 ”).
Пользователи не будут знать свой индивидуальный идентификатор, они будут чувствовать, что они зарегистрировались (а затем вошли в систему) с помощью своих электронных писем (или через третьих лиц, таких как Facebook и Google, если возможно, в этой настройке). Но в фоновом режиме я создам эти пользовательские идентификаторы и сохраню их в их атрибуте username
в пользовательском пуле.
Причина, по которой я хочу хранить эти идентификаторы конкретно в атрибуте username
, заключается в том, что это не - изменяемый и уникальный, но наиболее важный, потому что мне нужно будет запросить API-интерфейсы Cognito (ListUsers, AdminListGroupsForUser, et c.), используя эти пользовательские идентификаторы в качестве фильтра, чтобы предоставить моим клиентам некоторые возможности управления пользователями. Атрибут username
является параметром для этих API. Поэтому я не могу использовать здесь настраиваемые атрибуты пользовательского пула, поскольку они не принимаются в качестве параметров этих API.
Я публикую этот вопрос потому, что, хотя в документации это рекомендуется как возможная настройка, нет укажите c информацию о том, как настроить пулы пользователей и поток регистрации для поддержки этого конкретного c варианта использования.
Каков его общий макет настроек? Для начала, в опции « Как вы хотите, чтобы ваши конечные пользователи регистрировались и входили в систему? », что я должен поместить туда в описанном мной сценарии? Если кто-нибудь может предоставить дополнительную относящуюся к делу информацию, это будет очень полезно, так как документация кажется непрозрачной.
Большое спасибо тем, кто это прочитал.