home

Опубликован пример использования API для автоматической регистрации пользователей в ELiS

ELiSUserRegister-example.png

На GitHub опубликован код на PHP как пример использования API автологина в ELiS.

Пример показывает, как можно разрешить пользователям самостоятельно регистрироваться из сети организации.

Для использования примера на практике надо иметь сервер с работающим PHP, получить секретный ключ (пароль) для вашей организации и её идентификатор от владельца библиотеки ELiS и изменить немного параметров в файле conf.php.

Код открыт. Можно менять под себя.

Качать код здесь: https://github.com/borovinskiy/ELiSUserRegister

Как это работает[править]

В ELiS есть API для автоматического создания учетной записи по секретному ключу, выдаваемому организации. Пользователь создается переходя по специальной ссылке, подписанной секретным ключом организации. Созданный пользователь привязывается к организации, чьим ключом подписана ссылка для перехода.

Регистрация[править]

  • Изначально пользователь не имеет аккаунта в ELiS.
  • Он вводит свой e-mail, на который хочет зарегистрироваться и желаемый логин.
  • Организация подписывает это желание зарегистрироваться своим секретным ключём и генерирует ссылку для входа.
  • Ссылка доставляется пользователю, в данном примере на указанный почтовый ящик.
  • Пользователь переходит по ссылке и сервер ELiS проверяет подпись.
  • ELiS понимает, что надо создать пользователя, ассоциированного с организацией.
    • Ищется пользователь с таким же e-mail, если он не существует, то создается.
      • Проверяется логин, если логин занят, то логин просто генерируется.
    • Если пользователь с e-mail уже существует, то он либо привязан к этой же организации, либо к другой.
      • Если привязан к этой же, то пользователь логинется под существующим аккаунтом.
      • Если привязан к другой организации, попытка входа завершается ошибкой. В принципе, такое в рамках работы одной организации не должно возникать.