Share via


Modelos

 

Aplica-se a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Tópico modificado em: 2007-08-29

Este tópico explica como você pode usar modelos no Shell de Gerenciamento do Exchange para copiar a configuração de um objeto para outro objeto. 

Os exemplos deste tópico explicam como usar modelos ao criar uma nova caixa de correio, usando os cmdlets New-Mailbox e Set-Mailbox. No entanto, você pode usar modelos com muitos cmdlets. Embora os requisitos específicos de cada cmdlet possam ser diferentes, use modelos da mesma forma para todos os cmdlets.

Por que os modelos são úteis?

No Microsoft Exchange Server 2007, você pode usar o Shell de Gerenciamento do Exchange para administrar objetos, como caixas de correio, conectores de envio e diretivas de listas de endereços de email. Esses objetos podem conter muitas propriedades que você pode configurar. Os exemplos de propriedades que podem ser configuradas por um administrador são as propriedades que determinam um atributo personalizado condicional em uma diretiva de lista de endereço de email, quer seja um domínio remoto que permite respostas automáticas para a Internet e roteamento DNS habilitado em um Conector de envio.

Se você quiser criar novos objetos com base na configuração de um objeto existente, você pode usar modelos. Quando você usa um modelo para criar um novo objeto, o Shell de Gerenciamento do Exchange não consegue clonar as propriedades que são necessárias e aquelas que precisam ser exclusivas. Portanto, você precisa especificar as propriedades necessárias e as propriedades que precisam ser exclusivas no momento da criação do novo objeto.

Vejamos como usar um modelo para economizar tempo quando quiser criar 100 caixas de correio com a seguinte configuração personalizada:

Propriedade Valor personalizado

RetainDeletedItemsFor

30.00:00:00

ProhibitSendQuota

1GB

ProhibitSendReceiveQuota

1500MB

IssueWarningQuota

750MB

UseDatabaseQuotaDefaults

$False

UseDatabaseRetentionDefaults

$False

As propriedades nesta tabela são exemplos das propriedades que você pode definir nas caixas de correio usando o Shell de Gerenciamento do Exchange. Quando você cria uma nova caixa de correio usando o cmdlet New-Mailbox, não é possível configurar essas propriedades. Para configurar as propriedades, você precisa usar o cmdlet Set-Mailbox. Sem modelos, você precisaria criar cada nova caixa de correio e, em seguida, configurar suas propriedades. Com os modelos, você pode criar uma caixa de correio e configurar as respectivas propriedades, usando o cmdlet Set-Mailbox. Em seguida, você pode usar a primeira caixa de correio como um modelo e criar o restante das caixas de correio usando esse modelo.

Dica

Você também poderia usar o pipelining para passar o novo objeto da caixa de correio do cmdlet New-Mailbox para o cmdlet Set-Mailbox. O cmdlet Set-Mailbox permite que você defina as propriedades da nova caixa de correio. A vantagem de usar modelos é que você pode usar um objeto existente que é configurado exatamente da mesma forma que você deseja configurar novos objetos. Quando você usar um objeto existente, certifique-se de manter uma configuração consistente nesses objetos.
Para obter mais informações sobre pipeline, consulte Pipelining.

Como o Shell de Gerenciamento do Exchange implementa os modelos?

O Shell de Gerenciamento do Exchange permite que você use modelos ao oferecer suporte ao parâmetro TemplateInstance em muitos cmdlets que tenham os verbos Novo, Adicionar e Habilitar. O parâmetro TemplateInstance aceita um objeto que é do mesmo tipo que o objeto que você está tentando criar. Por exemplo, se você deseja criar um nova caixa de correio usando o cmdlet New-Mailbox, precisa fornecer um objeto de caixa de correio ao parãmetro TemplateInstance. Para obter mais informações sobre cmdlets, consulte Compreendendo cmdlets. Para obter mais informações sobre objetos, consulte Dados estruturados.

Dica

Você pode criar destinatários, como caixas de correio ou usuários habilitados para correio, que sejam dedicados em atuar como modelos. Para obter mais informações sobre como proteger esses modelos de destinatários dedicados, consulte Como proteger modelos de destinatários.

Quando você executar um cmdlet com o parâmetro TemplateInstance, o cmdlet combina a configuração recuperada do objeto especificado no parâmetro TemplateInstance com os valores especificados nos parâmetros necessários do cmdlet. A configuração combinada é utilizada para criar o novo objeto. Você não pode configurar os valores em um parâmetro necessário usando o parâmetro TemplateInstance.

Dica

Se você especificar um parâmetro e seu valor quando executar um cmdlet, o valor que você especificar com esse parâmetro substitui o valor configurado no objeto do modelo.

