私は自分のウェブサイトのAPIサービスに取り組んでいます。私はこのトピックについて多くのことを読んだことがありますが、私にとって最善の解決策がどれかを判断することはできません。APIを保護する必要はありますか?
私のAPIは単純です。各ユーザーはAPIキー()、各アプリ(私のサイトに接続する)を取得します。 のみ2異なる呼び出しがありますは、ATM:
- SEND_DATA
- get_data
get_dataは、あなたのミニアプリに新しいエントリを終了することができますSEND_DATAで、静かな無害です。コールには制限がありますが、セキュリティ上の問題が発生する可能性があります。データが間違っている場合、そのデータは役に立ちません。サーバー側の私は
の呼び出しは、このようなものですSQLインジェクションなどのために保護されています: http://example.com/api/?call=send_data&data=DATAXYZ&api_key=KEY
プロ:
- それは
コンを使用するように、超簡単です。
- 安全でない
私は多くの類似の質問をここや他の場所で多く読んでおり、OAuthはそれらのほとんどすべてについて可能な答えとしてポップアップしています。私はOAuthを知っています。ユーザーにとって使いやすいものには、オーバーヘッドがたくさんあると思います。
として、いつもの許可を使用する必要がないです。この記事で説明: http://blog.apigee.com/detail/do_you_need_api_keys_api_identity_vs._authorization/
は、私の場合のために、すべての真あまりにもかかわらず、このですかあなたはまだまたはOAuthをせずに認証をお勧めしますか?
回答と提案をありがとう!いいえ?それはあまりにも悪いです。これにより、システムにまだ精通していないユーザーにとっては、APIがより複雑なものになります。 アイデアは、私はAPIに接続する自分のアプリケーションを持っているが、他の開発者がいるということです。アプリやスクリプトを作成することもできます。だから私はHTTPSを避ける方法がないと思う。 – bottleboot
プレーンHTTP経由でGETリクエストを送信することは、(リンクした記事が指摘しているように)ユーザーあたりのおおよそのリクエスト数を制御したい場合は問題ありません。物事が変わるユーザーがコンテンツを投稿できるとき。とにかく、POST要求を送信するのはGET要求を送信するよりも難しくないと思うし、データを送信するときに意味的に正しいと思う。 HTTPSに関しては、あなたが盗聴を心配している場合は避けられないと思うし、セキュリティ保護されていないかWEPで保護されたWIFIを盗聴するのは専門家を必要としない;) – serans
助けてくれてありがとう! – bottleboot