概念および基本
概念および基本
基本概念の理解
C2C API は、いくつかの重要なテクノロジーに依存しており、ユーザーは、統合プロジェクトを開始する前に、これらのテクノロジーを理解しておく必要があります。この記事の見出しを参照してください。よく知らない用語がある場合は、このガイドを参考にして、知識のギャップに対処してください。特定の概念に関する課題に直面した場合は、当社チームが追加のリソースとサポートを提供することができます。
知っておくべきこと
C2C API と正常に統合させるには、次の基本的な知識が必要です。
TLS/SSL, TCP/IP protocols and networking fundamentals
Implementation of secure HTTPS requests
Authentication and Authorization methodologies
ネットワークの基本と用語集
Frame.io API は、その中核で Frame.io のサーバーとお客様のデバイスやアプリケーションとの通信を実現しますが、そのためにはすべての操作でネットワークでのやり取りが必要です。
サーバーとクライアント間を含めたすべての関係において、明確なコミュニケーションが不可欠です。日常の会話で聞き間違いが発生するのと同様に、コンピューターが情報を交換する際にも類似する問題が存在します。
標準的な通信の問題に対処するだけでなく、機密データを安全に送信できるようにする必要があります。Frame.io は、すべてのサーバー通信で暗号化を必須とし、プロセスに必要なセキュリティ層を追加します。
C2C API を実装する際には、サードパーティのライブラリを使用してネットワークの詳細を処理する場合もあるかもしれません。しかし、ネットワークコンポーネントは実環境でのエラーの原因となる場合が多く、Frame.io のサーバーとやり取りする際には、基盤となるプロセスを理解することが重要です。重要な用語を簡潔にまとめた用語集を以下に示します。
Transmission Control Protocol / Internet Protocol - standardized components and layers that enable global data transfer. For more information, we recommend this accessible, high-level resource.
Transport Layer Security / Secure Socket Layer - while technically different, they’re commonly referenced interchangeably today. TLS represents the evolution of SSL, though the original acronym remains widely used. For more information about TLS, consult this overview.
公開キーと秘密キー
公開キーはロックのように機能し、秘密キーは対応する鍵としての役割を果たします。
次のシナリオを考えてみてください。納品までプライバシーを確保しながら、機密メッセージを同僚に送信したいとします。
まず、同僚に対し、自分たちしか鍵を持っていないロックを送るよう依頼します。
このロックを受け取ったら、それを使用して、コンテナに入れた機密メッセージを保護します。コンテナを扱う誰もがこのロックを見ることはできますが、コンテンツにアクセスするための鍵を持っているのは同僚だけです。承認を受けていないユーザーにとって、メッセージの表示を試みるうえで、ロックには何の価値もありません。鍵なしではあなたでもロック解除はできません。
同僚は、安全なコンテナが届いたら、鍵を使用してコンテンツにアクセスします。
公開鍵と秘密鍵は同じように機能します。公開鍵は広く共有できます。受け取った側はこの鍵を使用してメッセージを暗号化しますが、それを復号できるのは秘密鍵の保持者だけです。秘密鍵が秘密である限り、公開鍵を使用して作成される暗号化されたメッセージは復号できません。
この公開鍵/秘密鍵メカニズムは TLS 機能を基盤としており、安全なプライベートチャンネルを確立しつつ、当事者間のオープンな通信を実現します。
証明書
証明書には、信頼できる認証局によって認証された公開鍵と秘密鍵が含まれています。
認証局が鍵を検証する際には、基本的に鍵の信頼性を保証します。Google などによる公開鍵を受け取った側は、公認の認証局による認証を検証できます。認証されていない鍵は不正の可能性があると見なされ、セキュリティアラートがトリガーされます。
Frame.io の証明書は、Amazon Root CA 1 認証局によって検証されます。これらの証明書は、Certifi ライブラリ(Mozilla や Python Requests ライブラリが使用)などの様々なリソースを通じて入手できます。
実装には、Certifi GitHub リポジトリおよび PEM 証明書バンドルを使用して、api.frame.io への HTTPS 要求を検証することをお勧めします。
A computer that provides or stores information for other computers. When you access Frame.io through a web browser, your browser requests content from Frame.io’s server, which responds accordingly. Every action within Frame.io triggers a communication between your browser and our server, which processes your request and returns appropriate results. When uploading media to Frame.io, you’re sending it to our servers.
A client application requests information from or sends data to a server. When implementing the C2C API, you’ll be developing a C2C client.
Hypertext Transfer Protocol / Secure - operates within the application layer of the TCP/IP model. The difference between HTTP and HTTPS is security—HTTPS incorporates TLS/SSL verification into network communications. HTTP has evolved through various versions, establishing new standards over time. Version 1.1 remains the global standard and should be used for Frame.io API communications.
REST (Representational State Transfer) is a design methodology for developing APIs based on HTTP request-response patterns. REST often serves as shorthand for the general approach of using HTTP for program-to-program interaction—as distinguished from browser-webpage communication—even when the API doesn’t strictly adhere to REST principles.
JavaScript Object Notation - a standardized data exchange format. Though initially developed for JavaScript objects, it has become a universal standard for networked communications. The C2C API delivers responses as JSON data.
Amazon’s Simple Storage Service provides cloud-based data storage solutions. S3 stores Frame.io’s video and audio media, and serves as the destination for integration uploads.
HTTP/S 要求
HTTP は web 閲覧に広く使用されており、ほぼすべての web サイトアドレスの先頭に表記されています。HTTP(Hypertext Transfer Protocol)は、標準化されたコンピューター間通信プロトコルを確立します。
HTTP は、クライアントサーバー間のやり取りのための標準化されたフォームシステムと考えることができ、情報要求やプログラムアプリケーションに必要な政府機関のフォームに類似しています。適切に記入されたフォームがないと、政府機関は要求を処理したり、要求に応答したりすることができません。
HTTP 要求は、すべての Frame.io アプリケーションのやり取りを容易にします。C2C API フレームワーク内では、HTTP の要求タイプは利用可能な機能を表します。
包括的な HTTP の概要については、この情報記事を参照してください。先に進む前に、これらの基本を理解することが不可欠です。HTTP 要求になじみがない場合は、入門資料を確認することをお勧めします。最適な準備を行うために、次の HTTP の概念を理解しておいてください。
- Protocol
- Host
- Port
- Resource
- Headers
- Content-Type/Mimetype
- Request and Response Payloads
- HTTP verb applications: GET, POST, PUT, DELETE, etc.
- Form Data
通常、ネットワークライブラリはリクエストの構築を処理しますが、HTTP/1.1 RFC は必要に応じて参照リソースを提供します。
認証および認可
これらの概念については後で詳しく説明しますが、これらの基本原則を理解することが重要です。
Authentication verifies that requests come from claimed sources. When you log into websites with username/password credentials, you’re authenticating yourself by demonstrating password knowledge. Multi-factor authentication—such as receiving verification codes via text message—represents additional authentication mechanisms.
Authorization confirms permission to perform specific actions. When you add collaborators to Frame.io projects or Google documents, you’re authorizing their access. Frame.io or Google have previously authenticated these users’ identities, enabling you to confidently authorize their participation.
OAuth (Open Authorization) provides a standardized framework for authorization management by integrating with third-party authentication services.
Scopes define the authorized actions available to users. When connecting devices to Frame.io, you’ll request and receive specific scopes that authorize particular operations. For example, the asset_create scope permits asset creation and uploading. Conceptually, scopes function as permission sets.
次のステップ
ご不明な点がございましたら、当社チームまでお問い合わせください。その後、次のガイドセクションにお進みください。お客様の統合作業をサポートできることを楽しみにしています。
技術的な概要については、統合アーキテクチャガイドを参照してださい。
まだの場合は、C2C の実装:セットアップガイドを読んでから先へ進んでください。
認証および承認プロセス中に、access_token の取得が必要になります。