Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Fabric Apps включает встроенную службу аутентификации, которая выполняет вход пользователей в систему, управляет их сеансами и добавляет сведения об их удостоверении к каждому запросу к данным и хранилищу, который выполняет ваше приложение. В этой статье описываются основные понятия, которые необходимо понять перед настройкой проверки подлинности для проекта.
Дополнительные сведения о реализации см. в статье:
- Настройка аутентификации единого входа (SSO) в Fabric для вашего приложения Fabric — код для входа и регистрации в развернутых приложениях.
- Определение разрешений данных — используйте удостоверение пользователя, выполнившего вход, для управления доступом к данным.
Режимы проверки подлинности
Fabric Apps поддерживает два метода проверки подлинности. Используемый метод зависит от того, где выполняется приложение:
| Окружающая среда | Поддерживаемый метод | Когда его использовать |
|---|---|---|
| Местное развитие | Электронная почта и пароль | Быстро выполняйте итерации, не завися от портала Fabric. |
| Развернуто в Fabric | единый вход в Fabric (Microsoft Entra ID) | Вход в продуктивную среду для любого пользователя с доступом к рабочей области Fabric. |
Основные понятия:
- Единый вход в Fabric позволяет пользователю войти через портал Fabric с использованием существующей учетной записи Microsoft Entra ID. Он работает только при открытии приложения из Fabric, поэтому его нельзя использовать во время локальной разработки.
- Электронная почта и пароль предназначены только для локальной разработки. Он не работает после развертывания.
- При первом входе подготавливается учетная запись пользователя. При использовании SSO Fabric не требуется отдельный этап регистрации — пользователи автоматически создаются при первом входе в систему.
- Для развертывания Fabric требуется аутентификация. Установка
services.auth.enabledнаfalseприводит к сбоюnpx rayfin up.
Сеансы и идентификация
После входа пользователя пакет SDK создает сеанс , представляющий пользователя, вошедшего в систему. Сеансы непрозрачны — ваше приложение не должно анализировать лежащие в их основе токены. Вместо этого приложение считывает небольшой набор высокоуровневых свойств:
- Аутентифицирован ли сеанс в данный момент.
- Пользователя
idиemail. - Настраиваемые утверждения, которые вы настроили в
rayfin.yml.
Тот же экземпляр клиента, который выполняет вход пользователя, автоматически добавляет его учетные данные к каждому вызову к данным и хранилищу. Вам не нужно передавать токены вручную.
Сеансы также вызывают события изменений, поэтому пользовательский интерфейс может реагировать при входе или выходе пользователя без перезагрузки страницы.
Включение проверки подлинности в проекте
Проверка подлинности настроена в rayfin/rayfin.yml. Следующий пример позволяет использовать как Fabric SSO (для развернутых приложений), так и вход по электронной почте и паролю (для локальной разработки):
services:
auth:
enabled: true
allowedRedirectUris:
- http://localhost:5173
fabric:
enabled: true
password:
enabled: true # Local development only
Что контролирует каждый параметр:
-
services.auth.enabled— включает службу проверки подлинности. Требуется для любого развертывания Fabric. -
allowedRedirectUris— домены-источники, на которые можно перенаправить пользователя после входа в систему. Добавьте url-адрес локальной разработки здесь.npx rayfin upавтоматически добавляет origin развернутого приложения. -
fabric.enabled— включает SSO в Fabric. Требуется для развернутых приложений. -
password.enabled— включает вход электронной почты и пароля для локальной разработки.
Important
Для развертываний Fabric требуется, чтобы была включена проверка подлинности.
npx rayfin up завершается ошибкой, когда для services.auth.enabled задано значение false.
После редактирования rayfin.ymlперезапустите локальную серверную часть или запустите npx rayfin up , чтобы применить это изменение.
Настраиваемые утверждения
Пользовательские утверждения позволяют присоединять метаданные для конкретного приложения к каждому сеансу, например имя клиента, флаг компонента или версию приложения. Они полезны для ролевого управления доступом и включения или ограничения функций без изменения модели данных.
services:
auth:
enabled: true
customClaims:
tenant: default
app_version: 1.0.0
Пользовательские утверждения отображаются внутри объекта сессии, и на них можно ссылаться в правилах доступа к данным.
Что предоставляет пакет SDK
При использовании RayfinClient служба проверки подлинности доступна на client.auth. На концептуальном уровне он предоставляет следующие возможности:
- Регистрация и вход с помощью электронной почты и пароля во время локальной разработки.
- Вход и регистрация через Fabric SSO для развернутых приложений. Один и тот же вызов обрабатывает как новые, так и возвращающие пользователей.
- Выход для завершения текущего сеанса.
- Чтение данных сеанса и подписки, чтобы пользовательский интерфейс оставался синхронизированным с состоянием аутентификации пользователя.
Пример кода, показывающий, как подключить это в рабочем приложении, см. в разделе Настройка аутентификации единого входа Fabric для приложения Fabric.