Profiweb Development
127 photos
3 videos
24 files
54 links
Profiweb - Интернет комьюнити, полезная информация бесплатно, лайфхаки, заработок в интернете , а также много полезного софта, сайтов, скриптов, статей и не только!
Download Telegram
''
<script>
// Initialize the agent at application startup.
// If you're using an ad blocker or Brave/Firefox, this import will not work.
// Please use the NPM package instead: https://t.ly/ORyXk
const fpPromise = import('https://openfpcdn.io/fingerprintjs/v4')
.then(FingerprintJS => FingerprintJS.load())

// Get the visitor identifier when you need it.
fpPromise
.then(fp => fp.get())
.then(result => {
// This is the visitor identifier:
const visitorId = result.visitorId
console.log(visitorId)
})
</script>""
📱 DeviceService (Сервис устройств)
Этот сервис — «служба безопасности» для гаджетов пользователей. Он следит за тем, с каких устройств люди заходят в систему.

Зачем он нам: Чтобы отличать «свои» устройства от «чужих» и вовремя блокировать подозрительные входы.

Главная фишка (Fingerprint): Нам нужно научиться узнавать устройство, даже если пользователь не залогинился. Мы собираем данные (браузер, ОС, IP) и делаем из них уникальный «отпечаток».

Как это работает:

При каждом входе сервис проверяет «отпечаток».

Если устройство новое — шлем уведомление: «В ваш аккаунт зашли с нового iPhone».

Если устройство заблокировано (например, украдено) — сервис просто не дает авторизоваться.

Связи: Тесно работает с сервисом сессий. Если мы блокируем устройство, все активные сессии на нем должны «умереть» мгновенно.

🏢 TenantService (Сервис компаний)
Это фундамент нашей SaaS-платформы. Он отвечает за то, чтобы данные разных компаний (тенантов) никогда не перемешались.

Зачем он нам: Одна копия нашего кода обслуживает сотни разных компаний. Этот сервис — «дирижер», который говорит системе: «Сейчас работает компания А, используй её настройки».

Главная фишка (Resolution): Мы должны мгновенно определять компанию по адресу сайта (например, apple.our-saas.com) или по специальному ключу в мобильном приложении.

Как это работает:

Хранит настройки для каждой компании (логотипы, цвета, правила сложности паролей).

Выдает API-ключи для мобильных и десктопных приложений.

Следит за «активностью» компании: если подписка не оплачена, можно выключить сразу весь доступ.

Скорость: Это самый нагруженный сервис. Он должен отвечать за миллисекунды, поэтому мы активно используем Redis для кеширования.