APIを処理するときに、エージェントを識別するためにAPIキーを使用することが一般的になりました。開発者が指定したユーザー名を使用するよりも、それを行うメリットは何ですか?それは単にAPIキーが推測しにくいということですか、それともより深い理由がありますか?
キーを使用する理由はいくつか考えられます。
antony
で、APIキーがantony
の場合は、侵入の途中です。ただし、APIキーがランダムであると、はるかに難しくなります(ポイント1)。このリストはおそらく完全ではありません。
他のユーザーが述べたように、各ユーザーに一意のIDを作成します。
ただし、 具体的にはAWS の場合、「リクエスト認証、AWSAccessKeyId要素は、署名の計算に使用された秘密鍵、および(間接的に)リクエストを行った開発者を識別します。」
私が見たほとんどのシステムでは、APIキーは単に識別手段として機能するだけではありません。通常、認証の手段としても使用されます。
開発者は、作成するすべてのリクエストに対してAPIキーを入力することはありません。キーはおそらくコードまたは構成ファイルのどこかに保存されます。開発者がランダムなAPIキーよりも記憶に残るユーザー名とパスワードの組み合わせを選択できるようにしても意味がありません。
APIキーは、要求を行っているサービスを識別するためのものです。ユーザー名ではなくランダムなキーを渡す方がすべてコンピューターで処理され、同じものを必要とする人々の問題を回避できるので、それらが他の方法である理由は特にありません。ユーザー名。
おそらく、ユーザー名を偽装するように選択できる場合もあります。これは、平均的なユーザーが目にするものではないので、どれほど効果的であるかはわかりませんが、より経験豊富なユーザーがそれに陥らないことを願っていますが、Facebook APIのユーザー名を「FacebookAdmin」にできれば、特に良くない。