Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Симптомы
При попытке доступа к общему ресурсу при попытке получить доступ к общему ресурсу с помощью гостевой учетной записи вы получите одно из следующих сообщений об ошибке:
Access DeniedLet us know why you need access to this site.User is not found in the directoryYou 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.