Condividi tramite


Cmdlet di Microsoft Entra per la configurazione delle impostazioni del gruppo

Questo articolo contiene istruzioni per l'uso dei cmdlet di PowerShell per creare e aggiornare i gruppi in Microsoft Entra ID, parte di Microsoft Entra. Questo contenuto si applica solo ai gruppi di Microsoft 365.

Importante

Alcune impostazioni richiedono una licenza Microsoft Entra ID P1. Per ulteriori informazioni, consultare la tabella delle impostazioni del modello .

Per altre informazioni su come impedire agli utenti non amministratori di creare gruppi di sicurezza, impostare la proprietà AllowedToCreateSecurityGroups su False come descritto in Update-MgPolicyAuthorizationPolicy.

Le impostazioni dei gruppi di Microsoft 365 vengono configurate usando un oggetto Settings e un oggetto SettingsTemplate. Inizialmente non vengono visualizzati oggetti Settings nella directory, perché la directory è configurata con le impostazioni predefinite. Per modificare le impostazioni predefinite, è necessario creare un nuovo oggetto impostazioni usando un modello di impostazioni. Microsoft offre diversi modelli di impostazioni. Per configurare le impostazioni dei gruppi di Microsoft 365 per la directory, usare il modello denominato "Group.Unified". Per configurare le impostazioni dei gruppi di Microsoft 365 in un singolo gruppo, usare il modello denominato "Group.Unified.Guest Questo modello viene usato per gestire l'accesso guest a un gruppo di Microsoft 365.

Il cmdlet fa parte del modulo Microsoft Graph PowerShell. Per istruzioni su come scaricare e installare il modulo nel computer, vedere Installare Microsoft Graph PowerShell SDK.

Nota

Anche con le restrizioni abilitate per impedire l'aggiunta di utenti guest ai gruppi di Microsoft 365, gli amministratori possono comunque aggiungere utenti guest. La restrizione si applica solo agli utenti non amministratori.

Installare i cmdlet di PowerShell

Installare i cmdlet di Microsoft Graph come descritto in Installare Microsoft Graph PowerShell SDK.

  1. Aprire l'app Di Windows PowerShell come amministratore.

  2. Installare i cmdlet di Microsoft Graph.

    Install-Module Microsoft.Graph -Scope AllUsers
    
  3. Installare i cmdlet beta di Microsoft Graph.

    Install-Module Microsoft.Graph.Beta -Scope AllUsers
    

Creare impostazioni a livello di directory

Questi passaggi creano impostazioni a livello di directory, che si applicano a tutti i gruppi di Microsoft 365 nella directory.

  1. Nei cmdlet DirectorySettings, è necessario specificare l'ID del SettingsTemplate da usare. Se non si conosce questo ID, questo cmdlet restituisce l'elenco di tutti i modelli di impostazioni:

    Get-MgBetaDirectorySettingTemplate
    

    Questa chiamata al cmdlet restituisce tutti i modelli disponibili:

    Id                                   DisplayName         Description
    --                                   -----------         -----------
    62375ab9-6b52-47ed-826b-58e47e0e304b Group.Unified       ...
    08d542b9-071f-4e16-94b0-74abb372e3d9 Group.Unified.Guest Settings for a specific Microsoft 365 group
    16933506-8a8d-4f0d-ad58-e1db05a5b929 Company.BuiltIn     Setting templates define the different settings that can be used for the associ...
    4bc7f740-180e-4586-adb6-38b2e9024e6b Application...
    898f1161-d651-43d1-805c-3b0b388a9fc2 Custom Policy       Settings ...
    5cf42378-d67d-4f36-ba46-e8b86229381d Password Rule       Settings ...
    
  2. Per aggiungere un URL delle linee guida per l'utilizzo, è prima necessario ottenere l'oggetto SettingsTemplate che definisce il valore URL delle linee guida di utilizzo; vale a dire, il Gruppo. Modello unificato:

    $TemplateId = (Get-MgBetaDirectorySettingTemplate | where { $_.DisplayName -eq "Group.Unified" }).Id
    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value $TemplateId -EQ
    
  3. Creare un oggetto contenente i valori da utilizzare per l'impostazione della directory. Questi valori modificano il valore delle linee guida di utilizzo e abilitano le etichette di riservatezza. Impostare queste impostazioni o qualsiasi altra impostazione nel modello in base alle esigenze:

    $params = @{
       templateId = "$TemplateId"
       values = @(
          @{
             name = "UsageGuidelinesUrl"
             value = "https://guideline.example.com"
          }
          @{
             name = "EnableMIPLabels"
             value = "True"
          }
       )
    }
    
  4. Creare l'impostazione della directory usando il New-MgBetaDirectorySetting:

    New-MgBetaDirectorySetting -BodyParameter $params
    
  5. È possibile leggere i valori usando i comandi seguenti:

    $Setting = Get-MgBetaDirectorySetting | where { $_.DisplayName -eq "Group.Unified"}
    $Setting.Values
    

