tableau / server-client-python

A Python library for the Tableau Server REST API
https://tableau.github.io/server-client-python/
MIT License
648 stars 416 forks source link

Jorwoods/combining permissionsrules #1381

Closed jorwoods closed 1 month ago

jorwoods commented 1 month ago

This allows for combining PermissionRules if the grantee type and id matches. The user of TSC can bitwise or | two or more rules together to keep the most permissive of rules. The user can bitwise and & them together to keep the most restrictive of rules.

Incidentally also adds the ability to check if two ReferenceItems are equal.

Allow | Allow = Allow Allow | None = Allow Allow | Deny = Allow None | Deny = None Deny | Deny = Deny

Allow & Allow = Allow Allow & None = None Allow & Deny = Deny None & Deny = Deny Deny & Deny = Deny