Поделиться через


Архитектура приложения SharePoint Embedded

Все файлы и документы в SharePoint Embedded хранятся в контейнерах, при этом все контейнеры и содержимое контейнера создаются и хранятся в клиенте Microsoft 365. Все контейнеры и содержимое контейнеров создаются, управляются и взаимодействуют с помощью приложения SharePoint Embedded с помощью Microsoft Graph.

Внедренная архитектура SharePoint

Приложение SharePoint Embedded

Регистрация приложения Microsoft Entra ID. Являясь владельцем или гостевым приложением типа контейнера, оно имеет доступ к контейнерам этого типа контейнера.

Владение клиентом и использование клиента

В SharePoint Embedded представлены основные понятия владения клиентом и использования клиента. Владеющий клиент — это клиент Microsoft Entra ID, в котором создается тип контейнера. Это также клиент, в котором зарегистрировано приложение SharePoint Embedded. Потребляющий клиент — это клиент Microsoft Entra ID, в котором используется тип контейнера. Только потребляющий клиент может иметь контейнеры такого типа. Весь контейнер и содержимое, созданные с помощью приложения, хранятся в пределах границы клиента Microsoft 365.

Один и тот же клиент Microsoft Entra ID может быть как владельцем, так и потребляющим клиентом заданного типа контейнера в экосистеме SharePoint Embedded.

Контейнер, тип контейнера и собственное приложение

Контейнер — это базовая единица хранения в SharePoint Embedded. Кроме того, контейнер определяет границу безопасности и соответствия требованиям.

Тип контейнера — это ресурс SharePoint Embedded, который определяет связь, привилегии доступа и отчетность по выставлению счетов между приложением и набором контейнеров. Кроме того, тип контейнера определяет поведение в наборе контейнеров. Дополнительные сведения о типах контейнеров.

Тип контейнера представлен в каждом контейнере как неизменяемое свойство и используется во всей экосистеме SharePoint Embedded. Каждый тип контейнера тесно связан с одним приложением SharePoint Embedded, которое называется собственным приложением. Разработчик приложения-владелец (владелец клиента) отвечает за создание типов контейнеров и управление ими. SharePoint Embedded требует отношения 1:1 между владельцем приложения и типом контейнера.

Модель доступа

Доступ приложения к контейнерам и содержимому контейнера определяется набором разрешений, настроенных между приложением и типом контейнера, к которым оно пытается получить доступ. Этот набор разрешений определяется во время создания типа контейнера для владеющего приложения. Экосистема SharePoint Embedded позволяет приложениям получать доступ к контейнерам типов контейнеров, которыми она не владеет.

На этом рисунке в клиенте развертывается несколько приложений, в том числе два приложения, разработанные независимыми поставщиками программного обеспечения (App 1 и 2) и бизнес-приложение (App 3). Каждое приложение может получить доступ только к стеку контейнеров того типа, который у них есть.

Архитектура нескольких приложений SPE

На этом рисунке приложение 1 и приложение 2 в клиенте имеют доступ к одному типу контейнера. Оба приложения могут получить доступ к стеку контейнеров этого типа.

Совместное использование типов контейнеров для архитектуры нескольких приложений SPE

Пример

Contoso — это поставщик программного обеспечения, создающий приложение для управления человеческими ресурсами в SharePoint Embedded. Приложение зарегистрировано и развернуто в аудиторской фирме Fabrikam. Fabrikam также разработала приложение аудита бизнес-приложений в SharePoint Embedded, которое используется для внутренних целей.

В этом сценарии приложение для управления человеческими ресурсами, разработанное компанией Contoso, и приложение для аудита, разработанное Fabrikam, имеют собственный тип контейнера. Contoso является владельцем приложения для управления человеческими ресурсами; и приложение является владельцем приложения для своего типа контейнера. Аналогичным образом, Fabrikam является владельцем клиента приложения аудита; и приложение является владельцем приложения для своего типа контейнера. Кроме того, Fabrikam является потребляющим клиентом для обоих приложений.

Пример