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

Get-QADUser -IncludedProperties 'attribute' returning a different value than if using -IncludeAllProperties

Hello all,

 

I am having some trouble returning a value using Get-QADUser and the -IncludedProperties switch. It seems that there is a difference in the value returned if using the -IncludeAllProperties switch.

In my example this is my difference:

Get-QADUser "domain\user123" -IncludedProperties "edsva-msexch-protocolsettings-owa-enable"

And return:

edsva-msexch-protocolsettings-owa-enable                   : True

 

However, if I run this:

Get-QADUser "domain\user123" -IncludeAllProperties

I return: 

edsva-msexch-protocolsettings-owa-enable                         : False

 

The IncludeAllProperties switch returns the correct value that is stored in ARS while the IncludedProperties returns the incorrect value. Does anyone know why this may be happening? I would like to be able to query an account without using the IncludeAllProperties switch as it takes much longer to gather all of the information.

 

Any help is greatly appreciated!

Jacob

  • Maybe this is silly but neither of your examples include the '-proxy' switch? You cannot read a virtual attribute without it.
  • Furthermore, I've never been convinced that -IncludeAllProperties actually returns all virtual attributes under all circumstances.
  • Yes, I connect before with a Connect-QADService -Proxy and then afterward running the example above. The -IncludeAllProperties actually reflects what is in ARS (False) while when trying to return the one attribute value with -IncludedProperties returns the incorrect value (True). Am I missing some syntax somehow?
  • I have now verified that this is the case for multiple users with these attributes:

    'edsva-msexch-protocolsettings-mapi-enable'
    'edsva-msexch-protocolsettings-imap4-enable'
    'edsva-msexch-protocolsettings-owa-enable'
    'edsva-msexch-protocolsettings-pop3-enable'

    On any user, sorting with -IncludedProperties it will always return a true value.
  • Am curious if you see any difference implementing your code thus:

    $MyARSession = Connect-QADService -Service "arserver" -proxy
    Get-QadUser -Connection $MyARSession -identity JSmith -includedproperties edsva-msexch-protocolsettings-owa-enable
  • With the above syntax:

    $MyARSession = Connect-QADService -Service "arserver" -proxy
    Get-QadUser -Connection $MyARSession -identity domain\JSmith -includedproperties edsva-msexch-protocolsettings-owa-enable

    I still receive:

    edsva-msexch-protocolsettings-owa-enable : True

    When the value is actually False.
  • That's interesting.

    These VAs are calculated values.

    Do you see the same behavior with a static VA?
  • Other VA's such as edsva-msexch-protocolsettings-activesync-enable and edsva-msexch-protocolsettings-uptodatenotifications-enable work just fine when using the filter.
    As far as static VA's what would be a good example that I could provide?
  • I believe that this resource is relevant:

    Title: Cannot return values for virtual attributes starting with "edsva-MsExch-" through PowerShell or Advanced Find
    Solution Number: 195944
    URL: support.oneidentity.com/.../195944

    These are calculated attributes, and are need to be handled a little differently. Try to assign the results of your cmdlet to a PowerShell variable and then examine the values of the variable.

    So, something like this:

    $Results = Get-QADUser "domain\user123" -IncludedProperties "edsva-msexch-protocolsettings-owa-enable" -proxy
    $Results."edsva-msexch-protocolsettings-owa-enable"

  • Hello Terrance,

    I did try as suggested both by you and the referenced article and here are my results:

    $Mbox = Get-QADObject "domain\user123" -IncludedProperties 'edsva-msexch-protocolsettings-owa-enable' -Proxy
    $Mbox.'edsva-msexch-protocolsettings-owa-enable'

    Output:
    True

    $Mbox = Get-QADObject "domain\user123" -IncludeAllProperties -proxy | Select 'edsva-msexch-protocolsettings-owa-enable'
    $Mbox.'edsva-msexch-protocolsettings-owa-enable'

    Output:
    False

    In the article, it seems to be returning a null value which is not the case here. I am getting a value, however it is not the value that should be returned. In my instance, the -IncludedProperties switch is always returning a True value for these attributes:

    'edsva-msexch-protocolsettings-mapi-enable'
    'edsva-msexch-protocolsettings-imap4-enable'
    'edsva-msexch-protocolsettings-owa-enable'
    'edsva-msexch-protocolsettings-pop3-enable'


    This however is not the case with these attributes:

    'edsva-msexch-protocolsettings-uptodatenotifications-enable'
    'edsva-msexch-protocolsettings-activesync-enable'
    'edsva-msexch-protocolsettings-oma-enable'

    These return as intended.

    It seems that the -IncludedProperties switch and the four attributes listed above are not outputting what it should be.