Skip to content

Commit a1287be

Browse files
committed
Add get_list_privileges() to InfluxDBClient
This allows library users to get a list of all privileges an InfluxDB user has been granted.
1 parent 765fa0a commit a1287be

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

influxdb/client.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -728,6 +728,28 @@ def revoke_privilege(self, privilege, database, username):
728728
username)
729729
self.query(text)
730730

731+
def get_list_privileges(self, username):
732+
"""Get the list of all privileges granted to given user.
733+
734+
:param username: the username to get privileges of
735+
:type username: str
736+
737+
:returns: all privileges granted to given user
738+
:rtype: list of dictionaries
739+
740+
:Example:
741+
742+
::
743+
744+
>> privileges = client.get_list_privileges('user1')
745+
>> privileges
746+
[{u'privilege': u'WRITE', u'database': u'db1'},
747+
{u'privilege': u'ALL PRIVILEGES', u'database': u'db2'},
748+
{u'privilege': u'NO PRIVILEGES', u'database': u'db3'}]
749+
"""
750+
text = "SHOW GRANTS FOR {0}".format(username)
751+
return list(self.query(text).get_points())
752+
731753
def send_packet(self, packet):
732754
"""Send an UDP packet.
733755

0 commit comments

Comments
 (0)