Aggiornare le impostazioni a livello di directory

Per aggiornare il valore di UsageGuideLinesUrl nel modello di impostazione, leggere le impostazioni correnti da Microsoft Entra ID, altrimenti potremmo finire per sovrascrivere le impostazioni esistenti diverse da UsageGuideLinesUrl.

  1. Ottenere le impostazioni correnti da Group.Unified SettingsTemplate:

    $Setting = Get-MgBetaDirectorySetting | where { $_.DisplayName -eq "Group.Unified"}
    
  2. Controllare le impostazioni correnti:

    $Setting.Values
    

    Questo comando restituisce i valori seguenti:

    Name                            Value
    ----                            -----
    EnableMIPLabels                 True
    CustomBlockedWordsList
    EnableMSStandardBlockedWords    False
    ClassificationDescriptions
    DefaultClassification
    PrefixSuffixNamingRequirement
    AllowGuestsToBeGroupOwner       False
    AllowGuestsToAccessGroups       True
    GuestUsageGuidelinesUrl
    GroupCreationAllowedGroupId
    AllowToAddGuests                True
    UsageGuidelinesUrl              https://guideline.example.com
    ClassificationList
    EnableGroupCreation             True
    NewUnifiedGroupWritebackDefault True
    
  3. Per rimuovere il valore di UsageGuideLinesUrl, modificare l'URL in modo che sia una stringa vuota:

    $params = @{
       Values = @(
          @{
             Name = "UsageGuidelinesUrl"
             Value = ""
          }
       )
    }
    
  4. Aggiornare il valore usando il cmdlet Update-MgBetaDirectorySetting:

    Update-MgBetaDirectorySetting -DirectorySettingId $Setting.Id -BodyParameter $params
    

Impostazioni modello

Ecco le impostazioni definite nel Group.Unified SettingsTemplate. Se non diversamente indicato, queste funzionalità richiedono una licenza microsoft Entra ID P1.

