Проверьте документацию для AccountInterface
:
Определяет объект, который имеет идентификатор пользователя, роли и может иметь данные сеанса. Интерфейс реализован как глобальным сеансом, так и пользовательским объектом.
Он находится в Session
пространстве имен по причине - он представляет собой нечто, что может иметь данные сеанса.
В ContentEntityInterface
и EntityChangedInterface
интерфейсах распространяемых UserInterface
вам сказать , что он представляет другую концепцию:
Контентные сущности используют поля для всех своих свойств сущностей и являются переводимыми и редактируемыми, в то время как переводы и редакции могут быть включены для каждого типа сущности.
Определяет интерфейс для отслеживания метки времени изменения объекта.
Эти данные могут быть полезны для более точной аннулирования кэша (особенно на стороне клиента) и одновременной блокировки редактирования.
A UserInterface
представляет собой полную учетную запись пользователя Drupal, которая может иметь ревизии, поля, переводы и т. Д.
Я не могу сказать вам, какой из них более подходит для вашего случая использования, но я призываю вас подумать о том, какой из этих интерфейсов наиболее подходит для кода, который вы пишете.
Мой инстинкт подсказывает мне, что вы будете использовать AccountInterface
что-то, что минимально «вошло в систему» (например, вошел в систему пользователь, список пользователей в сети, кто-то вошел через SSO) и UserInterface
для чего-то большего (например, профили пользователей, связанные авторы, длинные данные, большинство вещей, которые мы делаем в Drupal).