Для выполнения операций с зашифрованными файлами, включая шифрование файлов, расшифровку, создание, редактирование и совместное использование, Р7 использует индивидуальные учетные данные пользователей (пара ключей RSA) и пароль документа (ключ шифрования документа). Процессы загрузки и обмена зашифрованными файлами описаны здесь.
Загрузка зашифрованных документов
Чтобы загрузить зашифрованные файлы в настольном приложении, замените стандартный вызов input type = file на функцию cloudCryptoCommand с типом загрузки. Объект params имеет следующие значения:
Название | Описание | Тип | Пример |
cryptoEngineId | Определяет идентификатор плагина шифрования.Определяет типы документов, которые могут быть зашифрованы. | строковый | «{FFF0E1EB-13DB-4678-B67D-FF0A41DBBCEF}» |
filter | Defines the document types that can be encrypted. | строковый | «*.docx *.xlsx *.pptx» |
В настоящее время возможно шифрование только форматов OOXML, таких как DOCX, XLSX и PPTX. |
window.AscDesktopEditor.cloudCryptoCommand("upload", {
"cryptoEngineId": "{FFF0E1EB-13DB-4678-B67D-FF0A41DBBCEF}",
"filter": "*.docx *.xlsx *.pptx"
},
callback)
После того, как пользователь выберет файлы, они будут зашифрованы в цикле и переданы в callback:
callback({
"bytes": [...],
"name": "Example Document Title.docx",
"isCrypto": true
})
Чтобы поделиться зашифрованным документом, вызовите функцию cloudCryptoCommand с типом общего доступа. Объект params имеет следующие значения:
Параметры
Название | Описание | Тип | Пример |
cryptoEngineId | Определяет идентификатор плагина шифрования. | строковый | «{FFF0E1EB-13DB-4678-B67D-FF0A41DBBCEF}» |
file | Определяет абсолютный URL-адрес документа. | строковый | «https://example.com/url-to-example-document.docx» |
keys | Определяет пары идентификаторов пользователей и связанных публичных ключей. | массив | [{«userId»:»78e1e841″,»publicKey»:»yyy»}, …] |
window.AscDesktopEditor.cloudCryptoCommand("share",
{
"cryptoEngineId": "{FFF0E1EB-13DB-4678-B67D-FF0A41DBBCEF}",
"file": ["https://example.com/url-to-example-document.docx" ],
"keys":[{"userId":"78e1e841","publicKey":"yyy"}, ...]
},
callback)
Файл загружается десктопным приложением и шифруется. Права доступа к файлу передаются ему ключами. После этого передается в callback:
callback({
"bytes": [...],
"isCrypto": true
})