fabbricadigitale / scimd

SCIM v2 golang implementation
MIT License
5 stars 1 forks source link

Subattributes of a complex excludedAttribute aren't excluded #51

Closed alelb closed 6 years ago

alelb commented 6 years ago

Because the attributes are flattened the subattributes of a complex excludedAttribute cannot be differentiated, so they remain in the resulting set (ref).

GET \v2\User\...excludedAttributes=urn:something:User:name

included/default attributes urn:something:User:name urn:something:User:name.familyName urn:something:User:email.value

excluded attributes urn:something:User:name

resulting set = included/default attributes - excluded attributes urn:something:User:name.familyName urn:something:User:email.value

leogr commented 6 years ago

By 613f229 this issue cannot be fixed as described above.

cc @leodido @alelb @samechelon won't fix?

leodido commented 6 years ago

To me we can leave it as is now - ie., not supporting the exclusion of entire complex attributes.

For future reference.

We should use a TreeMap data structure defining the ordering with want through a comparator.

Thus assuring that, when a complex attribute (the parent) is specified it will always be in a previous position with respect to their children.

This way mongo projection and so its results will be predicatable.

leodido commented 6 years ago

Postponing to a future release.