summaryrefslogtreecommitdiff
path: root/tools/jwt_producer.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/jwt_producer.py')
-rw-r--r--tools/jwt_producer.py79
1 files changed, 0 insertions, 79 deletions
diff --git a/tools/jwt_producer.py b/tools/jwt_producer.py
deleted file mode 100644
index a024c13..0000000
--- a/tools/jwt_producer.py
+++ /dev/null
@@ -1,79 +0,0 @@
-import getopt
-import sys
-
-import jwt
-
-
-def usage():
- progname = sys.argv[0]
-
- print(f'Usage: {progname} [-p <path>] [-w <value>] [-r <value>]\n' +
- ' -p <path to private key>\n' +
- ' -w <write, comma separated list of domains>\n' +
- ' -r <read, comma separated list of domains>\n' +
- ' -e <print export statement')
- sys.exit(0)
-
-
-def create_token(private_key, write_domains, read_domains):
- write_claim = list()
- read_claim = list()
-
- if write_domains:
- write_claim = write_domains.split(',')
-
- if read_domains:
- read_claim = read_domains.split(',')
-
- payload = {
- 'sub': 'test',
- 'fresh': False,
- 'type': 'access',
- 'write': write_claim,
- 'read': read_claim
- }
-
- with open(private_key, "r") as fd:
- key = fd.read()
-
- return jwt.encode(payload=payload, algorithm='ES256', key=key)
-
-
-if __name__ == '__main__':
- read_domains = None
- write_domains = None
- private_key = None
- export = False
-
- try:
- opts, args = getopt.getopt(sys.argv[1:], 'p:w:r:eh')
- except getopt.GetoptError:
- usage()
-
- for opt, arg in opts:
- if opt == '-p':
- private_key = arg
- elif opt == '-w':
- write_domains = arg
- elif opt == '-r':
- read_domains = arg
- elif opt == '-e':
- export = True
- elif opt == '-h':
- usage()
- else:
- usage()
-
- if not private_key:
- usage()
-
- if not write_domains and not read_domains:
- usage()
-
- token = create_token(private_key, write_domains,
- read_domains)
-
- if export:
- print(f'export JWT_TOKEN={token}')
- else:
- print(f'{token}')