aws - усилить проверку пароля на стороне клиента - PullRequest
0 голосов
/ 11 апреля 2020

Я использую пакет aws-amplify для интеграции с Cognito для аутентификации. Я создаю пользовательские формы для регистрации. Для этого я хотел добавить проверку на стороне клиента. Есть ли способ в aws-amplify для проверки пароля на стороне клиента? Я хотел показать пользователю сообщение об ошибке, когда он оставляет фокус из поля пароля.

Ответы [ 2 ]

0 голосов
/ 14 апреля 2020

Кажется, в настоящее время нет способа сделать это через Amplify. Вы можете увидеть эту проблему , где они кратко ее решают, и поднимают действительно хороший вопрос: в то время как Amplify не выполняет проверку, Cognito делает :

Если вы хотите решить эту проблему самостоятельно, начните с просмотра справочника по API Amazon Cognito, в частности, операции DescribeUserPool. Это дает вам доступ к политике паролей для вашего пула пользователей. возможно, вы могли бы вызвать эту операцию во время сборки, сохранить политику как json, которую вы можете включить в свой код переднего плана, и проверить во время выполнения.

Все это предполагает, что вы действительно этого не делаете. Для входа в систему или входа в нее необходимо использовать размещенный на Cognito пользовательский интерфейс , который будет выполнять проверку в соответствии с этими настройками для вас (и потребовать совсем немного работы).

0 голосов
/ 13 апреля 2020

Вы можете создать проверку на стороне клиента, полностью независимую от Amplify. Поскольку вы знаете задачи, которые вы настроили для создания пароля, вы можете просто указать это в своей пользовательской форме.

Например, вы можете использовать html атрибуты ввода, такие как minLength и pattern, или используйте javascript.

<input 
  autoComplete="new-password"
  type="password"
  minLength="6"
  pattern="^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).*$"
/>
...