Концепции и основы
Понимание основных концепций
API-интерфейс C2C основан на нескольких важных технологиях, о которых следует знать перед началом проекта интеграции. Ознакомьтесь с заголовками в этой статье — если какие-либо термины вам незнакомы, это руководство поможет устранить пробелы в знаниях. Если у вас возникнут трудности с определенными концепциями, наша команда готова предоставить дополнительные ресурсы и поддержку.
Что нужно знать
Для интеграции с API-интерфейсом C2C у вас должно быть базовое понимание следующего:
Основы работы сетей и глоссарий
По сути, API-интерфейс Frame.io обеспечивает связь между серверами Frame.io и вашим устройством или приложением, требуя сетевых взаимодействий для каждой операции.
Четкая коммуникация важна в любых связях, включая взаимодействие между серверами и клиентами. Подобно недопониманию, возникающему в повседневном общении, появляются и проблемы при обмене информацией между компьютерами.
Помимо решения стандартных проблем коммуникации, нам нужно обеспечить безопасную передачу конфиденциальных данных. Frame.io требует шифрования для всех серверных коммуникаций, добавляя в процесс необходимые уровни безопасности.
При реализации API-интерфейс C2C вы, скорее всего, будете использовать сторонние библиотеки для обработки сетевых сведений. Однако, поскольку сетевые компоненты часто генерируют реальные ошибки, важно знать об основных процессах при взаимодействии с серверами Frame.io. Краткий глоссарий важных терминов:
Открытые и закрытые ключи
Открытый ключ работает как замок, а закрытый ключ служит соответствующим ключом.
Представьте такую ситуацию: вы хотите отправить конфиденциальное сообщение коллеге, обеспечив его безопасность до момента доставки.
Сначала попросите коллегу прислать вам замок, ключ от которого есть только у него.
Получив этот замок, поместите конфиденциальное сообщение в контейнер и заприте его. Хотя любой, кто берет в руки контейнер, может увидеть замок, только у вашего коллеги есть ключ для доступа к содержимому. Замок не представляет никакой ценности для посторонних лиц, пытающихся прочитать сообщение. Даже вы не сможете открыть его без ключа.
Когда коллега получает защищенный контейнер, он просто использует свой ключ для доступа к содержимому.
Открытые и закрытые ключи работают точно так же. Открытым ключом можно свободно делиться. Получатели шифруют сообщения этим ключом, но только владелец закрытого ключа может расшифровать эти сообщения. Пока закрытый ключ остается конфиденциальным, открытый ключ нельзя использовать для расшифровки созданных им зашифрованных сообщений.
Этот механизм открытых и закрытых ключей лежит в основе функционала TLS, позволяя сторонам открыто осуществлять коммуникацию и при этом устанавливать безопасные частные каналы связи.
Сертификаты
Сертификаты содержат открытые и закрытые ключи, аутентифицированные доверенными центрами сертификации.
Когда центр сертификации подтверждает ключ, он ручается за его подлинность. Получатели открытого ключа, например от Google, могут проверить это подтверждение от признанных центров сертификации. Неподтвержденные ключи считаются потенциально мошенническими и приводят к отображению предупреждения безопасности.
Сертификаты Frame.io проходят проверку центром сертификации Amazon Root CA 1. Эти сертификаты доступны в различных ресурсах, включая библиотеку Certifi (используется Mozilla и библиотекой Python Requests).
Для реализации мы рекомендуем репозиторий Certifi на GitHub и PEM-пакет сертификатов для проверки запросов HTTPS к api.frame.io.
Запросы HTTP/S
HTTP повсеместно используется при просмотре веб-страниц — отображается в начале почти каждого адреса веб-сайта. HTTP (Hypertext Transfer Protocol) устанавливает стандартизированные протоколы связи между компьютерами.
HTTP можно представить как стандартизированную систему форм для взаимодействия клиент–сервер, аналогично государственным формам, необходимым для информационных запросов или заявок на программы. Без правильно заполненных форм государственные учреждения не могут обрабатывать запросы или отвечать на них.
Запросы HTTP обеспечивают все взаимодействия приложения Frame.io. В рамках системы API-интерфейса C2C типы запросов HTTP представляют доступные функциональные возможности.
Для получения полного обзора HTTP см. эту информативную статью. Понимание этих основ необходимо перед началом работы. Если вы еще не работали с запросами HTTP, можно ознакомиться с вводными материалами. Для оптимальной подготовки ознакомьтесь с этими концепциями HTTP:
Хотя сетевые библиотеки обычно обрабатывают создание запросов, HTTP/1.1 RFC предоставляет справочный ресурс при необходимости.
Аутентификация и авторизация
Мы изучим эти концепции более подробно позже, но понимание этих основополагающих принципов важно:
Дальнейшие шаги
Рекомендуем обращаться к нашей команде по любым вопросам, после чего перейти к следующему разделу руководства. Мы с удовольствием поможем вам в освоении процессов интеграций.
Если требуется технический обзор, см. руководство по архитектуре интеграции. Если вы еще не сделали этого, просмотрите руководство Реализация C2C: настройка перед продолжением. Вам понадобится access_token, полученный в процессе аутентификации и авторизации.