diff options
author | Simo Sorce <simo@redhat.com> | 2014-04-09 14:02:08 -0400 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2014-04-11 17:25:54 -0400 |
commit | 277ed07e8810dbd0adbbf213f56246394753f452 (patch) | |
tree | 49d71aeee0c62417212c72687c5a8afcaed7cf9a /ipsilon/providers/saml2/certs.py | |
parent | 904898b83d90d3d7f83c574b27a79b98a23e3734 (diff) | |
download | ipsilon.git-277ed07e8810dbd0adbbf213f56246394753f452.tar.gz ipsilon.git-277ed07e8810dbd0adbbf213f56246394753f452.tar.xz ipsilon.git-277ed07e8810dbd0adbbf213f56246394753f452.zip |
Move accessory functions to a generic tools module
This will allow to easly share the module with install tools, without the
need to install server side modules in clients
Signed-off-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'ipsilon/providers/saml2/certs.py')
-rwxr-xr-x | ipsilon/providers/saml2/certs.py | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/ipsilon/providers/saml2/certs.py b/ipsilon/providers/saml2/certs.py deleted file mode 100755 index dc08e08..0000000 --- a/ipsilon/providers/saml2/certs.py +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/python -# -# Copyright (C) 2014 Simo Sorce <simo@redhat.com> -# -# see file 'COPYING' for use and warranty information -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -from subprocess import Popen -import os -import string - - -class Certificate(object): - - def __init__(self, path=None): - self.subject = None - self.path = path - self.key = None - self.cert = None - - def generate(self, prefix, subject): - self.key = '%s.key' % prefix - self.cert = '%s.pem' % prefix - self.subject = '/CN=%s' % subject - command = ['openssl', - 'req', '-x509', '-batch', '-days', '1825', - '-newkey', 'rsa:2048', '-nodes', '-subj', self.subject, - '-keyout', os.path.join(self.path, self.key), - '-out', os.path.join(self.path, self.cert)] - proc = Popen(command) - proc.wait() - - def get_cert(self): - if not self.cert: - raise NameError('Invalid certificate name: %s' % self.cert) - with open(os.path.join(self.path, self.cert), 'r') as f: - cert = f.readlines() - - #poor man stripping of BEGIN/END lines - if cert[0] == '-----BEGIN CERTIFICATE-----\n': - cert = cert[1:] - if cert[-1] == '-----END CERTIFICATE-----\n': - cert = cert[:-1] - - return string.join(cert) |