SharePoint Online : configurer les paramètres des demandes d'accès à l'aide de PowerShell
Paramètres de demande d'accès dans SharePoint Online
La fonctionnalité de demande d'accès dans SharePoint Online permet aux utilisateurs de demander l'accès au contenu auquel ils ne sont pas autorisés à accéder. Il permet également aux membres du site d'envoyer des invitations à des utilisateurs qui n'ont aucune autorisation. Une fois les invitations envoyées, le propriétaire du site doit les approuver depuis Paramètres du site >> Demandes d'accès et invitations. Si vous modifiez ces paramètres au niveau de la collection de sites, les nouveaux sous-sites n'héritent pas.
Comment définir l'e-mail de demande d'accès à SharePoint Online ?
Pour configurer les paramètres de courrier électronique de demande d'accès dans SharePoint Online, accédez à :
- Paramètres du site >> Autorisations du site >> Paramètres des demandes d'accès.
Cela vous amène à la page de demande d'accès SharePoint Online >> Mettez à jour l'e-mail de demande d'accès et appuyez sur OK pour enregistrer vos modifications.
De même, sur les sites connectés à un groupe, vous pouvez définir les demandes d'accès en allant dans Paramètres >> Autorisations du site >> Cliquez sur « Modifier la façon dont les membres peuvent partager » >> Activez « Autoriser les demandes d'accès » et configurez qui recevra les demandes d'accès. pour le site.
Veuillez noter que les paramètres du site par courrier électronique de demande d'accès à SharePoint Online doivent être configurés à chaque niveau du site. Voyons SharePoint Online PowerShell pour définir l'e-mail de demande d'accès.
Définir les paramètres de demande d'accès SharePoint Online à l'aide de PowerShell
Utilisez ce script PowerShell pour mettre à jour l'e-mail de demande d'accès à SharePoint Online.
#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
#Set Variables for Site URL
$SiteURL= "https://crescent.sharepoint.com/sites/sales/"
$AccessReqEmail="SharePointSupport@crescent.com"
#Setup Credentials to connect
$Cred = Get-Credential
$Cred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName,$Cred.Password)
Try {
#Setup the context
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Cred
#Get the current settings
$Web = $Ctx.Web
$Ctx.Load($web.AllProperties)
$web.RequestAccessEmail
$Ctx.ExecuteQuery()
#sharepoint online powershell set access request email
$Web.RequestAccessEmail =$AccessReqEmail
#Member settings
$Web.MembersCanShare = $True
$web.AssociatedMemberGroup.AllowMembersEditMembership = $True
$web.AssociatedMemberGroup.Update()
$Web.Update()
$Ctx.ExecuteQuery()
}
Catch {
write-host -f Red "Error configuring Access request settings!" $_.Exception.Message
}
Cela définit les paramètres de demande d’accès SharePoint Online avec PowerShell.
Désactiver les demandes d'accès dans SharePoint Online à l'aide de PowerShell :
Pour désactiver la demande d'accès, effacez simplement la valeur Email !
#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
#Set Variables for Site URL
$SiteURL= "https://crescent.sharepoint.com/sites/sales/"
#Setup Credentials to connect
$Cred = Get-Credential
$Cred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName,$Cred.Password)
Try {
#Setup the context
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Cred
#sharepoint online disable access request powershell
$Web = $Ctx.Web
$Web.RequestAccessEmail = [string]::Empty
$Web.MembersCanShare = $False
$web.AssociatedMemberGroup.AllowMembersEditMembership = $False
$web.AssociatedMemberGroup.Update()
$Web.Update()
$Ctx.ExecuteQuery()
}
Catch {
write-host -f Red "Error disabling Access request settings!" $_.Exception.Message
}
Pour modifier les e-mails de demande d'accès de tous les sites d'une collection de sites ou d'une utilisation par un locataire : SharePoint Online : PowerShell pour modifier l'e-mail de demande d'accès pour tous les sites.
SharePoint Online : désactiver la demande d'accès à l'aide de PnP PowerShell
#Set Variables
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
#Get the Web
$Web = Get-PnPWeb
#sharepoint online powershell disable access requests
$Web.RequestAccessEmail = [string]::Empty
$Web.SetUseAccessRequestDefaultAndUpdate($False)
$Web.Update()
$Web.Context.ExecuteQuery()
Ce script PowerShell efface à la fois l'e-mail de demande d'accès et les paramètres de groupe ! De même, pour désactiver les demandes d'accès pour tous les sites du locataire, utilisez : SharePoint Online : désactiver les demandes d'accès pour tous les sites à l'aide de PowerShell.
Activer les demandes d'accès au groupe propriétaire du site à l'aide de PnP PowerShell :
Pour définir des demandes d'accès aux propriétaires du site, utilisez :
#Set Variables
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
#Get the Web
$Web = Get-PnPWeb
#Enable Access Request for the site to the Owners Group
$Web.SetUseAccessRequestDefaultAndUpdate($True)
$Web.Update()
$Web.Context.ExecuteQuery()
De même, pour définir les e-mails dans la demande d'accès, utilisez l'applet de commande PnP PowerShell Set-PnPRequestAccessEmails :
Connect-PnPOnline -Url https://crescent.sharepoint.com/sites/marketing -Interactive
#Update Access Request Email
Set-PnPRequestAccessEmails -Emails @("Admin@crescent.com", "SPAdmin@crescent.com")
Pour modifier l'e-mail de demande d'accès dans SharePoint Online, utilisez ce qui suit :
#Enable Access Request for the site to a Email ID
$Web.RequestAccessEmail = "Someone@YourDomain.com"
$Web.SetUseAccessRequestDefaultAndUpdate($False)
$Web.Update()
$Web.Context.ExecuteQuery()
Dernier point mais non le moindre : les demandes d'accès et les invitations sont-elles manquantes dans SharePoint Online ? Eh bien, c’est parce que - Les paramètres de demande d’accès sont désactivés !

