Чья зона ответственности? User::password

AnrDaemon

Продвинутый новичок
Наслушался тут вас…
Раньше всё время приходилось работать с уже существующими системами авторизации. Открыл мануал, скопировал пример, подправил по своему коду, закрыл тестами, поехали.
Сейчас встала задача написать систему авторизации для существующего сайта, по сути с нуля. Всё, что есть сейчас, это проверка в одном месте "если пароль равно строка".
Но вопрос не совсем про авторизацию.
Положим, есть у меня \My\Entities\User со всеми своими атрибутами типа логнейма, мыла, реального имени, должности в организации. И захотел этот юзер сменить себе пароль.
Где должна быть и как должна выглядеть функция установки нового пароля? В юзере? А не жирно будет, если любой компонент системы, имеющий доступ к юзеру, будет дёргать смену пароля? Где-то ещё? Где?
 

ksnk

прохожий
Как вариант - в админке можно использовать специально обученного наследника объекта User с возможностью смены пароля. А в обычном приложении - без излишнего функционала.
 
  • Like
Реакции: AmdY

AnrDaemon

Продвинутый новичок
Пятница, вечер… Пришла в голову мысль забить болт на пароли, привязав авторизацию к AD в офисе.
Всё равно с сайтом работают из офиса, так что если авторизация сломается, то только вместе с интернетом.
 

AmdY

Пью пиво
Команда форума
ну так авторизация и подразумевает, что ты можешь не только логиниться через логин-пароль, а любым способом вроде oauth или ldap или даже секретный токен.
 

AnrDaemon

Продвинутый новичок
Не одно и то же :b
Мне в данном случае глубоко фиолетова аутентичность пользователя. Единственный доступный функционал - редактирование описаний товаров. Достаточно авторизации.

ЗЫ
За ссылки спасибо! Почитаю.
 

MiksIr

miksir@home:~$
Проверка логина/пароля - аутентификация ;)
Проверка, что юзер Vasya может редактировать описания товара - авторизация ;)
 

AnrDaemon

Продвинутый новичок
Аутентификация - это когда приложение проверяет логин-пароль само. :)
У мну этого не будет, логин-пароль будет проверять… ну, да, приложение, но другое, на локальном сервере в офисе. А на сайт будет возвращаться авторизующий токен.
Ибо SSL на сайте пока не предусмотрен. А в офисе есть искаропкиибодомен.
 
Сверху