impostazione Descrizione
AbilitaCreazioneGruppo
Tipo: Boolean
Impostazione predefinita: True
Questo flag indica se gli utenti non amministratori possono creare gruppi di Microsoft 365 nella directory. Questa impostazione non richiede una licenza Microsoft Entra ID P1.
GroupCreationAllowedGroupId
Tipo: String
Impostazione predefinita: ""
GUID del gruppo di sicurezza per il quale i membri possono creare gruppi di Microsoft 365 anche nel caso di EnableGroupCreation == false.
UsageGuidelinesUrl
Tipo: String
Impostazione predefinita: ""
Collegamento alle Linee guida per l'utilizzo dei gruppi.
DescrizioniClassificazioni
Tipo: String
Impostazione predefinita: ""
Elenco delimitato da virgole di descrizioni di classificazione. Il valore di ClassificationDescriptions è valido solo in questo formato:
$setting["ClassificationDescriptions"] ="Classification:Description,Classification:Description"
dove Classificazione corrisponde a una voce in ClassificationList.
Questa impostazione non si applica quando EnableMIPLabels == True.
Il limite di caratteri per la proprietà ClassificationDescriptions è 300 e le virgole non possono essere eluse.
DefaultClassification
Tipo: String
Impostazione predefinita: ""
Classificazione che deve essere utilizzata come classificazione predefinita per un gruppo se non è stato specificato nessuno.
Questa impostazione non si applica quando EnableMIPLabels == True.
prefixSuffixNamingRequirement
Tipo: String
Impostazione predefinita: ""
Stringa di lunghezza massima di 64 caratteri che definisce la convenzione di denominazione configurata per i gruppi di Microsoft 365. Per altre informazioni, vedere Applicare criteri di denominazione per i gruppi di Microsoft 365.
ElencoParoleBloccatePersonalizzate
Tipo: String
Impostazione predefinita: ""
Stringa delimitata da virgole di frasi che gli utenti non possono usare nei nomi di gruppo o negli alias. Per altre informazioni, vedere Applicare criteri di denominazione per i gruppi di Microsoft 365.
EnableMSStandardBlockedWords
Tipo: Boolean
Impostazione predefinita: False
Deprecato. Non usare.
AllowGuestsToBeGroupOwner
Tipo: Boolean
Impostazione predefinita: False
Valore booleano che indica se un utente guest può essere proprietario di gruppi.
AllowGuestsToAccessGroups
Tipo: Boolean
Impostazione predefinita: True
Valore booleano che indica se un utente guest può avere accesso al contenuto dei gruppi di Microsoft 365. Questa impostazione non richiede una licenza Microsoft Entra ID P1.
GuestUsageGuidelinesUrl
Tipo: String
Impostazione predefinita: ""
URL di un collegamento alle linee guida per l'utilizzo ospite.
ConsentiAggiuntaOspiti
Tipo: Boolean
Impostazione predefinita: True
Valore booleano che indica se è consentito o meno aggiungere ospiti a questa directory.
Questa impostazione può essere sottoposta a override e diventa di sola lettura se EnableMIPLabels è impostato su True e un criterio guest è associato all'etichetta di riservatezza assegnata al gruppo.
Se l'impostazione AllowToAddGuests è impostata su False a livello di organizzazione, qualsiasi impostazione di AllowToAddGuests a livello di gruppo viene ignorata. Se si vuole abilitare l'accesso guest solo per pochi gruppi, è necessario impostare AllowToAddGuests su true a livello di organizzazione e quindi disabilitarlo in modo selettivo per gruppi specifici.
ElencoClassificazioni
Tipo: String
Impostazione predefinita: ""
Elenco delimitato da virgole di valori di classificazione validi che possono essere applicati ai gruppi di Microsoft 365.
Questa impostazione non si applica quando EnableMIPLabels == True.
EnableMIPLabels
Tipo: Boolean
Impostazione predefinita: False
L'indicatore che indica se le etichette di riservatezza pubblicate nel portale di conformità di Microsoft Purview possono essere applicate ai gruppi di Microsoft 365. Per ulteriori informazioni, vedere Assegnare etichette di riservatezza per i gruppi di Microsoft 365.
NewUnifiedGroupWritebackDefault
Tipo: Boolean
Impostazione predefinita: True
Flag che consente a un amministratore di creare nuovi gruppi di Microsoft 365 senza impostare il tipo di risorsa groupWritebackConfiguration nel payload della richiesta. Questa impostazione è applicabile quando il writeback di gruppo è configurato in Microsoft Entra Connect. NewUnifiedGroupWritebackDefault è un'impostazione globale di gruppo di Microsoft 365. Il valore predefinito è vero. L'aggiornamento del valore dell'impostazione su false modifica il comportamento di writeback predefinito per i gruppi di Microsoft 365 appena creati e non modifica il valore della proprietà isEnabled per i gruppi di Microsoft 365 esistenti. L'amministratore del gruppo deve aggiornare in modo esplicito il valore della proprietà isEnabled per modificare lo stato di writeback per i gruppi di Microsoft 365 esistenti.

