upgrade_certificates_subject_field.py
1 |
#!/usr/bin/python
|
---|---|
2 |
# -*- coding: utf-8 -*-
|
3 |
|
4 |
from creole import cert |
5 |
from arv.db.initialize import initialize_database, commit_database, rollback_database |
6 |
from arv.lib.util import bin_encoding, valid |
7 |
from arv.db.edge import * |
8 |
from arv.db.node import * |
9 |
|
10 |
initialize_database() |
11 |
certificates = get_all_credentials() |
12 |
for certif in certificates: |
13 |
subject = cert.get_subject(cert=certif.credential) |
14 |
name = unicode(subject[1], 'utf-8') |
15 |
suffix_cred = subject[0]
|
16 |
suffix_cred = valid(suffix_cred, 'string')
|
17 |
subject = bin_encoding("%s/CN=%s"%(suffix_cred, name))
|
18 |
if subject != certif.subject:
|
19 |
certif.subject = subject |
20 |
|
21 |
commit_database() |