source: fedd/init_abac_authorizer.py @ 353db8c

axis_examplecompt_changesinfo-ops
Last change on this file since 353db8c was 353db8c, checked in by Ted Faber <faber@…>, 13 years ago

Vairous ABAC tweaks, mostly concerned with making key splitting less visible.

  • Property mode set to 100755
File size: 979 bytes
Line 
1#!/usr/local/bin/python
2
3import sys
4
5from optparse import OptionParser
6from federation.authorizer import abac_authorizer
7
8class Parser(OptionParser):
9    def __init__(self):
10        OptionParser.__init__(self, usage='%prog [options]')
11        self.add_option('--cert', dest='cert', help='Identity certificate')
12        self.add_option('--key', dest='key', help='Identity key')
13        self.add_option('--policy', dest='policy', 
14                help='ABAC policy certificates')
15        self.add_option('--dir', dest='out_dir', help='directory to save into')
16
17parser = Parser()
18opts, args = parser.parse_args()
19
20if any([ not x for x in (opts.cert, opts.policy, opts.out_dir)]):
21    parser.print_help()
22    sys.exit(1)
23try:
24    a = abac_authorizer(key=opts.key, me=opts.cert, certs=opts.policy,
25            save=opts.out_dir)
26    a.save(opts.out_dir)
27except EnvironmentError, e:
28    sys.exit("Can't create or write %s: %s" % (e.filename, e.strerror))
29except abac_authorizer.bad_cert, e:
30    sys.exit("Error creating authorizer: %s" % e)
Note: See TracBrowser for help on using the repository browser.