Esempio: Configurare la politica guest per i gruppi a livello di directory

  1. Ottenere tutti i modelli di impostazione:

    Get-MgBetaDirectorySettingTemplate
    
  2. Per impostare i criteri guest per i gruppi a livello di directory, è necessario il modello Group.Unified.

    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "62375ab9-6b52-47ed-826b-58e47e0e304b" -EQ
    
  3. Impostare un valore per AllowToAddGuests per il modello specificato:

    $params = @{
       templateId = "62375ab9-6b52-47ed-826b-58e47e0e304b"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  4. Quindi, crea un nuovo oggetto impostazioni utilizzando il cmdlet New-MgBetaDirectorySetting.

    $Setting = New-MgBetaDirectorySetting -BodyParameter $params
    
  5. È possibile leggere i valori usando:

    $Setting.Values
    

Leggere le impostazioni a livello di directory

Se si conosce il nome dell'impostazione da recuperare, è possibile usare il cmdlet seguente per recuperare il valore delle impostazioni correnti. In questo esempio viene recuperato il valore per un'impostazione denominata UsageGuidelinesUrl.

(Get-MgBetaDirectorySetting).Values | where -Property Name -Value UsageGuidelinesUrl -EQ

Questi passaggi leggono le impostazioni a livello di directory e si applicano a tutti i gruppi di Office nella directory.

  1. Leggi tutte le impostazioni esistenti della directory.

    Get-MgBetaDirectorySetting -All
    

    Questo cmdlet restituisce un elenco di tutte le impostazioni della directory:

    Id                                   DisplayName   TemplateId                           Values
    --                                   -----------   ----------                           ------
    c391b57d-5783-4c53-9236-cefb5c6ef323 Group.Unified 62375ab9-6b52-47ed-826b-58e47e0e304b {class SettingValue {...
    
  2. Leggere tutte le impostazioni per un gruppo specifico:

    Get-MgBetaGroupSetting -GroupId "ab6a3887-776a-4db7-9da4-ea2b0d63c504"
    
  3. Leggere tutti i valori delle impostazioni della directory di un determinato oggetto di impostazioni della directory, utilizzando l'ID GUID impostazioni:

    (Get-MgBetaDirectorySetting -DirectorySettingId "c391b57d-5783-4c53-9236-cefb5c6ef323").values
    

    Questo cmdlet restituisce i nomi e i valori in questo oggetto di impostazioni per questo gruppo specifico.

    Name                          Value
    ----                          -----
    ClassificationDescriptions
    DefaultClassification
    PrefixSuffixNamingRequirement
    CustomBlockedWordsList        
    AllowGuestsToBeGroupOwner     False 
    AllowGuestsToAccessGroups     True
    GuestUsageGuidelinesUrl
    GroupCreationAllowedGroupId
    AllowToAddGuests              True
    UsageGuidelinesUrl            https://guideline.example.com
    ClassificationList
    EnableGroupCreation           True
    

Rimuovere le impostazioni a livello di directory

Questo passaggio rimuove le impostazioni a livello di directory, che si applicano a tutti i gruppi di Office nella directory.

Remove-MgBetaDirectorySetting –DirectorySettingId "c391b57d-5783-4c53-9236-cefb5c6ef323c"

Creare impostazioni per un gruppo specifico

  1. Ottieni i modelli di impostazioni.

    Get-MgBetaDirectorySettingTemplate
    
  2. Nella sezione dei risultati, cercare il modello di impostazioni chiamato "Groups.Unified.Guest":

    Id                                   DisplayName            Description
    --                                   -----------            -----------
    62375ab9-6b52-47ed-826b-58e47e0e304b Group.Unified          ...
    08d542b9-071f-4e16-94b0-74abb372e3d9 Group.Unified.Guest    Settings for a specific Microsoft 365 group
    4bc7f740-180e-4586-adb6-38b2e9024e6b Application            ...
    898f1161-d651-43d1-805c-3b0b388a9fc2 Custom Policy Settings ...
    5cf42378-d67d-4f36-ba46-e8b86229381d Password Rule Settings ...
    
  3. Recuperare l'oggetto modello per il modello Groups.Unified.Guest:

    $Template1 = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "08d542b9-071f-4e16-94b0-74abb372e3d9" -EQ
    
  4. Ottenere l'ID del gruppo a cui si vuole applicare questa impostazione:

    $GroupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  5. Creare la nuova impostazione:

    $params = @{
       templateId = "08d542b9-071f-4e16-94b0-74abb372e3d9"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  6. Creare l'impostazione del gruppo:

    New-MgBetaGroupSetting -GroupId $GroupId -BodyParameter $params
    
  7. Per verificare le impostazioni, eseguire questo comando:

    Get-MgBetaGroupSetting -GroupId $GroupId | FL Values
    

Aggiornare le impostazioni per un gruppo specifico

  1. Ottenere l'ID del gruppo di cui si vuole aggiornare l'impostazione:

    $groupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  2. Recuperare l'impostazione del gruppo:

    $Setting = Get-MgBetaGroupSetting -GroupId $GroupId
    
  3. Aggiornare l'impostazione del gruppo in base alle esigenze:

    $params = @{
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "True"
          }
       )
    }
    
  4. È quindi possibile impostare il nuovo valore per questa impostazione:

    Update-MgBetaGroupSetting -DirectorySettingId $Setting.Id -GroupId $GroupId -BodyParameter $params
    
  5. È possibile leggere il valore dell'impostazione per assicurarsi che sia stato aggiornato correttamente:

    Get-MgBetaGroupSetting -GroupId $GroupId  | FL Values
    

Informazioni di riferimento sulla sintassi dei cmdlet

Puoi trovare ulteriori documentazioni su Microsoft Graph PowerShell presso Cmdlet di Microsoft Entra.

Gestire le impostazioni di gruppo con Microsoft Graph

Per configurare e gestire le impostazioni di gruppo con Microsoft Graph, vedere il groupSetting tipo di risorsa e i relativi metodi associati.

Lettura aggiuntiva