source: TI12-security/trunk/NDGSecurity/python/ndg_security_server/setup.py @ 7844

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI12-security/trunk/NDGSecurity/python/ndg_security_server/setup.py@7844
Revision 7844, 4.2 KB checked in by pjkersha, 9 years ago (diff)

2.2.0 Release Candidate

  • Includes paster templates for OpenID Provider, SAML Attribute and Authorisation Services and generic templates for securing a WSGI application and for running a complete set of the security services.
  • Property svn:executable set to *
  • Property svn:keywords set to Id
Line 
1#!/usr/bin/env python
2"""Distribution Utilities setup program for NDG Security Server Package
3
4NERC Data Grid Project
5"""
6__author__ = "P J Kershaw"
7__date__ = "24/04/06"
8__copyright__ = "(C) 2009 Science and Technology Facilities Council"
9__license__ = "BSD - see LICENSE file in top-level directory"
10__contact__ = "Philip.Kershaw@stfc.ac.uk"
11__revision__ = '$Id$'
12
13# Bootstrap setuptools if necessary.
14from ez_setup import use_setuptools
15use_setuptools()
16
17from setuptools import setup, find_packages
18
19_entryPoints = """
20    [console_scripts]
21    myproxy-saml-assertion-cert-ext-app=ndg.security.server.myproxy.certificate_extapp.saml_attribute_assertion:CertExtConsoleApp.run
22
23    [paste.app_factory]
24    main=ndg.security.server.pylons.container.config.middleware:make_app
25   
26    [paste.app_install]
27    main=pylons.util:PylonsInstaller
28    [paste.paster_create_template]
29    ndgsecurity_securedapp=ndg.security.server.paster_templates.template:SecuredAppTemplate
30    ndgsecurity_services=ndg.security.server.paster_templates.template:ServicesTemplate
31    ndgsecurity_attribute_service=ndg.security.server.paster_templates.template:AttributeServiceTemplate
32    ndgsecurity_authorisation_service=ndg.security.server.paster_templates.template:AuthorisationServiceTemplate
33    ndgsecurity_openidprovider=ndg.security.server.paster_templates.template:OpenIDProviderTemplate
34"""
35   
36_longDescription = """\
37NDG Security Server-side components package
38
39NDG Security is the security system for the UK Natural Environment Research
40Council funded NERC DataGrid.  NDG Security has been developed to
41provide users with seamless federated access to secured resources across NDG
42participating organisations whilst at the same time providing an underlying
43system which is easy to deploy around organisation's pre-existing systems.
44
45Over the past two years the system has been developed in collaboration with the
46US DoE funded Earth System Grid project for the ESG Federation an infrastructure
47under development in support of CMIP5 (Coupled Model Intercomparison Project
48Phase 5), a framework for a co-ordinated set of climate model experiments
49which will input into the forthcoming 5th IPCC Assessment Report.
50
51NDG and ESG use a common access control architecture.  OpenID and MyProxy are
52used to support single sign on for browser based and HTTP rich client based
53applications respectively.  SAML is used for attribute query and authorisation
54decision interfaces.  NDG Security uses a XACML based policy engine from the
55package ndg_xacml.  NDG Security has been re-engineered to use a filter based
56architecture based on WSGI enabling other Python WSGI based applications to be
57protected in a flexible manner without the need to modify application code.
58"""
59
60setup(
61    name =                      'ndg_security_server',
62    version =                   '2.2.0',
63    description =               'Server side components for running NERC DataGrid '
64                            'Security Services',
65    long_description =          _longDescription,
66    author =                    'Philip Kershaw',
67    author_email =              'Philip.Kershaw@stfc.ac.uk',
68    maintainer =                'Philip Kershaw',
69    maintainer_email =          'Philip.Kershaw@stfc.ac.uk',
70    url =                       'http://proj.badc.rl.ac.uk/ndg/wiki/Security',
71    license =               'BSD - See LICENCE file for details',
72    install_requires =          [   'ndg_security_common',
73                                'Paste',
74                                'WebOb',
75                                'beaker',
76                                'AuthKit',
77                            ],
78    extras_require = {
79        'xacml':  ["ndg_xacml"],
80        'myproxy-saml-assertion-cert-ext-app': ['MyProxyClient']
81    },
82    # Set ndg.security.common dependency
83    dependency_links =      ["http://ndg.nerc.ac.uk/dist"],
84    packages =                      find_packages(),
85    namespace_packages =        ['ndg', 'ndg.security'],
86    include_package_data =  True,
87    package_data = {
88        # See MANIFEST.in for ndg.security.server.paster_templates files
89#        'ndg.security.server.templates.pki': ['*.crt', '*.key'],
90#        'ndg.security.server.templates.pki.ca': ['*.crt'],
91    },
92    entry_points =           _entryPoints,
93    test_suite =                    'ndg.security.test',
94    zip_safe =              False
95)
Note: See TracBrowser for help on using the repository browser.