from PLC.Method import Method
from PLC.Parameter import Parameter, Mixed
from PLC.Keys import Key, Keys
-from PLC.Auth import PasswordAuth
+from PLC.Auth import Auth
class GetKeys(Method):
"""
roles = ['admin', 'pi', 'user', 'tech']
accepts = [
- PasswordAuth(),
+ Auth(),
[Key.fields['key_id']]
]
def call(self, auth, key_ids = None):
# If we are not admin, make sure to only return our own keys
if 'admin' not in self.caller['roles']:
+ key_ids = set(key_ids).intersection(self.caller['key_ids'])
if not key_ids:
- key_ids = self.caller['key_ids']
- else:
- key_ids = set(self.caller['key_ids']).intersection(key_ids)
-
- keys = Keys(self.api, key_ids).values()
-
- # Turn each key into a real dict
- keys = [dict(key) for key in keys]
-
- return keys
+ return []
+
+ return Keys(self.api, key_ids).values()