Akamai Diversity
Home > Akamai Japan > Akamai API Protection

Akamai API Protection

APIマネジメント、APIエコノミーなどAPIに関連した言葉をニュースや記事として目にする機会が増えています。Akamaiでも日々Webサイト、動画等々いろいろな種類のトラフィックを配信していますが、APIを利用したトラフィックは非常に大きな割合を占めるようになってきています。現在、Akamai経由で配信しているFQDNのうち約4%でAPIを取り扱っているのですが、実トラフィック量に占める割合は約20%程度となっております。

APIは多くの場合JSONなどのテキストデータになりますので、1リクエストあたりのデータ量は画像等と比べた場合は小さくなりますので、非常に多くのデータが流れていることが想像いただけると思います。

このような中でAkamaiでは重要度を増すAPIのトラフィックに対するユーザ体験を向上させるために大きく以下の5つの機能を提供しています。

  • API Acceleration - 従来から持っているWebの高速化機能をAPIにも適用することにより、APIトラフィックデータをより高速に運ぶ機能の提供
  • API Caching - こちらも従来から持っているWebのキャッシュ機能をAPIにも適用することにより、サーバの負荷低減と高速化を実現
  • API Compression - APIのデータを圧縮しデータサイズを60-90%削減することでAPIトラフィックデータをより高速に運ぶ機能の提供
  • API Prioritization Cloudlet - サーバが高負荷になった場合などに優先度の高いAPIトラフィックをサーバに透過させたり、優先度の低いAPIトラフィックに対して代替レスポンスの実施など行う機能の提供(こちらはCloudletというコンポーネントで提供しています。CloudletについてはBlogサイトをご参照下さい
  • API Protection - JSONやXMLデータのインスペクトやHTTPメソッドの確認、APIリクエストに対するDDoS/流量過多を防ぐためのRate Controlの提供

今回の記事ではKona Site Defenderの新機能であるAPI Protectionについてご紹介いたします。

API Protection

API Protectionは大きく3つの機能/コンポーネントからなる機能です。

  • 201705001.pngAPI Definition:APIデータタイプ、メソッドに対する定義/チェック機能の提供
  • API Enforcement:定義されたAPIに対するセキュリティ機能(WAFによるアタック防御とRate ControlによるDDoS防御)の提供
  • API Analytics:セキュリティ観点でのAPIに対する分析機能の提供

API Definition

API Protectionを利用するためには、API Definition(APIの定義)を行う必要があります。Luna Control CenterからAPI Definitionを選択し、API Definitionの設定画面で設定を行います。

201705002.pngAPI Definitionの画面ではカテゴリやリストの表示の他に新規の定義の作成も行うことが出来ます。

201705003.png新規定義の画面ではAPI定義名やグループ、API Keyの有無などの設定を行うことが出来ます。このAPI定義内に複数のAPIを登録できますが、個々の内容をGUIで都度設定を行うことも可能ですし、SwaggerまたはRAMLからインポートすることが可能です。

201705004.png同じ画面からリクエストの制約(Constraint)を設定ができます。ここではデータのフォーマット形式やサイズなどの制約を行ったり、利用可能なメソッドの定義やパラメータの定義を行うことが出来ます。

201705005.png以上の作業を繰り返し、Kona Site Defenderで保護する必要があるAPI定義の設定を行います。

API Enforcement

APIの定義まで完了したら、セキュリティ機能との関連付け(API Enforcement)を行ないます。

201705006.png現在API Protectionで利用できる機能は以下のとおりです。

  • Application Layer - WAF機能。Kona Site Defenderが持つKona Rule Setがそのまま利用可能です。SQL InjectionやCross Site ScriptingなどのLayer 7層への攻撃に対する防御機能を提供
  • Network Layer - Whitelist/Blacklstを利用した防御機能。地域(Geo)情報を利用したアクセス制限やTORなどのネットワークからのアクセスに対する防御機能を提供
  • Rate Control - DDoS対策を実現する機能。設定されたしきい値を超過した場合にリクエスト元を遮断する機能などを提供
  • Slow Post Prevention - リクエストパケットをゆっくり送ることでサーバ側のリソースを枯渇させる攻撃に対する防御機能を提供
  • API Request Constraints - API Definitionで設定するリクエスト制限機能
  • TLS Secured - トランスポート層の保護機能(TLS)

Rate ControlはAPI Protectionにおける拡張として従来のクライアントIPベースのカウントからAPI Keyをベースにしたカウントができるように機能拡張がされています。カウントするAPI KeyはAPI Definitionの設定内容がそのまま反映されます。

201705007.png

API Analytics

API Definitionで定義を行ない、API Enforcementでセキュリティ設定との関連付けが完了したら、実トラフィックに対して防御できる状態になります。APIに対するトラフィックがWAFのルールや、Rate Control、Slow Postにより検知されます。Kona Side Defenderではこれらの状態を確認するためのダッシュボードとしてSecurity Centerを提供しています。

201705008.pngSecurity Centerでは主に全体の概観を把握するためのDashboard機能と、より詳細な内容の確認や分析を行うためのReport機能の2つが提供されています。API Protectionを利用する場合はReport機能としてApplication Security Activity ReportとDoS Activity Reportsが提供されます。それぞれ、Web Application Firewallを主とする検知内容の確認と、Rate Controlを主とする検知内容の確認を行うことが出来ます。
201705009.pngReportの中ではどのPATHに対して検知/遮断されたか、という情報とともにリクエストがどの国または地域から発生しているか、等の確認も行うことが出来ます。個々から得られた情報などを元に分析を行い、必要に応じてWAFのルールやRate Controlの見直しなどを行ない、適正に防御されている状態を保つ必要があります。

Security Centerからの非常に多くの情報を確認することが出来ますが、Akamaiでは情報の分析や変更内容の推奨、そして実際の設定の変更を行うサービスも提供しています。API Protectionの利用に際してはこのサービスを併せて利用されることを推奨します。

API Protectionが提供する価値

冒頭に述べましたようにAPIのトラフィックは非常に増えており、流れるデータの内容も重要なものが今後増えていく一方なのではないかと考えます。一方でWebサイトと異なり、APIについてはどのように守るべきかという点においてはあまり考慮されていないケースが見られます。

201705010.pngこれは元々APIがスモールスタートで始まったことに起因することもあるでしょうし、APIがWebとは別に開発されることによりプロセスが異なったため、意図せずなっていることもあるでしょう。いずれの場合でも、またはそれ以外の場合においても、APIについて適切な保護機能を備えていく必要性があることは論をまたないと考えます。

201705011.pngKona Site Defender API Protectionはこのような背景を元に開発され、提供されているものです。Kona Site Defenderの拡張機能として提供されるため、すでにKona Site Defenderを利用されているユーザ様は原則として追加費用やオプションの契約なしに利用することが可能となります。WebとAPIに共通の保護機能を提供することでセキュリティレベルの一元的な、管理、分析、監視が可能となります。APIの増加の一方で、すぐにはWebが無くなるわけではありませんので、このようなセキュリティレベルの統一化というのは大きな価値があるものと考えます。現在Kona Site Defenderをご利用のお客様でAPIを利用している、または利用予定のあるお客様は是非API Protectionのご利用をご検討いただければ幸いです。

Kona Site Defenderでは今回ご紹介したAPI Protection以外にも今後も機能が追加されていく予定です。もちろん既存機能の強化も継続して実施されていきます。今後の展開にご期待下さい。

Leave a comment