Carbonio CE: хранение пароля ящика аптеки (шифрованно)
Вариант А — пароль ящика хранится обратимо-зашифрованным, чтобы показать заведующему для входа: - Pharmacy.carbonio_password (EncryptedCharField) — шифруется в БД - sync_service при создании ящика генерирует пароль, отдаёт его в Carbonio и сохраняет свою зашифрованную копию; на update-пути пароль не трогается - Пароль виден в админке аптеки (readonly, расшифрованный) — вкладка Carbonio - 2 теста (мок CarbonioService): пароль сохранён, совпадает с отданным в Carbonio, в БД лежит шифртекстом; update не перетирает пароль Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -267,7 +267,7 @@ class PharmacyAdmin(ModelAdmin, ImportExportModelAdmin):
|
||||
'address', 'employees_count_display', 'license_status_display',
|
||||
'is_active', 'created_at', 'updated_at',
|
||||
'carbonio_account_id', 'carbonio_sync_status', 'carbonio_last_sync',
|
||||
'carbonio_sync_error',
|
||||
'carbonio_sync_error', 'carbonio_password',
|
||||
]
|
||||
|
||||
fieldsets = (
|
||||
@@ -309,8 +309,9 @@ class PharmacyAdmin(ModelAdmin, ImportExportModelAdmin):
|
||||
(_('Почта Carbonio'), {
|
||||
'classes': ('tab',),
|
||||
'fields': (
|
||||
'carbonio_sync_enabled', 'carbonio_email', 'carbonio_account_id',
|
||||
'carbonio_sync_status', 'carbonio_last_sync', 'carbonio_sync_error',
|
||||
'carbonio_sync_enabled', 'carbonio_email', 'carbonio_password',
|
||||
'carbonio_account_id', 'carbonio_sync_status', 'carbonio_last_sync',
|
||||
'carbonio_sync_error',
|
||||
),
|
||||
'description': _('Пусто в «Почта Carbonio» — адрес сгенерируется как '
|
||||
'<префикс организации><номер>@домен. Можно задать вручную.'),
|
||||
|
||||
Reference in New Issue
Block a user