#amazon-web-services #authentication #amazon-cognito #multi-tenant #saas
#amazon-веб-сервисы #аутентификация #amazon-cognito #многопользовательский #saas
Вопрос:
Я рассматриваю возможность создания пула пользователей для каждого клиента на основе рекомендуемой многопользовательской архитектуры (например: https://aws.amazon.com/quickstart/saas/identity-with-cognito /)
Остальные ресурсы в приложении будут использовать объединенные ресурсы (например: API gateway, таблицы DynamoDB). Рассматриваем изолированную модель только для когнитивно-аутентификационной части приложения.
Требования к приложению:
- Поддомен на одного арендатора, т.е. tenant1.company.com ан tenant2.company.com
- Пользователь может принадлежать нескольким арендаторам (Forex: пользователь A может быть в
tenant1
иtenant2
) - Необходимо иметь возможность перечислять всех пользователей для конкретного клиента
- Ограничения на хранение данных для личной информации
Я полагаю, что если бы я использовал один и тот же пул пользователей Cognito для всех арендаторов, я мог бы заставить пользователей использовать разные адреса электронной почты для нового арендатора, т.е. abc@tenant1.com
Для Tenant1
и abc tenant2@tenant2.com
для Tenant2
.
Но чтобы перечислить всех пользователей для конкретного арендатора, я полагаю, что один и тот же пул пользователей для всех арендаторов не будет работать, поскольку tenant_id будет настраиваемым атрибутом.
Я также мог бы обеспечить ограничения на хранение данных, создав пул пользователей для каждого клиента. Однако, как мне справиться с региональным отказоустойчивостью в этом случае?
Кроме того, поддерживается ли этот подход для каждого поддомена на клиента?
Я слышал, что пул пользователей на одного арендатора — это постоянная проблема, и ее следует избегать. Каковы некоторые из проблемных моментов?
Похоже ли, что для моего варианта использования я должен выбрать поставщика AuthZ, например auth0 или authress?
Комментарии:
1. Почему было принято решение о закрытии?
2. Ваш вопрос не сфокусирован и слишком широк. Мой совет, вы бы рассказали нам о варианте использования, не упоминая никаких сервисов, потому что трудно определить проблему по сравнению с решением конкретно с AWS.