Обзор
Администраторы рабочей области могут использовать настройки SharePoint, чтобы разрешать одобренные семейства сайтов, блокировать выбранные семейства и исключать поддерживаемые файлы с выбранными метками конфиденциальности Microsoft Purview.
Семейство сайтов SharePoint, также называемое SPSite, может содержать несколько сайтов. Правило для семейства применяется ко всему семейству с учетом существующих разрешений каждого пользователя в Microsoft. Оно не предоставляет пользователю доступ к содержимому, недоступному ему в Microsoft 365.
Ограничения для сайтов применяются к поддерживаемым операциям поиска, просмотра, получения файлов, чтения и записи в SharePoint. Доступ к OneDrive управляется отдельно.
Выберите режим доступа, соответствующий вашей политике:
Разрешенные сайты: если список разрешенных сайтов непустой, пользователям доступны через приложение только перечисленные в нем семейства.
Заблокированные сайты: пользователям доступны семейства сайтов, не включенные в список заблокированных, с учетом их разрешений Microsoft.
Одновременно записи могут быть только в одном списке. Пустой список разрешенных сайтов не блокирует все сайты. Когда оба списка пусты, ограничения для сайтов SharePoint снимаются; разрешения Microsoft и другие настроенные ограничения продолжают действовать.
Доступность
Эти настройки и Admin API рабочей области должны быть включены для вашей рабочей области. Доступные средства управления включают списки разрешенных и заблокированных семейств сайтов, импорт сайтов из CSV и исключения по меткам конфиденциальности.
Правила применяются к семействам сайтов целиком. Эти средства управления семействами сайтов не поддерживают ограничения для отдельных сайтов, папок или файлов и применение Microsoft Sites.Selected.
Перед началом
Определите, какие семейства сайтов ваша организация хочет разрешить или заблокировать.
Получите GUID каждого семейства. В полном идентификаторе сайта Microsoft Graph GUID семейства находится посередине. Admin API использует GUID семейств; средство импорта CSV в интерфейсе также может извлекать их из трехкомпонентных идентификаторов сайтов Graph.
Включите необходимые приложению SharePoint разрешения Microsoft как в настройках разрешений ChatGPT, так и в Microsoft Entra, включая
Sites.Read.AllиFiles.Read.All. Эти настройки фильтруют доступ на стороне OpenAI и не заменяют делегированные разрешения Microsoft.Для настройки исключений по меткам конфиденциальности запросите у администратора Microsoft 365 или Purview неизменяемый GUID каждой метки без шифрования.
Для администрирования через API получите UUID рабочей области, ключ администратора рабочей области ChatGPT и токен Microsoft Graph, если нужно определять идентификаторы по URL SharePoint. Ключ и токен служат разным целям.
Об OpenAI Cookbook
OpenAI Cookbook — это общедоступный сборник примеров кода и руководств от OpenAI. В этой статье используются руководство по доступу к сайтам SharePoint и скрипт администрирования на Python из этого сборника. Оба размещены на GitHub. Вы можете открыть эти ссылки в браузере, чтобы ознакомиться с файлами. Чтобы запустить скрипт, скачайте его и следуйте инструкциям по настройке и выполнению команд из руководства.
В этой статье под «Cookbook» понимается указанное руководство по SharePoint, а под «утилитой Cookbook» — скрипт на Python по приведенной ссылке. В этих материалах вы найдете примеры команд и инструкции по управлению списком разрешенных сайтов через API.
Настройте учетные данные для администрирования через API
Примечание: создавать ключи администратора могут только администраторы рабочей области. Подробнее.
Создайте ключ администратора рабочей области ChatGPT
Откройте консоль администратора ChatGPT и выберите нужную рабочую область.
Перейдите в раздел Учетные данные и выберите Ключи администратора.
Создайте ключ с разрешениями типа Ограниченные и установите для Приложения значение Запись.
Сохраните ключ в безопасном месте. Этот ключ позволяет читать и изменять политику SharePoint для вашей рабочей области.
Требуемое разрешение — chatgpt.enterprise.apps.write. Обратите внимание: ни ключ Платформы API, ни токен Microsoft Graph не заменяют ключ администратора рабочей области ChatGPT.
Подробнее см. в статье Управление ключами администратора на вкладке «Учетные данные». Переменные среды для учетных данных скрипта и пример безопасного ввода приведены в инструкциях по учетным данным в Cookbook.
Получите токен Microsoft Graph
Используйте процедуру аутентификации Microsoft, одобренную вашей организацией. Для интерактивного поиска, если ваша организация разрешает Graph Explorer:
Откройте Microsoft Graph Explorer и войдите с рабочей учетной записью в клиенте, где находятся сайты SharePoint.
Выберите разрешения, необходимые для чтения сайтов, обычно
Sites.Read.All, с помощью Изменить разрешения или Предоставить согласие на разрешения. Если ваша организация требует одобрения доступа, обратитесь к администратору Microsoft.Откройте вкладку Токен доступа и скопируйте токен для работы с Microsoft Graph.
Инструкции Microsoft см. в разделе Работа с Graph Explorer.
Токен Graph используется для определения идентификаторов по URL SharePoint. Ключ администратора ChatGPT используется для чтения или обновления политики ChatGPT. Утилите Cookbook токен Graph нужен только для команд, определяющих идентификаторы по URL; для чтения или очистки существующего списка разрешенных сайтов достаточно ключа администратора ChatGPT.
Не размещайте ни ключ, ни токен в системе контроля версий, общих документах, на скриншотах или в журналах.
Найдите GUID семейства сайтов
Используйте URL сайта SharePoint
Откройте сайт SharePoint, войдя в Microsoft с учетной записью, у которой есть к нему доступ.
Добавьте
/_api/site/idв конец URL сайта. Например, используйтеhttps://contoso.sharepoint.com/sites/Finance/_api/site/id.Скопируйте GUID из ответа.
Примечание: домены и идентификаторы в примерах этой статьи приведены для иллюстрации.
Используйте Microsoft Graph
Microsoft Graph возвращает идентификатор сайта из трех компонентов, разделенных запятыми: имени узла, GUID семейства сайтов и GUID сайта. Для правила, действующего на семейство сайтов, используйте среднее значение. Разным URL сайтов может соответствовать один и тот же GUID семейства.
Примеры поиска и идентификаторов см. в разделе Идентификаторы сайтов SharePoint. Чтобы определить идентификаторы для нескольких URL без изменения политики ChatGPT, используйте инструкции по проверке из Cookbook и скрипт администрирования на Python.
Требования Microsoft к поиску см. в разделе Получение сайта SharePoint по пути.
Управляйте разрешенными и заблокированными семействами сайтов
Используйте настройки рабочей области
Откройте Параметры безопасности и защиты приложения SharePoint в своей рабочей области.
В разделе Режим доступа выберите Разрешенные сайты или Заблокированные сайты.
Добавьте семейства сайтов в выбранный список. Также можно использовать загрузку CSV, описанную ниже.
Проверьте изменения и нажмите Сохранить.
Проверьте сохраненную политику и протестируйте настройки.
Сайты, добавленные через Admin API, отображаются в настройках рабочей области. Сайты, добавленные в интерфейсе, также доступны через API. Добавлять и удалять записи можно обоими способами: способ добавления сайта не ограничивает дальнейшее управление им.
Переключайтесь между разрешенными и заблокированными сайтами
Одновременно записи могут быть только в одном списке. Прежде чем добавлять записи в другом режиме, очистите существующий список и сохраните это изменение. Затем выберите другой режим, добавьте нужные семейства и снова сохраните изменения.
Очистка активного списка изменяет доступ сразу после сохранения. Очистка списка разрешенных сайтов снимает заданное им ограничение доступа; очистка списка заблокированных сайтов снимает блокировки. Согласуйте переход с другими администраторами: в промежутке между очисткой одного списка и сохранением другого может быть разрешен доступ, который итоговая политика будет ограничивать.
Загрузите семейства сайтов из CSV
Загрузка CSV поддерживает только семейства сайтов. Чтобы исключить файлы по метке конфиденциальности, добавьте GUID меток в разделе Исключаемые метки конфиденциальности без шифрования.
Откройте Параметры безопасности и защиты и выберите нужный Режим доступа.
Подготовьте CSV с GUID семейств сайтов или трехкомпонентными идентификаторами сайтов Microsoft Graph. Используйте один формат идентификаторов во всем файле.
Нажмите Загрузить CSV-файл и выберите файл.
Проверьте результат импорта и выбранный список. Прежде чем продолжить, устраните ошибки и причины предупреждений в строках.
Нажмите Сохранить, чтобы применить изменения, затем проверьте сохраненный список.
Требования к CSV и особенности загрузки:
Максимальный размер файла: 1 МБ.
Заголовки необязательны.
Указывайте по одному GUID семейства или трехкомпонентному идентификатору сайта Graph в строке. Трехкомпонентные идентификаторы можно заключить в кавычки в одном поле или разделить на три столбца.
Трехкомпонентные идентификаторы Graph преобразуются в GUID семейств. Импорт трехкомпонентного идентификатора не создает правило для отдельного сайта.
Импорт добавляет записи в выбранный список, сохраняя существующие. Повторяющиеся семейства учитываются только один раз; счетчик импорта показывает количество вновь добавленных семейств.
Смешанные форматы и строки с неверным форматом отклоняются. При загрузке файла, содержащего только URL сайтов, появляется предупреждение, а сайты не добавляются. Сначала определите GUID семейств по URL.
Загрузка изменяет только черновик списка. Доступ в рабочей области не изменится, пока вы не нажмете Сохранить.
Описанная здесь загрузка CSV предназначена для управления семействами сайтов. Исключения по меткам конфиденциальности настраиваются отдельно.
Если у вас есть CSV с URL SharePoint, процедура работы с CSV в утилите Cookbook позволяет определить соответствующие идентификаторы и управлять списком разрешенных сайтов через API. Ввод через site_url или url в этой утилите отличается по формату и порядку действий от загрузки идентификаторов в интерфейсе.
Учитывайте лимиты политики и запросов
По умолчанию лимит политики составляет 10 000 семейств сайтов. Для увеличения лимита политики рабочей области до 120 000 семейств сайтов требуется активация со стороны OpenAI. Прежде чем планировать более масштабное развертывание, свяжитесь с вашей командой OpenAI.
Отдельные операции изменения через API и текущий скрипт Cookbook принимают до 10 000 GUID семейств на запрос. Увеличение лимита политики рабочей области не повышает этот лимит на запрос. Считайте уникальные семейства сайтов, а не исходные URL: несколько URL могут ссылаться на одно семейство.
Используйте Admin API рабочей области
Используйте UUID рабочей области и ключ администратора рабочей области ChatGPT для запросов к https://api.chatgpt.com.
Актуальные команды для списка разрешенных сайтов и примеры запросов приведены в Cookbook:
Предварительный просмотр и добавление семейств сайтов. При добавлении существующие разрешенные семейства сохраняются.
Проверьте текущую политику перед внесением изменений, затем просмотрите ее снова и протестируйте получившийся доступ. Удаление последнего разрешенного семейства или очистка списка разрешенных сайтов снимает заданное этим списком ограничение доступа. Не отправляйте пустой запрос на добавление, если не планируете снять ограничения списка разрешенных сайтов.
Общедоступная утилита Cookbook сейчас управляет только списками разрешенных сайтов. Она не управляет списками заблокированных сайтов или исключениями по меткам конфиденциальности. Для этих задач используйте описанные выше настройки рабочей области.
Исключите файлы с метками конфиденциальности
Найдите GUID метки
Запросите у администратора Microsoft 365 или Purview неизменяемый GUID нужной метки. Используйте GUID, а не отображаемое имя метки.
Администратор может получить список меток через Microsoft Graph. Токену требуется соответствующее разрешение SensitivityLabel.Read или SensitivityLabels.Read.All. Найдите идентификатор по имени нужной метки и проверьте ее параметры защиты.
Требования и примеры см. в разделах Получение списка меток конфиденциальности и Свойства метки конфиденциальности. Эти разрешения для меток не связаны с разрешением на чтение сайтов, которое используется для определения идентификаторов по URL SharePoint.
Добавьте исключения по меткам
Откройте Параметры безопасности и защиты приложения SharePoint.
Введите GUID каждой метки без шифрования в разделе Исключаемые метки конфиденциальности без шифрования.
Сохраните настройки и проверьте доступ к файлу поддерживаемого типа с исключаемой меткой.
Файлы с соответствующими поддерживаемыми метками исключаются из результатов приложения SharePoint. Файлы с метками, применяющими шифрование, уже исключены по умолчанию.
Проверьте настройки
Используйте тестовые файлы и учетные записи, одобренные вашей организацией. Перед проверкой убедитесь, что та же учетная запись Microsoft имеет доступ к каждому файлу напрямую в SharePoint.
В режиме Разрешенные сайты с непустым списком проверьте доступ к файлу из разрешенного семейства и к файлу из семейства, которого нет в списке. Через приложение должно быть доступно только разрешенное семейство.
В режиме Заблокированные сайты проверьте доступ к файлу из заблокированного семейства и к файлу из незаблокированного семейства. Заблокированное семейство должно быть недоступно; доступ к незаблокированному по-прежнему определяется разрешениями Microsoft и другими настройками.
Проверьте тестовый файл поддерживаемого типа с исключаемой меткой конфиденциальности. Он не должен появляться в результатах приложения.
После изменения через API сравните сохраненный список в интерфейсе с политикой, которую возвращает API.
После загрузки CSV сохраните изменения и снова откройте настройки, чтобы убедиться, что нужные семейства сохранились в списке.
Если результаты не соответствуют ожидаемой политике, проверьте рабочую область, выбранный режим доступа, сохраненный список, GUID семейств, GUID меток, поддержку типа файла и разрешения пользователя в Microsoft. Не очищайте список для устранения неполадок, если не планируете связанное с этим изменение доступа.
Если нужные настройки отсутствуют или доступ работает не так, как ожидалось, см. статью Обращение в службу поддержки OpenAI. Не включайте ключи администратора или токены Microsoft Graph в обращение в службу поддержки.
Учитывайте ограничения
Правило для семейства сайтов распространяется на все семейство. Оно не позволяет ограничить доступ к отдельному дочернему сайту, папке или файлу.
Ограничения для сайтов SharePoint не ограничивают доступ к OneDrive автоматически.
Фильтрация по меткам конфиденциальности применяется только там, где Microsoft Graph предоставляет поддерживаемые метаданные меток, в том числе для поддерживаемых документов Office, файлов PDF и MP4.
Файлы типов, не поддерживающих метки конфиденциальности, например TXT и CSV, считаются файлами без меток. Они остаются доступными, если доступ разрешен другими правилами. Это ограничение по типу файлов не связано с загрузкой CSV для настройки доступа к сайтам.
Загрузка CSV и общедоступная утилита-пример не настраивают исключения по меткам конфиденциальности. API для массового управления метками в этой статье не описывается.
Сохранение политики или успешный ответ API не заменяют проверку доступа с нужной учетной записью.
Используйте утилиту администрирования на Python
Актуальные полные примеры кода и команд доступны в OpenAI Cookbook:
Используйте Python 3.10 или более позднюю версию. Утилита использует стандартную библиотеку Python. Перед запуском прочитайте руководство и проверяйте изменения с помощью пробных запусков.
Текущая версия утилиты считывает учетные данные из переменных среды. Следуйте инструкциям по безопасному вводу из руководства. Для очистки списка разрешенных сайтов требуется явное подтверждение. Удаление записи может выполняться без такого подтверждения, поэтому сначала проверьте его с помощью пробного запуска.
Сведения о повторных попытках и необязательных ключах идемпотентности см. в разделе Безопасный повтор обновления политики. Используйте ключи идемпотентности, только если рабочая область их поддерживает, и проверяйте текущую политику после сбоя с неопределенным результатом.
Утилита не включает функции рабочей области и не проверяет, действуют ли ограничения. Ее автономные тесты используют имитации вызовов Microsoft Graph и ChatGPT Admin API.
Изменения, состоящие из нескольких запросов, не являются атомарными. Если удаление нескольких семейств сайтов прервется из-за сбоя, часть из них уже может быть удалена. Перед повторной попыткой проверьте текущую политику.
Часто задаваемые вопросы
Заменяют ли настройки доступа к сайтам разрешения Microsoft?
Нет. Приложение по-прежнему использует разрешения каждого пользователя в Microsoft. OpenAI применяет настроенную фильтрацию сайтов до того, как ответы станут доступны пользователю и модели.
Блокирует ли пустой список разрешенных сайтов все сайты?
Нет. Пустой список разрешенных сайтов не означает «заблокировать все». Если в списке заблокированных сайтов есть записи, эти семейства остаются заблокированными. Когда оба списка пусты, доступ определяется разрешениями пользователей в Microsoft и другими настроенными ограничениями.
Записываются ли изменения через Admin API в журнал?
Изменения политики через Admin API фиксируются в журналах аудита и соответствия требованиям рабочей области.
