SDPの概要
Software Defined Perimeterは、ネットワークを経由した様々な脅威からインフラや情報を守るための機能です。
最近ではクラウドサービス(社外のサービス)等の活用が増え、従来のファイアウォール等を使った境界型セキュリティでは守り切れないものが出てきました。SDPは、上記の課題を解決するもので、「境界線(Perimeter)をソフトウェア上で構築、制御し、アクセス制御に関わる設定を柔軟に動的に変更して安全にデータを転送する」技術です。
SDPでは、ソフトウェアにより、常に動的に相手先のアドレスなどを決定するため、その通信経路を外部侵入者から発見されず、攻撃やデータ漏洩・侵害を防ぐ仕組みを提供します。
https://www.cloudsecurityalliance.jp/site/wp-content/uploads/2018/12/SDP_guide_160408_2.pdf
SDPの構成
SDP は、SDPホストとSDPコントローラで構成されます。SDPのホストには、接続の開始依頼を行うInitiating-SDPホストと接続相手のAccepting-SDPホストがあります。全てのやりとりは、SDPコントローラにて管理され、セキュリティで保護された制御チャネルを介して相互に実施され、「制御する機能」と「データを管理する機能」は分離されています。
SDPの構成要素
SDP コントローラ
SDP コントローラは、認証局、地理認証、外部の認証サーバなどと情報連携を行い、利用者のデバイス認証とID認証を行い、どのSDP ホストと通信を行うかを管理します。
Initiating-SDPホスト
Initiating-SDPホストは、接続の依頼元であり、本人認証、デバイス認証のため、SDP コントローラに接続します。Initiating-SDPホストは、ハードウェア、ソフトウェア等の情報をSDPコントローラに送り、ネットワーク上で識別が可能なIPアドレス等の情報が返信されることを待ちます。
Accepting-SDPホスト
Accepting-SDPホストは、SDPコントローラの要求を受けて接続を許可し、指定されたInitiating-SDPホストからの接続を待ちます。
SDPの動作の流れ
- SDPコントローラがオンラインとなります。
- Accepting-SDPホストは、SDPコントローラとセキュアなVPN 接続を確立します。
- Initiating-SDPホストは、SDPコントローラとセキュアな VPN 接続を確立します。
- SDPコントローラにて、Initiating-SDPホストから送られてきたデバイスと本人情報に基づいて認証を行い、Accepting-SDPホストが存在するかを確認します。
- 接続依頼が正しい場合、SDPコントローラは、Accepting-SDPホストに対して、Initiating-SDPホストからの接続要求を送ります。
- SDPコントローラは、Initiating-SDPホストに対して、アクセスが可能なAccepting-SDPホストのネットワーク情報を送ります。
- Initiating-SDPホストは、アクセスが許可された Accepting-SDP ホストに対して VPN 接続を依頼し、相互にInitiating-SDPホストとAccepting-SDPホストが通信を開始します。(一連の通信が終わり次第、当該の経路はなくなり、新たな接続要求によってのみ接続が再開されます。)
SDPの場合は、通信を開始にするにあたって、まずSDPコントローラに接続し、そこで認証を受けてから通信先にアクセスをするため、事前の認証が強化されており、また、接続先ホストのネットワーク情報は動的に個別に設定されるため、接続先ホストは任意の第3者からのアクセスを受けることはありません。
SDPはBell-LaPadula等と同様、Need to knowの考え方に基づいて考案されており、上記のようにセキュアな動作となります。
SDPのソリューション事例
Pulse Secure SDP
AppGate
Zscaler