Para usar um objeto como um modelo, você deve primeiro criar o objeto e, em seguida, configurar suas propriedades. Depois de ter configurado o objeto, você pode então criar objetos adicionais usando esse objeto configurado previamente como um modelo. Por exemplo, se você quiser criar uma nova caixa de correio com a configuração apresentada na tabela na seção anterior, deverá criar a caixa de correio com o cmdlet New-Mailbox e, em seguida, usar o cmdlet Set-Mailbox para configurar as propriedades do objeto da caixa de correio como no exemplo a seguir:

$Password = ConvertTo-SecureString Pass@word1 -AsPlainText -Force
New-Mailbox -Name "Kim Akers" -Database "Mailbox Database" -UserPrincipalName kim@contoso.com -Password $Password
Set-Mailbox "Kim Akers" -RetainDeletedItemsFor 30.00:00:00 -ProhibitSendQuota 1GB -ProhibitSendReceiveQuota 1500MB -IssueWarningQuota 750MB -UseDatabaseQuotaDefaults $False -UseDatabaseRetentionDefaults $False

Para obter mais informações sobre como gerenciar caixas de correio, consulte Gerenciando caixas de correio de usuário.

Depois de ter criado e configurado um objeto da caixa de correio que deseja usar como um modelo, você pode criar objetos adicionais da caixa de correio com a mesma configuração. Você deve primeiro atribuir o objeto da caixa de correio que deseja usar como um modelo a uma variável, como no exemplo a seguir:

$Template = Get-Mailbox "Kim Akers"

Não importa qual é o nome da variável. Para obter mais informações sobre as variáveis, consulte Variáveis definidas pelo usuário.

Agora que você selecionou um objeto da caixa de correio para usar como modelo, você pode criar uma nova caixa de correio usando esse modelo, como no exemplo a seguir:

$Password = ConvertTo-SecureString Pass@word1 -AsPlainText -Force
New-Mailbox -Name "David Simpson" -Database "Mailbox Database" -UserPrincipalName david@contoso.com -Password $Password -TemplateInstance $Template

Depois de criar a nova caixa de correio, você pode usar o comando a seguir para exibir as propriedades do objeto da caixa de correio configuradas usando o modelo, a fim de verificar se foram definidas corretamente:

Get-Mailbox "David Simpson" | Format-List Name, ProhibitSendQuota, ProhibitSendReceiveQuota, IssueWarningQuota, UseDatabaseQuotaDefaults, UseDatabaseRetentionDefaults, RetainDeletedItemsFor

Name                         : David Simpson
ProhibitSendQuota            : 1GB
ProhibitSendReceiveQuota     : 1500MB
IssueWarningQuota            : 750MB
UseDatabaseQuotaDefaults     : False
UseDatabaseRetentionDefaults : False
RetainDeletedItemsFor        : 30.00:00:00

Para obter mais informações sobre o cmdlet Format-List, consulte Trabalhando com saída do comando.

Como usar modelos quando quiser criar vários objetos

Os modelos são muito úteis quando você quiser criar muitos objetos ao mesmo tempo. Por exemplo, você pode querer criar caixas de correio para cada usuário que esteja relacionado em um arquivo CSV (valores separados por vírgulas) e aplicar a mesma configuração em todas as novas caixas de correio. Ao usar o cmdlet Import-CSV e cmdlet ForEach, você pode ler os dados do arquivo CSV e, em seguida, criar uma caixa de correio para cada usuário que esteja relacionado no arquivo. Por exemplo, suponha que você queira criar novas caixas de correio para os usuários no arquivo CSV a seguir e aplicar as propriedades do objeto da caixa de correio, que estão configuradas no objeto da caixa de correio de Kim Akers. O arquivo CSV, Users.csv, contém as seguintes informações:

Name,UPN,MailboxDatabase
Adam Bar,adam@contoso.com,Sales
Mike Ray,mike@contoso.com,Sales
Angela Barbariol,angela@contoso.com,Marketing
Chris Barry,chris@contoso.com,Marketing
Sanjay Jacob,sanjay@contoso.com,Marketing

Primeiro, atribua o objeto da caixa de correio que contém as configurações que deseja usar com o modelo, como no exemplo a seguir:

$Template = Get-Mailbox "Kim Akers"

Em seguida, você pode criar as caixas de correio usando os cmdlets Import-CSV e ForEach:

$Password = ConvertTo-SecureString Pass@word1 -AsPlainText -Force
Import-CSV C:\Users.CSV | ForEach { New-Mailbox -Name $_.Name -UserPrincipalName $_.UPN -Database $_.MailboxDatabase -Password $Password -Template $Template }

Para obter mais informações sobre o cmdlet ForEach e sobre como adicionar vários destinatários, consulte os seguintes tópicos: