none
Hide mailbox from Exchange address list RRS feed

  • Question

  • Hello,

    We are synchronizing the users from Oracle MA to FIM, then to AD. Most processing logic is realized by FIM portal.

    I saw  some treads regarding hiding the user from GAL but I can't realize this in FIM (I'm not developer). My goal is to make the code, which sets msExchHideFromAddressLists to:

    • FALSE if EmployeeStatus Mv entry value is 1
    • TRUE if the MV entry has value 0 or does not have the value (there is no CS entry in Oracle MA).

    Questions:

    1. Can I do this via FIM sync rules BITand / BitOr function? If yes, how to construct the function?
    2. If, not can you help to accomplish this via code?

    So I have created the following code, but it does not allow to use mv entry as expression. Also I'm not understand where I must to copy the code (which function must be used).

    Select Case csentry.ObjectType Case "user" If mventry("EmployeeStatus").Value = "1" Then csentry("msExchHideFromAddressLists").BooleanValue = False Else csentry("msExchHideFromAddressLists").BooleanValue = True End If

     Case Else
                    Throw New EntryPointNotImplementedException
            End Select

    Thanks!






               



    • Edited by techcons Sunday, September 29, 2013 4:12 PM
    Sunday, September 29, 2013 4:09 PM

Answers

  • You can do this by SyncRule of course:

    In the AD Sync Rule create the following Outbound Attribute Flow:

    CustomExpression:

    IIF(Eq(EmployeeStatus,"1"),"false","true") => msExchHideFromAddressLists

    If you want use code, place the below code in the AD MAExtension under the ExportAttributeFlow, and create an Advanced Attribute Flow in your MA with the Name of FlowRule.

            Select Case FlowRuleName
    	   Case "update_msExchHideFromAddressLists"
    
                    If mventry("EmployeeStatus").IsPresent AndAlso mventry("EmployeeStatus").Value = "1" Then
                        csentry("msExchHideFromAddressLists").BooleanValue = False
                    Else
                        csentry("msExchHideFromAddressLists").BooleanValue = True
                    End If
    
                Case Else
                     Throw New EntryPointNotImplementedException
            End Select
    Regards

    Peter

    Edit: small mistake in SyncRule, changes false to "false" and true to "true"


    Peter Stapf - Doeres AG - My blog: JustIDM.wordpress.com


    Sunday, September 29, 2013 5:05 PM

All replies

  • You can do this by SyncRule of course:

    In the AD Sync Rule create the following Outbound Attribute Flow:

    CustomExpression:

    IIF(Eq(EmployeeStatus,"1"),"false","true") => msExchHideFromAddressLists

    If you want use code, place the below code in the AD MAExtension under the ExportAttributeFlow, and create an Advanced Attribute Flow in your MA with the Name of FlowRule.

            Select Case FlowRuleName
    	   Case "update_msExchHideFromAddressLists"
    
                    If mventry("EmployeeStatus").IsPresent AndAlso mventry("EmployeeStatus").Value = "1" Then
                        csentry("msExchHideFromAddressLists").BooleanValue = False
                    Else
                        csentry("msExchHideFromAddressLists").BooleanValue = True
                    End If
    
                Case Else
                     Throw New EntryPointNotImplementedException
            End Select
    Regards

    Peter

    Edit: small mistake in SyncRule, changes false to "false" and true to "true"


    Peter Stapf - Doeres AG - My blog: JustIDM.wordpress.com


    Sunday, September 29, 2013 5:05 PM
  • Thank you,

    Tested with FIM Sync rules,  which works.


    • Edited by techcons Tuesday, October 15, 2013 6:56 AM
    Tuesday, October 15, 2013 6:56 AM