This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Automatically Update Proxy Addresses

Hi,

I am looking for a solution that if a certain criteria is met the Proxy Address of that user is updated with 3 SMTP addresses. So the value of the Proxy Address value must be "SMTP:%UPN Prefix%@blabla.com)

Any ideas on how to achieve this?

Thanks.

Sander.

Parents
  • There's a couple of ways you could do this that both involved an ARS workflow:

    The "right" solution will depend on your criteria and how you determine they are met

    Option 1:

    Run a workflow on a schedule that searches for accounts meeting your criteria and performs the update on the discovered accounts.  Such a workflow would include a search activity and script activity that would be called to update the found objects.

    Option 2:

    This assumes that the criteria are met as a result of a change to an object - for example, someone / something updates the primary SMTP address.

    I think this may be more inline with what you want.

    So at a high level you would do the following:

    Create a workflow that is triggered by a User Attribute modification (that's the start condition) - the modified attribute would likely be "mail" but you can choose whatever makes sense.

    The workflow should contain a script activity that, using Add-QADProxyAddress, will add the additional proxy addresses to your user.  Here's how the script could look:

    Function AddNewProxies ($Request)

    {

    # $Request.GUID captures the GUID of the user being modified that triggered the worklow

    $UPNPrefix = $(Get-QADUser -proxy -identity $Request.GUID -includedproperties edsaUPNPrefix).edsaUPNPrefix

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain1.com")

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain2.com")

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain3.com")

    }

    You would save the above as a "policy script" in your ARS script modules then reference it in the script activity you add to your workflow.  The function to call in this example would be "AddNewProxies"

Reply
  • There's a couple of ways you could do this that both involved an ARS workflow:

    The "right" solution will depend on your criteria and how you determine they are met

    Option 1:

    Run a workflow on a schedule that searches for accounts meeting your criteria and performs the update on the discovered accounts.  Such a workflow would include a search activity and script activity that would be called to update the found objects.

    Option 2:

    This assumes that the criteria are met as a result of a change to an object - for example, someone / something updates the primary SMTP address.

    I think this may be more inline with what you want.

    So at a high level you would do the following:

    Create a workflow that is triggered by a User Attribute modification (that's the start condition) - the modified attribute would likely be "mail" but you can choose whatever makes sense.

    The workflow should contain a script activity that, using Add-QADProxyAddress, will add the additional proxy addresses to your user.  Here's how the script could look:

    Function AddNewProxies ($Request)

    {

    # $Request.GUID captures the GUID of the user being modified that triggered the worklow

    $UPNPrefix = $(Get-QADUser -proxy -identity $Request.GUID -includedproperties edsaUPNPrefix).edsaUPNPrefix

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain1.com")

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain2.com")

    Get-QADUser $Request.GUID -dontusedefaultincludedproperties | Add-QADProxyAddress -Address $($UPNPrefix + "@domain3.com")

    }

    You would save the above as a "policy script" in your ARS script modules then reference it in the script activity you add to your workflow.  The function to call in this example would be "AddNewProxies"

Children
No Data