この言葉は最近、ほとんどすべてのクロスサービスアプリケーションで見られます。
APIキーとは正確には何で、その用途は何ですか?
また、公開APIキーと秘密APIキーの違いは何ですか。
この言葉は最近、ほとんどすべてのクロスサービスアプリケーションで見られます。
APIキーとは正確には何で、その用途は何ですか?
また、公開APIキーと秘密APIキーの違いは何ですか。
回答:
APIキーが「正確に」何に使用されるかは、それを発行するユーザーと、それが使用されるサービスに大きく依存します。ただし、概して、APIキーは、リクエストの発信元を識別するために、Webサービス(または同様の)リクエストとともに送信される何らかの形式のシークレットトークンに付けられた名前です。鍵を要求コンテンツの一部のダイジェストに含めて、出所をさらに検証し、値の改ざんを防ぐことができます。
通常、リクエストの送信元を明確に特定できる場合、それは認証の形式として機能し、アクセス制御につながる可能性があります。たとえば、リクエストを実行しているユーザーに基づいて、特定のAPIアクションへのアクセスを制限できます。そのようなサービスの販売からお金を稼ぐ企業にとって、それは請求目的でその物を誰が使用しているかを追跡する方法でもあります。さらに、キーをブロックすることで、リクエストの量が多すぎる場合の乱用を部分的に防ぐことができます。
一般に、公開APIキーと秘密APIキーの両方がある場合は、キー自体が、何らかの形式の非対称暗号化または関連するデジタル署名で使用される従来の公開キーと秘密キーのペアであることを示しています。これらは、リクエストのソースを明確に特定し、さらにリクエストのコンテンツを(改ざんに加えて)スヌーピングから保護するためのより安全なテクニックです。
非常に一般的に言えば:
APIキーは単にあなたを識別します。
公開/秘密の区別がある場合、公開鍵は他の人に配布できるものであり、APIからあなたに関する情報のサブセットを取得できます。秘密鍵はユーザー専用であり、すべてのデータへのアクセスを提供します。
多くの人々がAPIキーをセキュリティソリューションとして使用しているようです。一番下の行は次のとおりです。決して御馳走APIキー秘密としてそれはないです。httpsかどうかに関係なく、リクエストを読み取ることができる人は誰でもAPIキーを確認でき、必要な呼び出しを行うことができます。APIキーは、sslで使用する場合でも完全なセキュリティソリューションではないため、「ユーザー」識別子と同じである必要があります。
より適切な説明は、Eugene Osovetskyへのリンクにあります。ほとんどのAPIを使用する場合、なぜキーとシークレットの2種類の認証が必要なのですか。 または、http://nordicapis.com/why-api-keys-are-not-enough/を確認してください
APIキーは、このサービスのユーザーとして承認されたときにこのサービスのユーザーに割り当てられる一意の値です。
サービスは、発行されたすべてのキーを保持し、要求ごとにそれらをチェックします。
サービスは、リクエストで提供されたキーを確認することで、それが有効なキーであるかどうかを確認し、ユーザーにアクセスを許可するかどうかを決定します。
このように考えると、「パブリックAPIキー」は、データベースが検証サーバーへのログインとして使用しているユーザー名に似ています。その場合、「プライベートAPIキー」はパスワードに似ています。この方法を使用するサイト/データベースによって、サイト/データベースの投稿または編集の認証要求を行うために、サードパーティ/検証サーバーでセキュリティが維持されます。
API文字列は、確認サーバーに接続するためのサイト/データベースのログインのURLです。