単一ページのアプリケーションとネイティブモバイルアプリで使用することを目的としたRESTful APIを設計しています。このAPIの一部の呼び出しは、一定期間キャッシュできる公開結果を返します。さらに、許可されていないユーザー(スパイダー)からAPIを保護するためのレート保護が必要です。
Caching:Cloudflare HTTPキャッシュコントロールヘッダーをサポート APIは、GETを介してリクエストされたエンティティごとに、パブリックであるかどうか、およびキャッシュできる期間を決定できます。
DDOS保護:Cloudflareサポートに記事があります バックエンドAPIに対してDDOS保護を無効にすることを推奨 ですが、これは各クライアントが使用されている私のユースケースには適用されませんAPIへのリクエストをほとんど行わないことになっています。ネイティブDDOS保護は、ボットからAPIを保護するための私の要件に実際に適合します。
CloudflareがCaptcha/にサービスを提供しているときにプログラムで検出する方法を知る必要がありますetc. pageこれにより、SPA /モバイルアプリがインテリジェントに反応し、ユーザーをWebビューにリダイレクトして、彼女が「人間らしさ」を示すことができます。
Cloudflareのドキュメントから、DDOSチャレンジが提示されたときにどのHTTPステータスコードが送信されるかは明らかではありません。 Cloudflare DDOS保護をバイパスするためのオープンソース cloudscraper は、CaptchaおよびチャレンジページがHTTPステータス200で配信されることを示しているようです。リクエストを解析するよりも良い方法はありますか? DDOS保護が作動したかどうかを確認するためのボディ
Cloudflare どうやらCookieを使用します は、Captchaを正常に解決した人を記録します。これにより、ネイティブアプリで明らかに複雑さが増します。 チャレンジが解決された後、CloudflareセッションCookieをネイティブアプリに戻す良い方法はありますか?
おそらくこれは高度なCloudflareの使用例の1つですが、これは有望であり、誰かが(Cloudflareまたは別のCDNで)このような経験を持っている場合は喜んで聞いてくれると思います。
Cloudflareは、APIで使用するための ベストプラクティスのリスト を公開しています。
TL; DR、すべてのAPIリクエストにパッチを適用するページルールを設定し、それに次の設定を加えることをお勧めします
はいCloudFlareはDDOS保護に役立ち、いいえAPIのキャッシングとレート制限を実装しません。あなたはそれらを自分で実装するか、そうするフレームワークを使用します。
CloudFlareをプロキシとして使用することにより、APIエンドポイントを保護するために使用できます。 CloudFlareは、ページルールを使用してAPIエンドポイントの設定を微調整できるURLビット全体を保護します。
Example: https://api.example.com/*
キャッシュAPIの場合
Create a page rule like https://api.example.com/*.json
APIを保護する方法は他にもたくさんあります。この回答が役に立ったと思いますか?