New-ManagedContentSettings - não está funcionando corretamente no Exchange 2010

1

Eu tenho um cliente que está desinvestindo uma unidade de negócios em uma nova floresta do AD, na organização do Exchange etc.

Estamos usando as ferramentas da Quest para migrar usuários e caixas de correio. No entanto, tenho que construir a nova infraestrutura para corresponder à antiga.

No antigo, estamos usando as Políticas de Caixa de Correio de Pasta Gerenciada para limitar (ou permitir) a retenção. Eles começaram com o Exchange 2007 e nunca foram atualizados para as Políticas de Retenção; tudo bem.

Assim, no ambiente antigo, quando você usa um servidor 2007 para definir uma nova configuração de conteúdo gerenciado, pode selecionar "E-mail" no menu suspenso do MessageClass. Este é um nome de exibição; os valores reais de MessageClass são assim:

MessageClass : IPM.Note;IPM.Note.AS/400 Move Notification Form v1.0;IPM.Note.Delayed;IPM.Note.Exchange.ActiveSync.Report;IPM.Note.JournalReport.Msg;IPM.Note.JournalReport.Tnef;IPM.Note.Microsoft.Missed.Voice;IPM.Note.Rules.OofTemplate.Microsoft;IPM.Note.Rules.ReplyTemplate.Microsoft;IPM.Note.Secure.Sign;IPM.Note.SMIME;IPM.Note.SMIME.MultipartSigned;IPM.Note.StorageQuotaWarning;IPM.Note.StorageQuotaWarning.Warning;IPM.Notification.Meeting.Forward;IPM.Outlook.Recall;IPM.Recall.Report.Success;IPM.Schedule.Meeting.*;REPORT.IPM.Note.NDR

Se eu pegar isso e tentar transformá-lo em um novo cmdlet para o Ex2010 no meu novo ambiente, aqui está o que recebo

New-ManagedContentSettings -Name "Delete Messages older then 90 days" -FolderName "Entire Mailbox" -RetentionEnabled $True -AgeLimitForRetention 90 -TriggerForRetention WhenDelivered -RetentionAction DeleteAndAllowRecovery -MessageClass "IPM.Note","IPM.Note.AS/400MoveNotificationFormv1.0","IPM.Note.Delayed","IPM.Note.Exchange.ActiveSync.Report","IPM.Note.JournalReport.Msg","IPM.Note.JournalReport.Tnef","IPM.Note.Microsoft.Missed.Voice","IPM.Note.Rules.OofTemplate.Microsoft","IPM.Note.Rules.ReplyTemplate.Microsoft","IPM.Note.Secure.Sign","IPM.Note.SMIME","IPM.Note.SMIME.MultipartSigned","IPM.Note.StorageQuotaWarning","IPM.Note.StorageQuotaWarning.Warning","IPM.Notification.Meeting.Forward","IPM.Outlook.Recall","IPM.Recall.Report.Success","IPM.Schedule.Meeting.*","REPORT.IPM.Note.NDR"  -whatif

Invoke-Command : Cannot bind parameter 'MessageClass' to the target. Exception setting "MessageClass": "The length of t he property is too long. The maximum length is 255 and the length of the value provided is 518." At C:\Users\MFinnigan.sa\AppData\Roaming\Microsoft\Exchange\RemotePowerShell\pfexcas02.fve.ad.5ssl.com\pfexcas02.fve.ad .5ssl.com.psm1:28204 char:29 + $scriptCmd = { & <<<< $script:InvokeCommand ' + CategoryInfo : WriteError: (:) [New-ManagedContentSettings], ParameterBindingException + FullyQualifiedErrorId : ParameterBindingFailed,Microsoft.Exchange.Management.SystemConfigurationTasks.NewManaged ContentSettings

Assim, o objeto de configuração pode armazenar toda essa bagunça, mas não consigo encaixá-lo no cmdlet para criar o objeto. Linda.

Alguma ideia?

    
por mfinni 20.08.2014 / 22:57

2 respostas

2

Uau. A resposta é sensata e feia. Eu coloquei a coisa desagradável em uma variável e depois passei para o cmdlet. Eu não sou um para espancar cegamente a Microsoft, e eu sei que eles queriam que as pessoas parassem de usar o Managed Folders há cerca de 4 anos, mas que diabos.

É melhor do que a outra solução que considerei, que foi instalar as ferramentas de gerenciamento do Ex2007 (ou possivelmente um servidor Ex2007) simplesmente para fazer com que a GUI faça isso no 2007 Exchange Management Console.

$class = "IPM.Note;IPM.Note.AS/400 Move Notification Form v1.0;IPM.Note.Delayed;IPM.Note.Exchange.ActiveSync.Report;IPM.Note.JournalReport.Msg;IPM.Note.JournalReport.Tnef;IPM.Note.Microsoft.Missed.Voice;IPM.Note.Rules.OofTemplate.Microsoft;IPM.Note.Rules.ReplyTemplate.Microsoft;IPM.Note.Secure.Sign;IPM.Note.SMIME;IPM.Note.SMIME.MultipartSigned;IPM.Note.StorageQuotaWarning;IPM.Note.StorageQuotaWarning.Warning;IPM.Notification.Meeting.Forward;IPM.Outlook.Recall;IPM.Recall.Report.Success;IPM.Schedule.Meeting.*;REPORT.IPM.Note.NDR"

New-ManagedContentSettings  -Name "Delete Messages older then 90 days" -FolderName "Entire Mailbox" -RetentionEnabled $True -AgeLimitForRetention 90 -TriggerForRetention WhenDelivered -RetentionAction DeleteAndAllowRecovery -MessageClass $class 
    
por 20.08.2014 / 23:03
1

O trabalho de Mfinni em empurrá-lo em uma variável é provavelmente a melhor maneira, especialmente se houver alguma chance de reutilizá-lo em outras políticas de scripts / retenção. Mas se for apenas reduzir o comprimento, você também deve poder usar o seguinte.

New-ManagedContentSettings -Name "Delete Messages older than 90 days" -FolderName "Entire Mailbox" -RententionEndabled $True -AgeLimitForRetention 90 -TriggerForRetention WhenDelivered -RetentionAction DeleteAndAllowRecovery -MessageClass "IPM.Note.*","IPM.Notification.Meeting.Forward","IPM.Outlook.Recall","IPM.Recall.Report.Success","IPM.Schedule.Meeting.*","REPORT.IPM.Note.NDR"
    
por 21.08.2014 / 06:11