Il cmdlet per fornire l'abilitazione Send On Behalf su un Distribution Group è: Set-DistributionGroup
Set-DistributionGroup <Distribution_Group> -GrantSendOnBehalfTo <user>
ATTENZIONE! il metodo sopra indicato va a sostituire eventuali altri utenti/gruppi abilitati in send on behalf sulla casella.
Per visualizzare gli utenti/gruppi abilitati in Send on Behalf sul Distribution Group possiamo utilizzare il cmdlet Get-DistributionGroup
Get-DistributionGroup <Distribution_Group> | fl name,grant*
Se vogliamo aggiungere un utente/gruppo a quelli già abilitati dobbiamo procedere in altro modo.
Innanzitutto andiamo a memorizzare i campi del Distribution Group su cui vogliamo delegare un altro utente in send on behalf all'interno di una variabile tramite il seguente comando
$gruppo = Get-DistributionGroup <Distribution_Group>
quindi, in un'altra variabile, andiamo a memorizzare l'utente che vogliamo delegare
$delegati= Get-User <utente>
Nel caso volessimo delegare gli utenti appartenenti ad un gruppo utilizziamo Get-DistributionGroup al posto di Get-User
$delegati = Get-DistributionGroup <Distribution_Group_2>
A questo punto dobbiamo aggiungere al campo GrantSendOnBehalf del primo gruppo di distribuzione, il valore contenuto all'interno del campo DistinguishedName del secondo gruppo/utente in questo modo:
$gruppo.GrantSendOnBehalfTo += $delegati.DistinguishedName
Alla fine non ci resta che settare i permessi SendOnBehalf con il comando
Set-DistributionGroup <Distribution_Group> -GrantSendOnBehalfTo $gruppo.GrantSendOnBehalfTo
Rimuovere i permessi di Send On Behalf su un Distribution Group
Per rimuovere un utente o un gruppo delegato in send on behalf su un Distribution Group dobbiamo procedere in modo analogo a quanto visto precedentemente.
Leggiamo le impostazioni del Distribution Group e memorizziamole all'interno di una variabile
$gruppo = Get-DistributionGroup <Distribution_Group>
ora abbiamo bisogna di individuare il Distinguished Name dell'utente o gruppo a cui vogliamo recovare i permessi. Per farlo utilizziamo il seguente comando
$gruppo.GrantSendOnBehalfTo | fl DistinguishedName
L'output sarà simile al seguente
DistinguishedName : CN=Gruppo_1,OU=Groups,OU=Company,DC=contoso,DC=com
DistinguishedName : CN=Gruppo_2,OU=Groups,OU=Company,DC=contoso,DC=com
Copiamo il DistinguishedName che vogliamo eliminare quindi passiamolo all'istruzione successiva come mostrato di seguito
$gruppo.GrantSendOnBehalfTo -= "CN=Gruppo_2,OU=Groups,OU=Company,DC=contoso,DC=com"
Ora non ci resta che applicare le impostazioni al Distribution Group
Set-DistributionGroup <Distribution_Group> -GrantSendOnBehalfTo $gruppo.GrantSendOnBehalfTo
Se, invece, vogliamo eliminare tutti i permessi send on behalf da un distribution Group, l'operazione è molto più semplice. Basta eseguire il seguente comando:
Set-DistributionGroup <Distribution_Group> -GrantSendOnBehalfTo $null