Disattivare la sincronizzazione di calendario di Outlook nella pianificazione per l'organizzazione

Nota: Riteniamo importante fornire il contenuto della Guida più recente non appena possibile, nella lingua dell'utente. Questa pagina è stata tradotta automaticamente e potrebbe contenere errori di grammatica o imprecisioni. L'intento è quello di rendere fruibile il contenuto. Nella parte inferiore della pagina è possibile indicare se le informazioni sono risultate utili. Questo è l'articolo in lingua inglese per riferimento.

Se si è un amministratore globale per Office 365 e si desidera disattivare la sincronizzazione di calendario in Microsoft Planner, è possibile utilizzare Windows PowerShell. Pianificazione viene attivata automaticamente per tutte le organizzazioni che hanno Planner come parte del loro abbonamento a Office 365.

Prerequisiti per apportare modifiche Planner in Windows PowerShell

Questa procedura viene illustrato il download dei file necessari per eseguire i comandi di amministrazione di Planner in PowerShell:

  • Due DLL di Active Directory

  • Uno script PowerShell

  • Manifesto dello script

Se si conosce Windows PowerShell, vedere Uso di Windows PowerShell.

  1. Passare a https://www.nuget.org/packages/Microsoft.IdentityModel.Clients.ActiveDirectory/2.29.0

  2. A destra, fare clic su download manuale, scegliere Salva con nome, scegliere la posizione in cui salvarlo e scegliere Salva.

  3. Individuare il file in Esplora File e modificare l'estensione del file da .nupkg a zip.

  4. Fare clic sul file con estensione zip e scegliere Estrai tutto.  Scegliere Estrai. È necessario che a una cartella decompresso intitolata "microsoft.identitymodel.clients.activedirectory.2.29.0".

  5. Copiare il codice seguente in un editor di testo e salvarlo come SetPlannerTenantSettings.psm1 nella cartella "microsoft.identitymodel.clients.activedirectory.2.29.0\lib\net45".

    function Connect-AAD ()
    {
    <#
    .Synopsis
    (Private to module) Attempts to obtain a token from AAD.
    .Description
    This function attempts to obtain a token from Azure Active Directory.
    .example
    $authorizationContext = Connect-AAD
    #>
        $authUrl = "https://login.microsoftonline.com/common" # Prod environment
        $resource = "https://tasks.office.com" # Prod environment
        $clientId = "d3590ed6-52b3-4102-aeff-aad2292ab01c"
       
        $redirectUri = "urn:ietf:wg:oauth:2.0:oob"
        $promptBehavior = [Microsoft.IdentityModel.Clients.ActiveDirectory.PromptBehavior]::Always
       
        $authentiationContext = New-Object "Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext" -ArgumentList $authUrl, $False
       
        $authenticationResult = $authentiationContext.AcquireToken($resource, $clientId, $redirectUri, $promptBehavior)
        return $authenticationResult
    }
    function Set-PlannerConfiguration
    {
    <#
    .Synopsis
    Configures tenant level settings for Microsoft Planner.
    .Description
    This cmdlet allows tenant administrators to change policies regarding availability of certain features in Microsoft Planner. The changes to settings take effect immediately. This cmdlet specifies the administrator preference on whether the feature should be available. The features can still be disabled due to Microsoft Planner behavior, at the discretion of Microsoft.
    .Parameter Uri
    The URL of the Tenant-Level Settings API for the Planner instance to control.
    .Parameter AccessToken
    A valid access token of a user with tenant-level administrator privileges.
    .Parameter AllowCalendarSharing
    If set to $false, disables creating iCalendar links from Microsoft Planner, and disables previously created iCalendar links.  If set to $true, enables creating iCalendar links from Microsoft Planner and re-enables any previously created iCalendar links.
    .example
    Set-PlannerConfiguration -AllowCalendarSharing $true
    #>
        param(
            [ValidateNotNull()]
            [System.String]$Uri="https://tasks.office.com/taskAPI/tenantAdminSettings/Settings",
            [ValidateNotNullOrEmpty()]
            [Parameter(Mandatory=$false)][System.String]$AccessToken,
            [Parameter(Mandatory=$false, ValueFromPipeline=$true)][System.Boolean]$AllowCalendarSharing
            )
       
        if(!($PSBoundParameters.ContainsKey("AccessToken"))){
            $authorizationContext = Connect-AAD
            $AccessToken = $authorizationContext.AccessTokenType.ToString() + ' ' +$authorizationContext.AccessToken
        }
       
        $flags = @{}
       
        if($PSBoundParameters.ContainsKey("AllowCalendarSharing")){
            $flags.Add("allowCalendarSharing", $AllowCalendarSharing);
        }
        $propertyCount = $flags | Select-Object -ExpandProperty Count
       
        if($propertyCount -eq 0) {
            Throw "No properties were set."
        }
       
        $requestBody = $flags | ConvertTo-Json
        Invoke-RestMethod -ContentType "application/json;odata.metadata=full" -Headers @{"Accept"="application/json"; "Authorization"=$AccessToken; "Accept-Charset"="UTF-8"; "OData-Version"="4.0;NetFx"; "OData-MaxVersion"="4.0;NetFx"} -Method PATCH -Body $requestBody $Uri
    }
    function Get-PlannerConfiguration
    {
    <#
    .Synopsis
    Retrieves tenant level settings for Microsoft Planner.
    .Description
    This cmdlet allows users and tenant administrators to retrieve policy preferences set by the tenant administrator regarding availability of certain features in Microsoft Planner.  While a feature may be permitted by a tenant administrator's preference, features can still be disabled due to Microsoft Planner behavior, at the discretion of Microsoft.
    .Parameter Uri
    The URL of the Tenant-Level Settings API for the Planner instance to retrieve.
    .Parameter AccessToken
    A valid access token of a user with tenant-level administrator privileges.
    .example
    Get-PlannerConfiguration
    #>
        param(
            [ValidateNotNull()]
            [System.String]$Uri="https://tasks.office.com/taskAPI/tenantAdminSettings/Settings",
            [Parameter(Mandatory=$false)]
            [ValidateNotNullOrEmpty()]
            [System.String]$AccessToken
            )
       
        if(!($PSBoundParameters.ContainsKey("AccessToken"))){
            $authorizationContext = Connect-AAD
            $accessToken = $authorizationContext.AccessTokenType.ToString() + ' ' +$authorizationContext.AccessToken
        }
       
        $response = Invoke-RestMethod -ContentType "application/json;odata.metadata=full" -Headers @{"Accept"="application/json"; "Authorization"=$AccessToken; "Accept-Charset"="UTF-8"; "OData-Version"="4.0;NetFx"; "OData-MaxVersion"="4.0;NetFx"} -Method GET $Uri
        $result = New-Object psobject
        $result | Add-Member -NotePropertyName "SettingName" -NotePropertyValue "AllowCalendarSharing"
        $result | Add-Member -NotePropertyName "Value" -NotePropertyValue $response.allowCalendarSharing
        return $result
    }
    Export-ModuleMember -Function Get-PlannerConfiguration, Set-PlannerConfiguration
    
  6. Copiare il codice seguente in un editor di testo e salvarlo come SetPlannerTenantSettings.psd1 nella cartella "microsoft.identitymodel.clients.activedirectory.2.29.0\lib\net45".

    #
    # Module manifest for module 'SetTenantSettings'
    #
    # Generated by: Microsoft Corporation
    #
    # Generated on: 12/17/2017
    #
    
    @{
    
    # Script module or binary module file associated with this manifest.
    RootModule = 'SetPlannerTenantSettings.psm1' # Version number of this module. ModuleVersion = '1.0' # Supported PSEditions # CompatiblePSEditions = @() # ID used to uniquely identify this module GUID = '6250c644-4898-480c-8e0b-bd3ebdf246ca' # Author of this module Author = 'Microsoft Corporation' # Company or vendor of this module CompanyName = 'Microsoft Corporation' # Copyright statement for this module Copyright = '(c) 2017 Microsoft Corporation. All rights reserved.' # Description of the functionality provided by this module Description = 'Planner Tenant Settings client' # Minimum version of the Windows PowerShell engine required by this module # PowerShellVersion = '' # Name of the Windows PowerShell host required by this module # PowerShellHostName = '' # Minimum version of the Windows PowerShell host required by this module # PowerShellHostVersion = '' # Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only. # DotNetFrameworkVersion = '' # Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only. # CLRVersion = '' # Processor architecture (None, X86, Amd64) required by this module # ProcessorArchitecture = '' # Modules that must be imported into the global environment prior to importing this module # RequiredModules = @() # Assemblies that must be loaded prior to importing this module RequiredAssemblies = @("Microsoft.IdentityModel.Clients.ActiveDirectory.dll","Microsoft.IdentityModel.Clients.ActiveDirectory.WindowsForms.dll") # Script files (.ps1) that are run in the caller's environment prior to importing this module. # ScriptsToProcess = @() # Type files (.ps1xml) to be loaded when importing this module # TypesToProcess = @() # Format files (.ps1xml) to be loaded when importing this module # FormatsToProcess = @() # Modules to import as nested modules of the module specified in RootModule/ModuleToProcess # NestedModules = @() # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. FunctionsToExport = @("Get-PlannerConfiguration", "Set-PlannerConfiguration") # Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export. CmdletsToExport = @() # Variables to export from this module VariablesToExport = '*' # Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export. AliasesToExport = @() # DSC resources to export from this module # DscResourcesToExport = @() # List of all modules packaged with this module # ModuleList = @() # List of all files packaged with this module # FileList = @("SetTenantSettings.psm1") # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. PrivateData = @{ PSData = @{ # Tags applied to this module. These help with module discovery in online galleries. # Tags = @() # A URL to the license for this module. # LicenseUri = '' # A URL to the main website for this project. # ProjectUri = '' # A URL to an icon representing this module. # IconUri = '' # ReleaseNotes of this module # ReleaseNotes = '' } # End of PSData hashtable } # End of PrivateData hashtable # HelpInfo URI of this module # HelpInfoURI = '' # Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix. # DefaultCommandPrefix = '' }
    
  7. Eseguire questo comando per importare questi file in PowerShell, assicurandosi di aggiungere il percorso del file univoco dal computer:

    Import-Module [File path on your computer]microsoft.identitymodel.clients.activedirectory.2.29.0\lib\net45\SetPlannerTenantSettings.psd1 

A questo punto si è pronti per apportare modifiche alle Planner a livello di organizzazione utilizzando PowerShell.

Disattivare o attivare sincronizzazione di calendario di Outlook in Planner con PowerShell

  1. Aprire PowerShell ed eseguire il seguente comando per disattivare la sincronizzazione di calendario di Outlook per Planner:

    Set-PlannerConfiguration -AllowCalendarSharing $false

    Per riattivare sincronizzazione di calendario di Outlook in Planner:

    Set-PlannerConfiguration -AllowCalendarSharing $true

    Nota: È necessario effettuare l'accesso usando le proprie credenziali Azure Active Directory.

  2. Per verificare le impostazioni:

    • In PowerShell eseguite: Get-PlannerConfiguration

    • In Planner, andare a pianificazione > Attività personali. Selezionare i puntini di sospensione (. ). Sincronizzazione di calendario di Outlook è attivato se viene visualizzato il comando Aggiungi "attività" nel calendario di Outlook e disabilitata in caso contrario.

Amplia le tue competenze su Office
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa al programma Office Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×