Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Симптомы
При попытке доступа к общему ресурсу при попытке получить доступ к общему ресурсу с помощью гостевой учетной записи вы получите одно из следующих сообщений об ошибке:
Access Denied
Let us know why you need access to this site.
User is not found in the directory
You need permission to access this site.
Резолюция
Проблему можно устранить следующим способом.
- Определите, какая учетная запись приняла приглашение.
- Удалите неправильную учетную запись и добавьте правильную учетную запись.
- Повторно пригласите пользователя к ресурсу.
Примечание. Многие примеры в этой статье используют <contoso> в качестве заполнителя. В своем сценарии замените <contoso> доменом, используемым для вашей организации.
Определение доступа к учетной записи в качестве гостевого пользователя
Если вы можете получить доступ к сайту в качестве неправильного внешнего пользователя, выполните следующие действия.
Войдите в качестве учетной записи внешнего пользователя, которая использовалась для принятия приглашения.
Щелкните изображение профиля в правом верхнем углу и нажмите кнопку "Мои параметры".
В поле "Учетная запись" просмотрите адрес электронной почты. Например:
i:0#.f|membership|JonDoe@contoso.com
.Примечание. В этом примере JonDoe@contoso.com используется учетная запись электронной почты, которая приняла приглашение пользователя.
Если адрес неверный, выполните действия, описанные в разделе "Удалить неправильную внешнюю учетную запись пользователя" этой статьи.
Если вы не можете получить доступ к сайту в качестве неправильного внешнего пользователя, выполните следующие действия.
Как администратор SharePoint Online, войдите в коллекцию сайтов, которую вы предоставили внешнему пользователю.
Выберите значок шестеренки в меню "Настройки", а затем выберите Настройки сайта.
В разделе "Пользователи и разрешения" выберите "Люди" и "Группы".
В конце URL-адреса в окне браузера, после people.aspx? части URL-адреса, замените MembershipGroupId=<number> на MembershipGroupId=0, а затем нажмите клавишу ВВОД.
В списке пользователей найдите имя внешнего пользователя. Щелкните правой кнопкой мыши имя пользователя и скопируйте ярлык.
В новом окне браузера или вкладке вставьте URL-адрес, скопированный на предыдущем шаге, в адресное поле. Добавьте &force=1 в конец URL-адреса и нажмите клавишу Enter.
В поле "Учетная запись" просмотрите адрес электронной почты. Например:
*i:0#.f|membership|JonDoe\@contoso.com
.Примечание. В этом примере JonDoe@contoso.com используется учетная запись электронной почты, которая приняла приглашение пользователя.
Если адрес неверный, выполните действия, описанные в разделе "Удалить неправильную внешнюю учетную запись пользователя" этой статьи.
Удаление неправильной учетной записи внешнего пользователя
Необходимо удалить внешнюю учетную запись пользователя из каждого семейства веб-сайтов, к которому имеется доступ. Чтобы удалить учетную запись пользователя, можно использовать пользовательский интерфейс SharePoint Online или оболочку управления SharePoint Online в зависимости от версии Microsoft 365.
Для подписок Microsoft 365 для бизнеса используйте пользовательский интерфейс SharePoint Online:
Перейдите в Центр администрирования Microsoft 365 по адресу https://portal.office.com.
В параметрах службы выберите "Управление параметрами всей организации".
Выберите сайты и общий доступ к документам в меню навигации слева, а затем выберите "Удалить отдельных внешних пользователей".
Выберите внешнего пользователя, который нужно удалить, а затем щелкните значок "Удалить ".
Для всех остальных подписок используйте оболочку управления SharePoint Online, выполнив следующие действия:
Замечание
Этот параметр не применяется к организациям Office Small Business (P).
Скачайте и установите оболочку управления SharePoint Online.
Запустите командную консоль SharePoint Online и выполните следующую команду:
$cred = Get-Credential
В диалоговом окне "Необходимые учетные данные Windows PowerShell" введите учетные данные администратора и нажмите кнопку "ОК".
Подключитесь к SharePoint Online и выполните следующую команду:
Connect-SPOService -Url https://-admin.sharepoint.com -Credential $cred
Удалите пользователя из каждой коллекции сайтов. Выполните следующую команду:
$ExtUser = Get-SPOExternalUser -filter <account@contoso.com>
Замечание
В этой команде замените account@contoso.com на учетную запись, которую это затронуло.
Чтобы удалить пользователя, выполните следующую команду:
Remove-SPOExternalUser -UniqueIDs @($ExtUser.UniqueId)
Выполните следующие действия, чтобы удалить возможность внешнего пользователя получить доступ к SharePoint Online. Однако пользователь может по-прежнему отображаться в результатах поиска и в командлете консоли управления SharePoint Online Get-SPOUser
.
Чтобы полностью удалить пользователя из SharePoint Online, удалите пользователя из списка UserInfo с помощью одного из следующих методов.
Используйте пользовательский интерфейс SharePoint Online. Перейдите к каждому семейству веб-сайтов, к которому пользователь ранее имел доступ, и выполните следующие действия:
В семействе веб-сайтов измените URL-адрес, добавив следующую строку в конец URL-адреса:
_layouts/15/people.aspx/membershipGroupId=0
Например, полный URL-адрес похож на следующий пример:
https://<contoso>.sharepoint.com/_layouts/15/people.aspx/membershipGroupId=0
Выберите пользователя из списка.
Нажмите кнопку "Удалить разрешения пользователя " на ленте.
Используйте оболочку управления SharePoint Online.
Замечание
Этот параметр не применяется к подпискам малого бизнеса.
Запустите оболочку управления SharePoint Online.
Выполните следующую команду:
$cred = Get-Credential
В окне обязательных учетных данных Windows PowerShell введите учетные данные администратора, а затем нажмите кнопку "ОК".
Подключитесь к SharePoint Online и выполните следующую команду:
Connect-SPOService -Url https://<contoso>-admin.sharepoint.com -Credential $cred
Удалите пользователя из каждой коллекции сайтов.
Выполните следующую команду, чтобы определить затронутую учетную запись гостевого пользователя:
Get-SPOUser -Site https://<contoso>.sharepoint.com | FT –a
Обратите внимание на имя входа гостевого пользователя из возвращенных результатов. Для гостевого пользователя может быть префикс "live.com#", если это учетная запись Майкрософт.
Выполните следующую команду, чтобы удалить внешнюю учетную запись пользователя:
Remove-SPOUser -Site https://<contoso>.sharepoint.com -LoginName live.com#jondoe@company.com
Примечание. Замените live.com#jondoe@company.com именем входа пользователя в вашем сценарии.
Затем необходимо удалить учетную запись из идентификатора Microsoft Entra:
Скачайте и установите пакет SDK Microsoft Graph PowerShell, выполнив следующую команду:
Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery
Откройте PowerShell и подключитесь к Microsoft Graph, выполнив следующую команду:
Connect-MgGraph -Scopes "User.ReadWrite.All","Directory.ReadWrite.All"
В диалоговом окне введите учетные данные администратора.
Найдите внешнего (гостевого) пользователя, выполнив следующую команду. Эта команда фильтрует гостевую учетную запись по УПН и отображает идентификатор, УПН и тип пользователя учетной записи. Замените
jondoe_contoso.com#EXT#@yourdomain.onmicrosoft.com
конкретного пользователя в своем сценарии.$guestUpn = 'jondoe_contoso.com#EXT#@yourdomain.onmicrosoft.com' Get-MgUser -Filter "UserPrincipalName eq '$guestUpn'" -Property Id,UserPrincipalName,UserType | Format-Table -AutoSize
Удалите (мягкое удаление) гостевого пользователя, выполнив эту команду:
Remove-MgUser -UserId <user-id> -Confirm:$false
(Необязательно) Удалите гостевого пользователя из корзины окончательно, выполнив следующую команду:
$deleted = Get-MgDirectoryDeletedItem -Filter "Id eq '<user-id>'" -All Remove-MgDirectoryDeletedItem -DirectoryObjectId $deleted.Id -Confirm:$false
Очистка кэша браузера
SharePoint Online использует кэширование браузера в нескольких сценариях, включая функцию выбора людей. Даже после полного удаления пользователя из системы пользователь может оставаться в кэше браузера. Очистка кэша браузера устраняет эту проблему. После очистки кэша убедитесь, что также выбран параметр "Файлы cookie" и "Данные веб-сайта ".
Повторное подключение внешнего пользователя
После удаления внешней учетной записи пользователя повторно войдите на сайт с помощью соответствующего адреса электронной почты. Чтобы убедиться, что пользователь принимает приглашение с соответствующим адресом электронной почты, рекомендуется скопировать ссылку в приглашении, а затем вставить ее в сеанс просмотра InPrivate. Это гарантирует, что для принятия приглашения не используются кэшированные учетные данные.
Дополнительные сведения
Это не требование для принятия приглашения гостевого пользователя с помощью адреса электронной почты, на который он был отправлен. Это однократное приглашение. Если пользователь принимает приглашение с помощью другой учетной записи или если пользователь, принимающий приглашение, входит в ресурс с учетной записью, отличной от адреса электронной почты, на который было отправлено приглашение, может появиться сообщение Access denied
.
Например, рассмотрим этот сценарий. Пользователь входит в систему через браузер с помощью учетной записи Майкрософт, и пользователь получает приглашение по электронной почте к своей учетной записи внешнего пользователя в своем почтовом приложении. Затем пользователь выбирает ссылку, чтобы принять приглашение. Основываясь на файлах cookie браузера, пользователь принимает приглашение, используя неправильное удостоверение. Поэтому, когда пользователь входит в систему ресурса с помощью своей внешней учетной записи, он получает ошибку о том, что пользователь не найден в каталоге.
Все еще нужна помощь? Перейдите в сообщество SharePoint.