interdiff.patch
debian/control | ||
---|---|---|
35 | 35 |
python-pyexcel-ods, |
36 | 36 |
python-pyexcel-xls, |
37 | 37 |
python-crypto, |
38 |
python-pycryptodome, |
|
38 | 39 |
python-feedparser, |
39 | 40 |
python-pdfrw, |
40 | 41 |
python-httplib2, |
passerelle/apps/cryptor/migrations/0001_initial.py | ||
---|---|---|
1 | 1 |
# -*- coding: utf-8 -*- |
2 |
# Generated by Django 1.11.18 on 2020-02-21 14:54
|
|
2 |
# Generated by Django 1.11.18 on 2020-03-04 10:25
|
|
3 | 3 |
from __future__ import unicode_literals |
4 | 4 | |
5 | 5 |
from django.db import migrations, models |
... | ... | |
33 | 33 |
('title', models.CharField(max_length=50, verbose_name='Title')), |
34 | 34 |
('slug', models.SlugField(unique=True, verbose_name='Identifier')), |
35 | 35 |
('description', models.TextField(verbose_name='Description')), |
36 |
('public_key', models.TextField(blank=True, validators=[passerelle.apps.cryptor.models.validate_rsa_key], verbose_name='Encrypt RSA public key (PEM format)')), |
|
37 |
('private_key', models.TextField(blank=True, validators=[passerelle.apps.cryptor.models.validate_rsa_key], verbose_name='Decrypt RSA private key (PEM format)')), |
|
36 |
('public_key', models.TextField(blank=True, validators=[passerelle.apps.cryptor.models.validate_rsa_key], verbose_name='Encryption RSA public key (PEM format)')),
|
|
37 |
('private_key', models.TextField(blank=True, validators=[passerelle.apps.cryptor.models.validate_rsa_key], verbose_name='Decryption RSA private key (PEM format)')),
|
|
38 | 38 |
('redirect_url_base', models.URLField(blank=True, help_text='Base URL for redirect, empty for local', max_length=256, verbose_name='Base URL of decrypt system')), |
39 | 39 |
('users', models.ManyToManyField(blank=True, related_name='_cryptor_users_+', related_query_name='+', to='base.ApiUser')), |
40 | 40 |
], |
41 | 41 |
options={ |
42 |
'verbose_name': 'Encryption and Decryption',
|
|
42 |
'verbose_name': 'Encryption / Decryption',
|
|
43 | 43 |
}, |
44 | 44 |
), |
45 | 45 |
migrations.AddField( |
passerelle/apps/cryptor/models.py | ||
---|---|---|
14 | 14 |
# You should have received a copy of the GNU Affero General Public License |
15 | 15 |
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
16 | 16 | |
17 |
import contextlib |
|
18 | 17 |
import base64 |
19 | 18 |
import binascii |
20 | 19 |
import json |
21 | 20 |
import os |
22 |
import tempfile |
|
23 | 21 |
from uuid import uuid4 |
24 | 22 | |
25 | 23 |
from Cryptodome.PublicKey import RSA |
... | ... | |
117 | 115 | |
118 | 116 |
class Cryptor(BaseResource): |
119 | 117 |
public_key = models.TextField(blank=True, |
120 |
verbose_name=_('Encrypt RSA public key (PEM format)'), |
|
118 |
verbose_name=_('Encryption RSA public key (PEM format)'),
|
|
121 | 119 |
validators=[validate_rsa_key]) |
122 | 120 |
private_key = models.TextField(blank=True, |
123 |
verbose_name=_('Decrypt RSA private key (PEM format)'), |
|
121 |
verbose_name=_('Decryption RSA private key (PEM format)'),
|
|
124 | 122 |
validators=[validate_rsa_key]) |
125 | 123 |
redirect_url_base = models.URLField(max_length=256, blank=True, |
126 | 124 |
verbose_name=_('Base URL of decrypt system'), |
... | ... | |
129 | 127 |
category = _('Misc') |
130 | 128 | |
131 | 129 |
class Meta: |
132 |
verbose_name = _('Encrypt / Decrypt')
|
|
130 |
verbose_name = _('Encryption / Decryption')
|
|
133 | 131 | |
134 | 132 |
def get_redirect_url_base_display(self): |
135 | 133 |
if self.redirect_url_base: |
... | ... | |
164 | 162 |
cfile = CryptedFile(resource=self, filename=filename, content_type=content_type) |
165 | 163 |
cfile.save() |
166 | 164 | |
167 |
uuid = str(cfile.uuid) |
|
165 |
uuid = str(cfile.uuid) # get string representation of UUID object
|
|
168 | 166 | |
169 | 167 |
if self.redirect_url_base: |
170 | 168 |
redirect_url_base = self.redirect_url_base |
passerelle/static/css/style.css | ||
---|---|---|
177 | 177 |
content: "\f1b9"; /* car */ |
178 | 178 |
} |
179 | 179 | |
180 |
li.connector.cryptor a::before { |
|
181 |
content: "\f023"; /* lock */ |
|
182 |
} |
|
183 | ||
180 | 184 |
li.connector.status-down span.connector-name::after { |
181 | 185 |
font-family: FontAwesome; |
182 | 186 |
content: "\f00d"; /* times */ |