O365 – Ambientes sincronizados sem Exchange e o schema extend
Conforme já discutido em outros artigos, é importante ressaltar que a utilização da ferramenta “adsiedit” para a gerência de objetos do Exchange/Exchange Online não é algo suportado pela Microsoft. Temos um índice de clientes que efetuam o decommission do Exchange On-Premises após a migração para a nuvem e, logo após, solicitam a suportabilidade para a gerência de objetos com o adsiedit – ou até o cenário descrito abaixo. É uma prática que pode ser efetuada por administradores, porém a equipe de suporte não irá atuar em chamados com a utilização de AdsiEdit para o gerenciamento de objetos.
Recomendamos a instalação de ao menos um Exchange Server on-premises para a edição de atributos via Exchange Management Console / Exchange Control Panel.
Alguns clientes possuem necessidades específicas. Pela existência da possibilidade de ambientes híbridos, são poucos os ambientes de Active Directory sincronizado com a nuvem (WAAD) sem Exchange on-premises.
Em cenários que os atributos são sincronizados para a nuvem sem Exchange, apenas os atributos existentes no Active Directory serão sincronizados. O que isso significa?
Para entender melhor, vamos focar em atributos específicos de Exchange. Como podemos ver na lista de atributos sincronizados para o WAAD, alguns são:
Existe um padrão nestes exemplos. Todos iniciam com “MsExch” - foram criados pelo MSExchange. Se o ambiente não possui Exchange, significa que o schema não foi expandido para suportar o Exchange Server e consequentemente estes atributos não existem/não possuem valores.
Ou seja, em um cenário que o schema não foi atualizado para suportar Exchange Server na organização e é sincronizado para a cloud:
a) Source of Authority está apontando para o Active Directory;
b) O Active Directory não possui os atributos necessários para a gerência de objetos Exchange;
c) Quando tentamos editar um atributo de Exchange Online no portal, by design, recebemos o erro abaixo.
“The action ‘Set-DistributionGroup’, can’t be performed on the object ‘Contoso-Group’ because the object is being synchronized from your on-premises organization. This action should be performed on the object in your on-premises organization.
Como o ambiente é sincronizado, os atributos devem ser editados no ambiente on-premises (AD). Isso significa que o schema deve ser atualizado para suportar atributos de Exchange.
O administrador deve então seguir os passos do artigo “Preparar o Active Directory e Domínios” para possuir os atributos de Exchange.
Para administradores mais experientes em implementações, seria o comando “ Setup.exe /PrepareSchema /IacceptExchangeServerLicenseTerms” .
Consequentemente os atributos de Exchange serão adicionados a estrutura de schema do Active Directory. Utilizamos o valor de “rangeUpper” para averiguar a versão de schema:
Imagem: adsiedit validando o ms-Exch-Schema-Version
Confirmamos então que o schema está atualizado com o setup do Exchange 2016. Consequentemente, podemos atualizar os valores solicitados pelos usuários finais (para o cenário de limitar mensagens em groupo para usuários específicos, o atributo authOrig):
Active Directory attribute name | Exchange parameter name | Description | Value |
unauthOrig | RejectMessagesFrom | Messages rejected from (for mailboxes) | Populate with the distinguished name (DN) of the user who should be restricted from sending messages to the mailbox or group. |
RejectMessagesFromSendersOrMembers | |||
authOrig | AcceptMessagesOnlyFrom | Messages accepted from (for mailboxes) | Populate with the DN of the user who should have the permission to send messages to the mailbox or group. |
AcceptMessagesOnlyFromSendersOrMembers | |||
dLMemRejectPerms | RejectMessagesFromDLMembers | Messages rejected from (for distribution groups) | Populate with the DN of the group that should be restricted from sending messages to the mailbox or group. |
dLMemSubmitPerms | AcceptMessagesOnlyFromDLMembers | Messages accepted from (for distribution groups) | Populate with the DN of the group that should have the permission to send messages to the mailbox or group. |
msExchRequireAuthToSendTo | RequireSenderAuthenticationEnabled | Restrict messages from authenticated users only. | Populate with True/False (Boolean value). |
Se o objeto for atualizado no ambiente on-premises após o schema extend e o sync efetuado para a cloud, os atributos serão atualizados.
Um problema comum após o schema update é receber a mensagem de erro abaixo ao tentar editar estes atributos:
"There is no editor registered to handle this attribute type”
Utilize o comando “Set-ADObject” para editar este atributo ( exemplo: Set-ADObject "CN=Marketing,OU=O365-Identity,DC=contoso,DC=local" -add @{authorig="CN=user1,OU=O365-Identity,DC=contoso,DC=local"} ).