JP2020522768A - カテゴリ指向パーサを用いたデータ損失防止 - Google Patents

カテゴリ指向パーサを用いたデータ損失防止 Download PDF

Info

Publication number
JP2020522768A
JP2020522768A JP2019537825A JP2019537825A JP2020522768A JP 2020522768 A JP2020522768 A JP 2020522768A JP 2019537825 A JP2019537825 A JP 2019537825A JP 2019537825 A JP2019537825 A JP 2019537825A JP 2020522768 A JP2020522768 A JP 2020522768A
Authority
JP
Japan
Prior art keywords
category
parser
cloud
api
oriented
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019537825A
Other languages
English (en)
Other versions
JP6740482B2 (ja
Inventor
レビン チェン,
レビン チェン,
クリシュナ ナラヤナスワミー,
クリシュナ ナラヤナスワミー,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netskope Inc
Original Assignee
Netskope Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netskope Inc filed Critical Netskope Inc
Publication of JP2020522768A publication Critical patent/JP2020522768A/ja
Application granted granted Critical
Publication of JP6740482B2 publication Critical patent/JP6740482B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/088Access security using filters or firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【解決手段】開示技術は、サービス固有のパーサが利用可能でないクラウドベースのサービスにデータ損失防止(DLP)を適用するシステムを含む。システムは、既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(API)を介してアクセスされ、アクセスされているAPIに対してサービス固有のパーサが利用可能でないことを判定する。システムは、アクセスされているAPIに対してカテゴリ指向パーサを適用する。カテゴリ指向パーサは、或るカテゴリのサービスを実施する、多くの既知のプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含む。カテゴリ指向パーサは、APIを介して伝達されるコンテンツからメタデータを収集し、収集されたメタデータを変数に割り当てる。システムは、DLPプロセッサを起動し、収集されたメタデータを、APIを介して伝達されるコンテンツの分析に集中するためのDLPプロセッサに送信する。【選択図】 図1

Description

優先権主張
本出願は、2018年5月22日出願の「カテゴリ指向パーサを用いたデータ損失防止」と題する米国特許出願第15/986,732号(代理人事件整理番号:NSKO 1011−1)の利益を主張する。
合体資料
以下の資料は、ここに完全に記載されているかの如く、参照により組み込まれる。
2014年3月5日出願の「ネットワーク配信サービス用セキュリティ」と題する米国特許出願第14/198,499号(代理人事件整理番号:NSKO 1000−2)(現在は2016年7月19日発行の米国特許第9,398,102号)。
2015年8月25日出願の「クラウドコンピューティングサービス(CCS)に格納された企業情報を監視及び制御するシステム及び方法」と題する米国特許出願第14/835,640号(代理人事件整理番号:NSKO 1001−2)(現在は2018年3月27日発行の米国特許第9,928,377号)。
2016年12月2日出願の「クラウド・コンピューティング・サービスのデータ欠損トランザクションにおいてマルチパート・ポリシーを実施するシステム及び方法」と題する米国特許出願第15/368,240号(代理人事件整理番号:NSKO 1003−2)。
2018年5月22日出願の「カテゴリ指向パーサを用いたデータ損失防止」と題する米国特許出願第15/986,732号(代理人事件整理番号:NSKO 1011−1)。
開示される技術は、サービス固有のパーサが利用可能でないクラウドベースのサービスにデータ損失防止を適用することに関する。
本セクションで議論される主題は、本セクションにおけるその言及の結果、単に従来技術であると仮定すべきではない。同様に、本セクションで述べた問題または背景技術として提供された主題に関連する問題は、従来技術内で既に認識されたものと仮定すべきではない。本セクションの主題は単に様々なアプローチを示しているに過ぎず、また、それ自体または自発的に、請求項に記載の技術の実施に対応し得る。
現在、多くの企業機能のためにクラウドベースのサービスを使用することが一般的である。従って、顧客関係管理(CRM)ソフトウェア製品を実行するために企業ネットワーク内にサーバをインストールする代わりに、Salesforce.comの提供物等のソフトウェア・アズ・ア・サービス(SaaS)ソリューションを使用することができる。古典的なソリューションへのアクセスを記録し、保護することができる情報技術(IT)及びネットワーク・アーキテクチャのアプローチは、制限された制御を提供する。
データは、多くの場合、あらゆるビジネスの源泉であり、それが効果的に管理され、保護され、コンプライアンスの必要性を満たすことが重要である。過去のデータの保護は、主にオンプレミス・シナリオに焦点を当てていたが、現在、クラウドベースのサービスの採用が増加するにつれて、全てのサイズの企業は、現在、データの作成、編集、及び格納をクラウドに依存している。これは、新しい課題を提示する。クラウドは、その利点にも拘わらず、企業の機密データが容易に失われる。一つの理由として、複数のデバイスからクラウドサービスにより容易にアクセスできる点がある。他の理由として、クラウドサービスは、組織外の人々を含めて、データ共有が容易に行える点がある。これらの理由から、データが組織の制御から容易に逸脱し得る。
また、クラウドベースのサービスの数が指数関数的に増加するにつれて、数百の方法でデータが漏洩する可能性がある。異なるクラウドベースのサービスは、異なるサービスをユーザに提供する。例えば、CRMクラウドベースのサービスを使用して、従業員は、アカウントを管理し、機会を見て、レポートを生成することができる。適切な資格認定を用いて、従業員は、生成されたレポートをダウンロードし、クラウドベースのストレージ・サービスに格納することができる。従業員は、ダウンロードされたレポート及び他の企業文書を、組織外の人々と共有することができる。従業員は、メール送信中に間違ったファイルを添付したり、送信ボタンの押下が早過ぎたり、締め切りに急いでいる時に注意を払わなかったり、または、組織外の人々とデータを共有したり協力したりする可能性がある。
例えば、知的財産、非公開の財務情報、戦略的計画、顧客リスト、顧客または従業員に属する個人を特定可能な情報等の機密情報を保護するために、企業ネットワークを含む、複数の装置、ネットワークサービス、及びネットワークに亘って同じポリシーを実施する等、一貫した集中管理された制御を提供する機会が生じる。
図面において、同様の参照符号は一般的に異なる図を通して同様の部品を指す。また、図面は必ずしも一定の縮尺ではなく、代わりに、開示された技術の原理を図解することに一般的に重点が置かれている。以下の説明では、開示された技術の様々な実施態様が、以下の図面を参照して説明される。
インライン・プロキシが、企業ネットワークのユーザとクラウドベースのサービスとの間のネットワーク・トラフィックをモニタ及び解析して、データ損失を防止する、システムのアーキテクチャ・レベルの概略図を示す。
図1のインライン・プロキシのサブシステム・コンポーネントのブロック図である。
企業ユーザによってアクセスされているクラウドベースのサービスを決定するための高レベルのプロセス・ステップと、適切なパーサの選択とを示す。
サービス固有のパーサが利用可能である既知のクラウドベースのサービスがアクセスされている第1のシナリオを示す。
サービス固有のパーサが利用可能でない既知のクラウドベースのサービスがアクセスされている第2のシナリオを示す。
未知のクラウドベースのサービスがアクセスされている第3のシナリオを示す。
「個人ページ及びブログ」カテゴリにおいてクラウドベースのサービスの提供者にコメントを投稿するための、ヘッダ及びコンテンツ部分を含む例示的なメッセージデータを提示する。
カテゴリ・データベースに問い合わせることによってクラウドベースのサービスのカテゴリを識別するインライン・プロキシを示す。
図5Aのクラウドベースのサービスに伝達されるコンテンツからメタデータを収集するための選択されたカテゴリ指向パーサを示す。
図4のメッセージデータ内のヘッダ・メタデータを収集するための例示的なカテゴリ指向パーサからのコンピュータ・プログラム・コードの一部分を示す。
図4の例示的なメッセージデータにおいて伝達されているコンテンツを識別するための、例示的なカテゴリ指向パーサからのコンピュータ・プログラム・コードの第2の一部分を示す。
図6Bで識別されたコンテンツをシステム変数に格納するための例示的なカテゴリ指向パーサからのコンピュータ・プログラム・コードの第3の一部分を示す。
開示された技術を実施するために使用することができるコンピュータ・システムの簡略化されたブロック図である。
以下の説明は、当業者が開示された技術を製作し使用することを可能にするために提示され、特定の用途及びその要件に即して提供される。開示された実施態様に対する様々な修正は、当業者には容易に明らかであり、本明細書で定義される一般原則は、開示される技術の精神及び範囲から逸脱することなく、他の実施態様及び用途に適用され得る。従って、開示された技術は、示された実施態様に限定されることを意図するものではなく、本明細書に開示された原理及び特徴と一致する最も広い範囲が与えられるべきである。
[序論]
企業ユーザは、複数のクラウドベースのサービスにアクセスして、製品及びサービスに関連する様々なアクティビティを実行する。例えば、ユーザは、Salesforce.com(商標)等のクラウドベースの顧客関係管理(CRM)システムAPIにアクセスして、オープンな販売機会のレポートを生成することができる。ユーザは、コンピュータまたはモバイルデバイス等のエンドポイントにレポートをダウンロードすることができる。これに続いて、ユーザは、Box(商標)等のクラウドベースのストレージ・サービスにアップロードすることによって、他のユーザとレポートを共有することができる。これらのインタラクションの監視は、データ損失防止プログラムの一部である。クラウドベースのサービスの普及は、各新しいクラウドベースのサービスのシンタックスを監視するためにカスタマイズされたサービス固有のパーサを開発することを困難にしている。
クラウドベースのサービスとのユーザのトランザクションは、企業のエンドポイントとクラウドベースのサービスのサーバとの間で生じる。エンドポイントとクラウドベースのサービスとの間に配置されたプロキシは、トランザクションを監視する。プロキシは、エンドポイントとサーバとの間のメッセージを傍受し、構文解析する。プロキシは、どのクラウドベースのサービスのアプリケーション・プログラミング・インターフェース(API)がアクセスされているかを決定し、メタデータを収集するためにパーサ(コネクタとしても知られる)を適用する。
開示された技術を適用して、既知のクラウドベースのサービスは、「個人ページ及びブログ」、「ニュース・ウェブサイト」、「クラウドベースのストレージ・サービス」、及び「ソーシャル・メディア・サービス」等のサービスのカテゴリに整理される。カテゴリは、ユーザが同様のアクティビティを実行することを可能にするクラウドベースのサービスのプロバイダのユニフォーム・リソース・ロケータ(URL)のリストを含む。例えば、サービスの「個人ページ及びブログ」カテゴリのプロバイダは、ユーザが投稿を作成し、投稿についてコメントし、写真及びマルチメディアをアップロードまたは埋め込み、加減し、RSS(リッチ・サイト・サマリ)フィードを公開すること等を可能にする。Salesforce.com(商標)及びBox(商標)等の広く使用されるプロバイダの場合、メタデータを収集するサービス固有のパーサが提供される。しかしながら、既知のクラウドベースのサービスの多数のプロバイダのために、サービス固有のパーサが利用可能でない多くの既知のプロバイダが存在する。
カテゴリ内の様々なプロバイダは、カテゴリ内のサービスを実施するために異なるシンタックスを使用する。開示された技術を適用すると、カテゴリ指向パーサは、カテゴリ内のプロバイダのサンプルのインタラクション・シンタックス・パターンを合成する。カテゴリ指向パーサは、カテゴリ内のサンプル・プロバイダによって使用されるシンタックスから合成された複数のカテゴリ指向マッチルールを使用して、既知のクラウドベースのサービスからメタデータを収集する。カテゴリ指向パーサによって収集されたメタデータは、DLPプロセッサが、APIを介して伝達されているコンテンツの分析に集中することを可能にする。本出願において、「コンテンツ」は、ユーザのコンテンツにおいては、APIまたはコンテンツ記憶装置によって伝達されるコンテンツは、ヘッダデータ及びボディデータの両方を指す。場合によっては、「コンテンツ」は、メッセージのペイロードまたはボディを指すために、より狭い意味で使用される。これらの用語の違いは、使用法から明らかである。
カテゴリベースのパーサでさえ、サービスの全領域に及ぶわけではない。ユーザは、特定のパーサまたはカテゴリ指向パーサが利用可能でないAPIを介して、未知のクラウドベースのサービスにアクセスすることができる。未知のクラウドベースのサービスがアクセスされていること、カテゴリが割り当てられていないこと、またはカテゴリ固有のパーサが利用可能でないことをプロキシが決定すると、汎用パーサが選択されて、APIを介して伝達されているコンテンツからメタデータが収集される。汎用パーサは、デフォルト・マッチルールを使用して、APIを介して伝達されるコンテンツからメタデータを収集する。プロキシが、コンテンツからメタデータを収集するために汎用パーサを使用する場合、DLPプロセッサは、メタデータが汎用パーサによって収集されることを通知される。これは、精度とリコールとの間のトレードオフを導く。
[システム概要]
クラウドベースのコンテンツのストレージ及びホスティング・サービス(集合的に「クラウドベースのサービス」)にデータ損失防止(DLP)を適用するためのシステム及び種々の実施態様を説明する。図1は、本実施態様によるシステムのアーキテクチャ・レベルの概略図を示す。図1はアーキテクチャ図であるので、説明の明確さを改善するために、特定の詳細は意図的に省略される。図1の説明は、以下のように編成される。最初に、図の要素を説明し、続いてそれらの相互接続を説明する。次に、システムにおける要素の使用について、より詳細に説明する。
図1は、システム100を含む。システム100は、ユーザ・エンドポイント111と、クラウドベースのホスティング・サービス136と、ウェブ・サービス137と、クラウドベースのストレージ・サービス159と、メタデータ蓄積ストア199と、カテゴリ・データベース195と、インライン・プロキシ161と、ネットワーク165とを含む。クラウドベースのホスティング・サービス136、ウェブ・サービス137、及びクラウドベースのストレージ・サービス159は、集合的にクラウドベースのサービス117と呼ばれる。
コンピュータ121a〜n、タブレット131a〜n、及び携帯電話141a〜n等のユーザ・エンドポイント111は、クラウドベースのサービス117に格納されたデータにアクセスし、インタラクションする。このアクセス及びインタラクションは、ユーザ・エンドポイントとクラウドベースのサービス117との間に介在するインライン・プロキシ161によって調節される。インライン・プロキシ161は、トラフィック・モニタ171及びAPI(アプリケーション・プログラミング・インターフェース)パーサ181を使用して、ユーザ・エンドポイント111とクラウドベースのサービス117との間のトラフィックをモニタする。インライン・プロキシ161は、クラウドベースのプロキシであってもよいし、構内に配置されてもよい。
「管理デバイス」実施態様では、ユーザ・エンドポイント111は、ユーザ・エンドポイント111から発信されるクラウドベースのサービス117に対するリクエスト及びリクエストに対するレスポンスが、ポリシー実施のためにインライン・プロキシ161を介してルーティングされることを確実にするルーティング・エージェント(図示せず)を用いて構成される。ユーザ・エンドポイント111がルーティング・エージェントと共に構成されると、それらは、それらの位置(構内または構外)に拘わらず、インライン・プロキシ161の領域または範囲下にある。
「非管理デバイス」実施態様では、ルーティング・エージェントで構成されていない特定のユーザ・エンドポイントは、インライン・プロキシ161によってモニタされるオンプレミス・ネットワーク内で動作しているとき、依然として、インライン・プロキシ161の範囲下にあり得る。
次に、システム100の要素の相互接続について説明する。ネットワーク165は、コンピュータ121a〜n、タブレット131a〜n、携帯電話141a〜n、クラウドベースのサービス117、メタデータ・ストア199、カテゴリ・データベース195、及び、インライン・プロキシ161の全てを、相互に通信可能に結合する(両矢印実線で示す)。実際の通信経路は、公衆及び/またはプライベート・ネットワーク上のポイント・ツー・ポイントであり得る。通信の全ては、様々なネットワーク、例えば、プライベート・ネットワーク、VPN、MPLS回路、またはインターネットを介して行うことができ、適切なアプリケーション・プログラミング・インターフェース(API)及びデータ交換フォーマット、例えば、リプレゼンテーショナル・ステート・トランスファ(REST)、JavaScript(登録商標)オブジェクト表記(JSON)、拡張マークアップ言語(XML)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、Java(登録商標)メッセージ・サービス(JMS)、及び/または、Javaプラットフォーム・モジュール・システムを使用することができる。全ての通信を暗号化することができる。通信は、通常、LAN(ローカル・エリア・ネットワーク)、WAN(ワイド・エリア・ネットワーク)、電話ネットワーク(公衆交換電話ネットワーク(PSTN))、セッション開始プロトコル(SIP)、無線ネットワーク、ポイント・ツー・ポイント・ネットワーク、星型ネットワーク、トークンリング型ネットワーク、ハブ型ネットワーク、EDGE、3G、4GLTE、Wi−Fi、及びWiMAX等のプロトコルを介するモバイルインターネットを含むインターネット等のネットワークを通して行われる。図1のエンジンまたはシステム・コンポーネントは、様々なタイプのコンピューティング・デバイス上で実行されるソフトウェアによって実施される。デバイスの実施例は、ワークステーション、サーバ、コンピューティング・クラスタ、ブレード・サーバ、及び、サーバ・ファームである。更に、ユーザ名/パスワード、オープン認証(OAuth)、Kerberos、SecureID、ディジタル証明書等の様々な承認及び認証技術を使用して、通信を保護することができる。
クラウドベースのサービス117は、ユーザに、クラウド内またはインターネット上で実施される機能を提供する。クラウドベースのサービス117は、ニュース・ウェブサイト、ブログ、ビデオ・ストリーミング・ウェブサイト、ソーシャル・メディア・ウェブサイト、ホスティッド・サービス、クラウド・アプリケーション、クラウド・ストア、クラウド・コラボレーション、及びメッセージングプラットフォーム等のインターネット・ホスティッド・サービス、及び/またはクラウド顧客関係管理(CRM)プラットフォームを含むことができる。クラウドベースのサービス117は、ブラウザ(例えば、URLを介して)またはネイティブ・アプリケーション(例えば、同期クライアント)を使用してアクセスすることができる。クラウドベースのサービスのカテゴリには、ソフトウェア・アズ・ア・サービス(SaaS)の提供、プラットフォーム・アズ・ア・サービス(PaaS)の提供、インフラストラクチャ・アズ・ア・サービス(IaaS)の提供が含まれる。URL/APIを介して公開される企業アプリケーションは、カテゴリ指向パーサによってサポートされるサービスのカテゴリに適合することができ、または、カテゴリ指向パーサは、サービスの企業アプリケーション・カテゴリに対して書くことができる。今日の一般的なウェブ・サービスの例には、YouTube(登録商標)、Facebook(商標)、Twitter(商標)、Google(商標)、LinkedIn(商標)、 Wikipedia(商標)、Yahoo(商標)、Baidu(商標)、Amazon(商標)、MSN(商標)、Pinterest(商標)、Taobao(商標)、Instagram(商標)、Tumblr(商標)、eBay(商標)、Hotmail(商標)、Reddit(商標)、IMDb(商標)、Netflix(商標)、PayPal(商標)、Imgur(商標)、Snapchat(商標)、Yammer(商標)、Skype(商標)、Slack(商標)、HipChat(商標)、Confluence(商標)、TeamDrive(商標)、Taskworld(商標)、Chatter(商標)、Zoho(商標)、ProsperWorks(商標)、GoogleのGmail(商標)、Salesforce.com(商標)、Box(商標)、Dropbox(商標)、Google Apps(商標)、Amazon AWS(商標)、Microsoft Office 365(商標)、Workday(商標)、Oracle on Demand(商標)、Taleo(商標)、Jive(商標)、及び、Concur(商標)が含まれる。
組織に属するユーザは、クラウドベースのサービスの数百のプロバイダにアクセスして、組織の内部または外部の他のユーザとデータを生成し、格納し、協働し、共有する。既知のクラウドベースのサービスは、サービスの別個のカテゴリを提供するカテゴリ内において整理される。例えば、サービスの「個人ページ及びブログ」カテゴリに属するプロバイダは、ユーザが、自分の個人ページ上に投稿を作成し、投稿に関するコメントを作成し、写真及びマルチメディアをアップロードまたは埋め込み、ユーザからのコメントを加減し、RSSフィードを公開すること等を可能にする。「個人ページ及びブログ」カテゴリにおけるクラウドベースのサービスのプロバイダの幾つかの例には、Google Plus(商標)、Blogger(商標)、Squarespace(商標)、Wix(商標)、及びWordpress(商標)が含まれる。サービスのカテゴリは、サービスのカテゴリの人気に応じて、数十から数千、またはそれ以上に及び得る多数の既知のプロバイダを含む。一実施態様では、それぞれがそのカテゴリのサービスを実施する少なくとも25の既知のプロバイダがある。25は、カテゴリ内のプロバイダの最小数の概算の推定値である。「ブログ及び個人ページ」カテゴリにおける50のプロバイダの例示的なリストは、「https://www.sparringmind.com/successful−blogs/」で利用可能である。既知のクラウドベースのサービスの別個のカテゴリの他の例には、「ニュース・ウェブサイト」、「クラウドベースのストレージ・サービス」、「ソーシャル・メディア・サービス」、及び「ウェブメール」が含まれる。既知のクラウドベースのサービスの50以上の別個のカテゴリのサービスが確認されている。例としては、技術、教育、健康及び栄養、旅行、家及び庭、自動車、専門家のネットワーク、オークション及び市場、科学、及びファッションが挙げられる。当業者であれば、開示された技術の精神及び範囲から逸脱することなく、追加のカテゴリのサービスを、他の現在または将来開発されるクラウドベースのサービスに適用することができることを理解するであろう。
サービスのカテゴリ及びカテゴリ毎のクラウドベースのサービスのプロバイダは、カテゴリ・データベース195に格納される。上に列挙した5つの例示的なサービスのカテゴリのクラウドベースのサービスは、サービスの特定のカテゴリを対処する1つのカテゴリ指向パーサを有する少なくとも5つのカテゴリ指向パーサによって供給される。
クラウドベースのサービス117は、セキュリティ・ポリシーを実施している組織のユーザに機能を提供する。ユーザが、エンドポイント121aを介してクラウドベースのサービスにリクエストを送信すると、インライン・プロキシ161は、リクエスト・メッセージを傍受する。インライン・プロキシ161は、アプリケーション・プログラミング・インターフェース(API)を介してアクセスされているクラウドベースのサービスを識別するために、カテゴリ・データベース195に問い合わせる。一実施態様において、インライン・プロキシ161は、アクセスされるクラウドベースのサービスを識別するためにAPIにアクセスするために使用されるユニフォーム・リソース・ロケータ内のドメイン名を使用する。アクセスされているAPIに対してサービス固有のパーサが利用可能でない場合、インライン・プロキシ161は、アクセスされているAPIにカテゴリ指向パーサを適用する。APIを介して伝達されているコンテンツから収集されたメタデータは、カテゴリ指向パーサによって収集される。メタデータは、APIを介して伝達されているコンテンツの分析に集中するためのデータ損失防止(DLP)プロセッサに転送される。インライン・プロキシは、ユーザからメタデータ蓄積ストア199へのリクエスト・メッセージ内にメタデータを蓄積する。メタデータの蓄積は、クラウドベースのサービスとのユーザのインタラクションに関するより大きなコンテキストを構築するのに役立ち、これは、DLPプロセッサがその分析に集中するのに役立つ。
図2は、インライン・プロキシ161のサブシステム・コンポーネントを示すブロック図200である。インライン・プロキシ161は、トラフィック・モニタ171及びAPIパーサ181を含む。インライン・プロキシは、クラウドベースのサービス117にアクセスするために、コンピュータ121a、タブレット131a、または携帯電話141a等のエンドポイント上で作動するクライアントを介して、ユーザからリクエスト・メッセージを受信する。一実施態様では、クライアントとクラウドベースのサービスのサーバとの間の通信は、ハイパーテキスト転送プロトコル(HTTP)を使用する。リクエストを受信した後、インライン・プロキシ161は、リクエストしているクライアントに代わってサーバへの接続を確立する。これに続いて、クライアントからサーバへの全てのリクエスト・メッセージ及びサーバからクライアントへのレスポンス・メッセージが、プロキシ161によって検査され、DLPプロセッサに転送されて、データ損失防止のためのポリシーが実施される。インライン・プロキシ161を実行するデバイスは、HTTPリクエストが発信された同じデバイス上で実行されるエンドポイント・ルーティング・クライアントがHTTPリクエストをルーティングするクラウドベースのサーバとすることができる。別の実施態様では、インライン・プロキシ161を実行するデバイスは、ユーザ・エンドポイント111からのHTTPリクエストを能動的に処理するように配置されたオンプレミス・ルーティング・アプライアンスである。
例えば、ユーザがブログ投稿にコメントを投稿しているとすると、リクエストURLは「https://test951342056.wordpress.com/wp−comments−post.php」であり、従って、ドメインネーム(ホストネームとも呼ばれる)は「wordpress.com」である。ドメイン名を使用して、カテゴリ識別子コンポーネント235は、カテゴリ・データベース195に照会し、「個人ページ及びブログ」カテゴリに属する既知のクラウドベースのサービス「Wordpress(商標)」がAPIを介してアクセスされていることを判定する。これに続いて、パーサ・セレクタ245は、サービス固有パーサ275がアクセスされているAPIに対して利用可能であるかどうかを判定する。アクセスされているAPIに対してサービス固有のパーサが利用可能でない場合、パーサ・セレクタ245は、トラフィック・パーサ・コンポーネント255からサービスの「個人ページ及びブログ」カテゴリ内のクラウドベースのサービスにサービスを提供するカテゴリ指向パーサを選択する。
ユーザが未知のクラウドベースのサービスにアクセスしようと試みるとき、インライン・プロキシは、アクセスされているAPIからメタデータを収集するために、汎用パーサ285を使用する。クラウドベースのサービスは、そのAPIを介して伝達されているコンテンツからメタデータを収集するために利用可能なサービス固有のパーサがない場合、未知のクラウドベースのサービスと呼ばれる。更に、未知のクラウドベースのサービスはサービスの何れのカテゴリにも属さないので、APIを介して伝達されるコンテンツからメタデータを収集するためにカテゴリ指向パーサは利用可能ではない。従って、汎用パーサ285は、未知のクラウドベースのサービスのAPIを介して伝達されているコンテンツからメタデータを収集する。
[カテゴリ指向パーサ及び汎用パーサの選択]
インライン・プロキシ161は、エンドポイント上で作動するクライアントを介して企業ユーザからリクエストを受信し、クライアントに代わってリクエストされたクラウドベースのサービスへの接続を確立する。接続の確立に続いて、インライン・プロキシは、既知のクラウドベースのサービスがAPIを介してアクセスされているかどうかを判定する。図3A〜3Dは、既知及び未知のクラウドベースのサービスが、それぞれのAPIを介してアクセスされる場合の、パーサ(コネクタとも呼ばれる)の選択及び識別の3つの実施例を示す。
図3Aは、ブロック351で(エンドポイント上のクライアントを介して)インライン・プロキシ161が企業ユーザAから、クラウドベースのサービスにアクセスするリクエストを受信するプロセスの概観300Aを提示する。インライン・プロキシ161は、既知のまたは未知のクラウドベースのサービスがアクセスされているかどうか、及び既知のクラウドベースのサービスによって実施されるサービスのカテゴリを判定する(ブロック353)。インライン・プロキシによるこの判定に続いて、3つの異なるタイプのパーサの選択に繋がる3つの経路が可能である。以下の実施例では、クラウドベースのサービスのクライアントとサーバの間の通信は、HTTPプロトコルを使用する。
図3Bは、クライアントからのリクエスト・メッセージにおいてインライン・プロキシによって受信されたURLが「https://api.boxcloud.net/....」(361)である実施例300Bを示す。リクエストURLは、説明のために部分的に示されている。ドメイン名「boxcloud.net」354及びクラウドベースのサービス「Box(商標)」357は、リクエストURL 361からインライン・プロキシによって決定される。インライン・プロキシは、カテゴリ・データベース195に照会し、アクセスされているAPIに対してサービス固有のパーサが利用可能であることを判定する(ブロック335)。一実施態様では、カテゴリ・データベース195は、既知のクラウドベースのサービスのプロバイダのドメインネームのエントリリストを維持する。エントリリストは、プロバイダに利用可能なサービス固有のパーサを識別する。これに続いて、インライン・プロキシは、Box(商標)APIのためのサービス固有のパーサを選択し、それをリクエスト・メッセージに適用して、APIを介して伝達されているコンテンツからメタデータを収集する(ブロック337)。収集されたメタデータは、DLPに転送され、APIを介して伝達されるコンテンツの分析に集中するのに使用される。
図3Cの実施例300Cでは、リクエスト・メッセージのURLは“https://www.wechat.com/....”(362)である。インライン・プロキシは、ドメイン名を「wechat.com」(355)と、リクエストされたクラウドベースのサービスによって実施されるサービスのカテゴリを「個人ページ及びブログ」カテゴリ358と、判定する。プロバイダに利用可能なサービス固有のパーサは存在しない。インライン・プロキシは、「個人ページ及びブログ」カテゴリ指向パーサを選択し、適用して(ブロック357)、APIを介して伝達されているコンテンツからメタデータを収集する。収集されたメタデータは、DLPプロセッサに送られ、APIを介して伝達されるコンテンツの分析に集中するのに使用される。図3B及び3Cに示されるクラウドベースのサービスの実施例は、サービス固有パーサまたはカテゴリ指向パーサが利用可能な既知のクラウドベースのサービスである。別の実施態様では、カテゴリ指向パーサを選択するために、ホスト内のリソースを識別する経路が使用される。例えば、リクエスト・メッセージ内のURL「https://mysite.com/forums」を考える。URL「/forums」のリソース部分は、リクエストされたクラウドベースのサービスによって実施されるサービスのカテゴリが「個人ページ及びブログ」カテゴリに属することを判定するために使用される。これは、mysite.comが2つの異なるカテゴリ指向パーサで処理されるサービスを提供する場合に最も役立つ。カテゴリの識別に続いて、上述のように、カテゴリ指向パーサが選択される。
図3Dに示す実施例300Dでは、リクエスト・メッセージのURL363は「https://www.gluu.org/....」である。インライン・プロキシは、アクセスされるクラウドベースのサービスのドメイン名が「gluu.org」であると判定する(356)。しかし、インライン・プロキシは、アクセスされているAPIからメタデータを収集するために利用可能なサービス固有パーサまたはカテゴリ指向パーサがないので、これが未知のクラウドベースのサービスであると判定する(359)。クラウドベースのサービスの新しいプロバイダ、またはクラウドベースのサービスのまれにアクセスされるプロバイダは、クラウドベースのサービスのこのカテゴリに入る可能性が高い(ブロック375)。インライン・プロキシ161は、未知のクラウドベースのサービスのAPIに汎用パーサを適用する(ブロック377)。
[クライアントからクラウドベースのサービスのサーバへのリクエスト・メッセージ]
図4は、クライアントからクラウドベースのサービス117のサーバへの例示的なHTTPリクエスト・メッセージ400を示す。リクエスト・メッセージは、4つの主要部分、すなわち、一般ヘッダ411、レスポンス・ヘッダ431、リクエスト・ヘッダ461、及びフォーム・データ481を含む。最初の3つの部分は、送信者、受信者、及びメッセージ内容に関する情報を提供するヘッダ・フィールドを含む。一般ヘッダ411は、HTTPリクエスト・メッセージとHTTPレスポンス・メッセージの両方に適用される。この部分は、アクセスされているクラウドベースのサービスのドメイン名415を更に含むリクエストURL418を含む。リクエスト・ヘッダ461は、アクセスされるクライアントまたはリソースに関する更なる情報を含む。リクエスト方法は、ラベル453によって示されるように「POST」である。HTTP・POSTリクエスト方法は、ウェブ・サーバが、それを格納するためのリクエスト・メッセージの本文に含まれるデータを受け入れることをリクエストする。POST方法は、完成したウェブフォームをサブミットするとき、またはクラウドベースのストレージ・サービスにファイルをアップロードするときに使用される。リクエスト・ヘッダ461内のコンテンツ・タイプ・フィールド466は、リクエスト・メッセージ内の値がキー値タプルにおいて符号化されることを識別する。レスポンス・ヘッダ431は、サーバの位置及び名前等のレスポンスに関する追加情報を含む。メッセージの最後の部分は、リクエスト・メッセージ内のコンテンツまたはペイロードを含むフォーム・データ481である。例示的なリクエスト・メッセージ400では、ユーザは、コメント474「あなたの投稿は非常に有益です。ありがとうございます。」をブログに投稿している。
例示的なリクエスト・メッセージ400の構造を説明したので、次に、リクエスト・メッセージ400内の情報を使用して、インライン・プロキシ161によるカテゴリ指向パーサの選択を説明する。図5A及び5Bは、インライン・プロキシ161の一実施態様を示す。インライン・プロキシ161によって実行される分析は、例えば、情報を受信または検索し、情報を処理し、結果を格納し、結果を送信するように構成された1または複数のプロセッサによって、コンピュータまたは他のデータプロセッシングシステムを用いて少なくとも部分的に実施することができる。他の実施態様は、異なる順序で、及び/または図示されたものとは異なる、より少ない、または追加のアクションで、結果を実行することができる。
インライン・プロキシ161は、ユーザ・エンドポイント111とクラウドベースのサービス117(クラウドベースのホスティング・サービス136及びストレージ・サービス159を含む)との間に挿入される。インライン・プロキシ161は、ユーザのエンドポイント(コンピュータ121a〜n、タブレット131a〜n、及び携帯電話141a〜n等)からのウェブブラウザ・トラフィックを監視する。ユーザのエンドポイントからリクエストを受信すると、インライン・プロキシ161は、リクエストしたクライアントに代わってサーバへの接続を確立する。従って、インライン・プロキシ161は、クラウドベースのサービスからダウンロードされ、クラウドベースのサービスにアップロードされた任意のドキュメントを含むリクエスト及びレスポンス・メッセージをリアルタイムで監視する。一実施態様では、インライン・プロキシ161はHTTP(ハイパーテキスト転送プロトコル)プロキシであり、HTTPトランザクションにおけるリクエスト及びレスポンス・メッセージを検査する。
図5Aは、企業ユーザAが、ブログ投稿にコメントを投稿するために、クラウドベースのサービス117に(コンピュータ121aを介して)リクエスト・メッセージ400を送信する実施例500Aを示す。インライン・プロキシ161は、ドメイン名「wordpress.com」415を識別するために、リクエスト・メッセージ400内のリクエストURL418を構文解析する。インライン・プロキシ161は、リクエストされたクラウドベースのサービス「wordpress.com」がサービス358の「個人ページ及びブログ」カテゴリに属することを判定するために、カテゴリ・データベース195に問い合わせる。インライン・プロキシ161は更に、アクセスされているクラウドベースのサービス「wordpress.com」のAPIのためのサービス固有のパーサが存在しないことを識別する。図5Bは、リクエストされたクラウドベースのサービスのカテゴリを対処するカテゴリ指向パーサの選択を示す。インライン・プロキシ161は、トラフィック・パーサ・コンポーネント255内の利用可能なカテゴリ指向パーサから、「個人ページ及びブログ」カテゴリのサービスに属するクラウドベースのサービスのプロバイダにサービスを提供する「個人ページ及びブログ」カテゴリ指向パーサを選択する。
[カテゴリ指向パーサ]
カテゴリ指向パーサの選択を説明した後、ここで、リクエスト・メッセージ400に対するカテゴリ指向パーサの適用を紹介する。カテゴリ指向パーサ(コネクタとも呼ばれる)は、リクエスト及びレスポンス・メッセージを構文解析し、実行されているアクティビティ、例えば、「ログイン」、「ファイル・アップロード」、「ファイル・ダウンロード」を識別しようと試みる。ユーザは、クラウドベースのサービスによって提供されるサービスに関連する多くのアクティビティを実行することができる。アクティビティの特定に続いて、カテゴリ指向パーサは、アクティビティに関連するメタデータを収集し、APIを介して伝達されているコンテンツの分析に集中するのに使用するためにDLPプロセッサに送信する。
固有パーサは、既知のクラウドベースのサービスのAPIを使用して実行することができる全てのアクティビティを識別するためのロジックを含む。しかし、企業ユーザによってアクセスされる既知のクラウドベースのサービスの多数のプロバイダのために、全てのプロバイダのAPIのための固有パーサを構築することは実現可能ではない。或るカテゴリのサービスを実施するクラウドベースのサービスは、ユーザが同様のアクティビティを実行することを可能にし、例えば、「個人ページ及びブログ」カテゴリのサービスを実施するクラウドベースのサービスは、ユーザが、投稿の作成、投稿に関するコメント、写真及びマルチメディアのアップロードまたは埋め込み、加減し、RSS(リッチ・サイト・サマリ)フィードの公開すること等のアクティビティを実行することを可能にする。カテゴリ指向パーサは、カテゴリ指向マッチルールを使用して、リクエスト・メッセージ及びレスポンス・メッセージから関連するメタデータを収集する。図6A、6B、及び6Cは、「個人ページ及びブログ」カテゴリ指向パーサによるメッセージ400の段階的構文解析を示す。「個人ページ及びブログ」カテゴリ指向パーサの構文解析ロジックは、擬似ステートメントを使用して示される。
[“コメントを投稿する”アクティビティ]
図6Aは、リクエスト・メッセージ400の部分と、実行されたアクティビティを識別するための「個人ページ及びブログ」カテゴリ指向パーサ内の対応するロジックとを識別する図600Aである。一実施態様では、カテゴリ指向パーサ内の構文解析ロジックは、アクティビティに応じて整理される。例えば、「個人ページ及びブログ」カテゴリ指向パーサの場合、アクティビティは、「コメントを投稿する」、「ファイルをアップロードする」等を含む。メッセージ(リクエストまたはレスポンス)の構文解析を実行する前に、メッセージ内のヘッダは、アクティビティを決定するために識別ルールにマッチングされる。図6Aは、「個人ページ及びブログ」カテゴリ指向パーサの一部601を示す。<ヘッダ・マッチ・セグメント>タグ650及び<エンド・オブ・マッチ・セグメント>タグ690は、それぞれ、カテゴリ指向マッチルールを使用する前に、URLリクエスト内のパラメータを識別ルールにマッチさせるマッチ・ステートメント662及び682を含む。識別ルールは、メッセージ中のコンテンツがキー値ペアの形式であり、HTTP・POST方法を使用してサーバに送信されることをリクエストする。ブール論理ステートメント672は、両方のステートメント662及び682が、カテゴリ指向マッチルールの適用のために真である必要があることを示す。図4に示す「コメントを投稿する」メッセージに基づいた実施例を以下に示す。
一対の例示的なマッチ・ステートメント662及び682において、マッチ・ステートメント内の値は、ラベル453及び466によって示される、リクエスト・メッセージ400のリクエスト・ヘッダ部分461に含まれるリクエスト・パラメータに対してマッチングされる。これらのパラメータは、マッチ・ステートメントに対してテストされる。マッチルールは、左辺が右辺にマッチする論理式を形成する。マッチ・ステートメントの「フィールド名」部分(マッチ・ステートメント662内のラベル663によって識別されるような)は、「マッチする値」ステートメント667内の「リテラル」がマッチするリクエスト・ヘッダ内のリクエスト・パラメータのラベルを識別する。一実施態様では、最初の一致ステートメント662において、フィールド名663は、リクエスト・ヘッダ461のラベル466によって識別されるリクエスト・パラメータにマップする「コンテンツ・タイプ」フィールドである。「コンテンツ・タイプ」リクエスト・パラメータ466は、メッセージのコンテンツ(図6Bに示される)がキー値ペアの形式であることを示す値「application/x−www−form−urlencoded」を有する。この値は、ステートメント667内の「リテラル」値に対してテストされる。HTTP・POSTメッセージ内の「コンテンツ・タイプ」フィールド値の他の実施例は、JavaScriptオブジェクト表記(JSON)データ交換フォーマットを示す「アプリケーション/json」と、多目的インターネットメール拡張(MIME)符号化を示す「マルチパート/フォーム・データ」を含む。「マッチタイプ」ステートメント665は、実行されたマッチのタイプ、例えば、文字列マッチを示す。第2のマッチ・ステートメント682は、リクエスト・メッセージ内のリクエスト・パラメータ「方法」453の値を比較して、その方法がHTTP・POST方法であることを判定する。一実施態様では、リクエスト・メッセージ内の「方法」リクエスト・パラメータの値が、マッチングを判定するために、ステートメント686に示されるように、許可された方法値のリストに対してテストされる。
マッチ・ステートメント662及び682の両方の結果が真である場合、「個人ページ及びブログ」カテゴリ指向パーサは、図6B(600B)のボックス602に示すように、カテゴリ指向マッチルール613を適用して、リクエスト・メッセージ400内にデータ481を形成する。フォーム・データ(HTTP・POSTデータまたはPOSTボディとも呼ばれる)は、キー値ペアの形式でメッセージ400のコンテンツを含む。カテゴリ指向マッチルールは、上記で識別された「コンテンツ・タイプ」に従って形成される。コンテンツが(例示400の場合のように)キー値ペアとして編成される場合には、各々のカテゴリ指向マッチルールは、メッセージ中の「キー」リテラルを識別するための「キー・ツー・マッチ」ステートメントを含む。カテゴリ指向マッチルール613は、それぞれ、<ボディ・マッチ・セグメント>タグ641及び<エンド・オブ・マッチ・セグメント>タグ691内に囲まれたアクションのリストである。カテゴリ指向マッチルールのマッチングに関連する他のタイプのアクションには、システム変数にメタデータを割り当てること、及びDLPプロセッサにメタデータを送信することが含まれる。
カテゴリ指向マッチルール613は、「個人ページ及びブログ」カテゴリ指向パーサによって対処される「個人ページ及びブログ」カテゴリのサービスを実施するために、及び、例えば、サービスの「コメントを投稿する」アクティビティを実施するために、多数の既知のプロバイダによって使用される複数のシンタックスから導出される。一実施態様では、複数のカテゴリ指向マッチルールは、少なくとも10のマッチルールを含み、これは、幾つかのサービスで利用可能なアクティビティの複雑さのおおよその下限を反映している。10は、経験に基づく、特定のカテゴリに対するマッチルールの実際的な下限である。最大値は決定されていないが、実際には、1000のマッチルールは厄介であり、更なるカテゴリへのカテゴリの細分化を招く。これらのマッチルールは、カテゴリ指向パーサによって対処されるカテゴリのサービスを実施するために、多数の既知のプロバイダによって使用される複数のシンタックスから導出される。一実施態様において、複数のカテゴリ指向マッチルールは、それぞれがカテゴリ指向パーサによって対処されるカテゴリのサービスを実施する少なくとも25の既知のプロバイダによって使用されるシンタックスから導出される。25は、カテゴリ内のプロバイダの最小数のおおよその推定値である。先に提示したように、「個人ページ及びブログ」カテゴリの50のプロバイダの例示的なリストは、「https://www.sparringmind.com/successful−blogs/」で利用可能である。サービスの「個人ページ及びブログ」カテゴリに属するクラウドベースのサービスの異なるプロバイダは、フォーム・データ内のコンテンツを記述するために、キー値ペア内の異なる「キー」を使用する。例示的なメッセージ400では、ユーザのコメントは、キーが「コメント」であり、値が、ブログ投稿上のユーザのコメントである「あなたの投稿は非常に有益です。ありがとうございます。」であるキー値ペア474として含まれる。ステートメント685(カテゴリ指向マッチルール688)がリテラル「コメント」の値を有すると仮定する。これは、キー値ペア474内のリクエスト・パラメータ・キー「コメント」に対してテストされた場合に肯定的なマッチをもたらす。
しかし、カテゴリ指向マッチルール613は、他の既知のクラウドベースのプロバイダからのメッセージからメタデータを捕捉しようと試みる複数のマッチルール658、668、678、688等を含むことが分かる。例えば、第2のプロバイダは、「メッセージ」等の異なるキーを使用して同じコメントを含むことができる。そのような実施例では、リテラル「メッセージ」にマッチするキーを有する別のマッチルールが、マッチルール688の代わりに適用される。マッチルール613は、キー値ペアの形式であるフォーム・データ(または投稿データ)を構文解析するためのロジックを含む。異なるマッチ・ロジックを有する異なるセットのマッチルールが、上述したようなJSON及びMIMEのような他のフォーマットのデータを含むリクエスト及びレスポンス・メッセージを構文解析するために適用される。マッチルール688は、ステートメント683「フィールド名:リテラル」を含む。リクエスト・メッセージ400の実施例では、フィールド名は、「投稿データ」または「フォーム・データ」である。従って、このマッチルールでは、ステートメント685で識別されたキー「コメント」を、キー値ペアを含むフォーム・データ(または投稿データ)481にマッチさせて、キー「コメント」がフォーム・データに存在するか否かを判定する。カテゴリ指向マッチルール613の完全なリストは、図6Bのボックス602には提示されていない。実施例の目的は、APIを介して伝達されているコンテンツからメタデータを収集するためのカテゴリ指向マッチルールの適用を例示することである。
図6Cは、アサイン・ステートメント614(ボックス603に示される)が、リクエスト・メッセージ400内のキー値ペアからのキーの値をシステム変数に割り当てる実施例600Cを提示する。上記で説明したように、カテゴリ指向マッチルール613は、カテゴリ指向パーサによって対処されるカテゴリのサービスを実施するためにクラウドベースのサービスの多数の既知のプロバイダによって使用される複数のシンタックスから導出される。カテゴリ指向パーサは、680等のアサイン・ステートメントを使用することによって、成功裏に解決されたマッチルールの結果を保持する。成功裏に解決されたマッチルールに相関名を持つアサイン・ステートメントを使用すると、保持されている値がシステム変数に割り当てられる。一実施態様では、アサイン・ステートメント680は、ステートメント689内のシステム変数に値を割り当てるコンテンツ・タイプを識別するステートメント684「アサインメント・タイプ:列挙」から構成される。上述したように、コンテンツ・タイプの一例は、キー値ペアである。そのような場合、ステートメント684は、カテゴリ指向パーサに、リクエスト・メッセージ400内のキーの値をシステム変数に割り当てるように命令する。キーは、ステートメント687「キー・ツー・マッチ:リテラル」で識別され、システム変数は、ステートメント689で識別される。これに続いて、カテゴリ指向パーサは、収集されたメタデータ及びコンテンツを、検査のためにDLPプロセッサに送信する。
或るカテゴリのサービスを実施するクラウドベースのサービスにアクセスするユーザは、サービスのカテゴリに関連する様々なアクティビティを実行する。カテゴリ指向パーサは、実行されたアクティビティに関連するメタデータを収集し、それをメタデータとしてDLPプロセッサに送信する。一実施態様では、アクティビティ・データ(メタデータ及びコンテンツを含む)をDLPプロセッサに送信するトリガが呼び出される。メタデータは、DLPプロセッサがコンテンツを検査し、セキュリティ・ポリシーを適用するのに役立つデータを含む。例えば、トリガは、データがリクエスト・メッセージ(HTTP・POST)またはレスポンス・メッセージ(HTTP・GET)から収集されたことをDLPプロセッサに通知する。実行されるアクティビティに応じて、カテゴリ指向パーサは、DLPプロセッサが検査するための「オブジェクト」を識別する。例えば、アクティビティが「ログイン」である場合、オブジェクトは「ユーザ名」であり、アクティビティがアップロードまたはダウンロードである場合、オブジェクトは「ファイル」である。
[“ファイルのアップロード”するアクティビティ]
「個人ページ及びブログ」カテゴリ指向パーサを続けて、ここで、企業ユーザが、WordPress(商標)APIを使用して、サービスの「個人ページ及びブログ」カテゴリに属するプロバイダ「WordPress.com」にファイルをアップロードしようと試みることを考える。インライン・プロキシ161は、リクエスト・メッセージ(HTTP・POST)を受信し、プロキシは、図5A及び5Bで上述したのと同じプロセスに従い、リクエストURLからサービスのカテゴリを識別し、カテゴリ指向パーサを選択する。「個人ページ及びブログ」カテゴリ指向パーサが選択され、(図6Aで説明したように)リクエスト・メッセージ・ヘッダを構文解析して、実行されたアクティビティを決定することを考える。この目的のために、(図6Aに示されるような)ヘッダ・マッチ・セグメント内の1対のマッチ・ステートメント(識別ルールとも呼ばれる)が適用される。マッチ・ステートメント内の値は、リクエスト・メッセージのリクエスト・ヘッダ部分に含まれるリクエスト・パラメータに対してテストされる。
第1のマッチ・ステートメントは、図6Aのマッチ・ステートメント682と同様であり、リクエスト・メッセージがHTTP・POST方法を使用して送信されていることを識別する。第2のマッチ・ステートメントは、リクエスト・メッセージが「マルチパート/フォーム・データ」の形式の添付ファイルを含むことを識別する。アクティビティを識別するためにヘッダ・マッチ・セグメントに識別ルールを適用した後、カテゴリ指向マッチルールを適用して、アクティビティのオブジェクトに関連するメタデータを収集する。一実施態様では、添付ファイルはMIMEエンコードされる。カテゴリ指向マッチルールは、オブジェクトのタイプ(この実施例では「ファイル」)及びオブジェクトのサイズ(この実施例ではファイルのサイズ)を含む関連するメタデータを収集する。メッセージのメタデータ及びコンテンツは、その分析に集中するために、DLPプロセッサに転送される。カテゴリ指向パーサは、サービスのカテゴリに属する既知のクラウドベースのサービスのアクティビティに対応するアクティビティ識別マッチルール及びカテゴリ指向マッチルールを含む。
[汎用パーサ]
図3Dに関連して上述したように、インライン・プロキシが、未知のクラウドベースのサービスが、サービス固有のパーサもカテゴリ指向パーサも利用可能でないAPIを介してアクセスされていると判定した場合、インライン・プロキシは、アクセスされているAPIに対して汎用パーサ(ユニバーサルコネクタとも呼ばれる)を選択し、適用する。ユーザが、クラウドベースのサービスgluu.orgにリクエスト・メッセージ「https://support.gluu.org/installation/7139/service−issues/」を送信しようとする場合を考える。図3Dで上述したように、インライン・プロキシは、ユーザが未知のクラウドベースのサービス「gluu.org」にアクセスしていることを判定する。インライン・プロキシ161は、未知のクラウドベースのサービスのAPIに汎用パーサを適用する。汎用パーサは、未知のクラウドベースのサービスのAPIを使用して実行されるアクティビティを知らないので、汎用パーサは、ユーザによって実行されるアクティビティに従って編成されたマッチルールを含まない。
汎用パーサは、カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスを実施するために、少なくとも1つのデフォルト・マッチルールを含む。例えば、汎用パーサは、HTTP・POSTリクエスト・メッセージでサーバにデータを送信する全てのアクティビティに適用されるデフォルト・マッチルール「ファイルのアップロード」を含む。既知のクラウドベースのサービスの場合、これらのアクティビティは、少なくとも2つのカテゴリのサービスにおいてクラウドベースのサービスによって提供される。例えば、サービスの「ウェブメール」カテゴリからの「eメールを送信する」アクティビティと、「個人ページ及びブログ」カテゴリからの「コメントを投稿する」アクティビティとの両方は、リクエストが汎用パーサによって処理されるとき、「ファイルのアップロード」アクティビティと見なされる。従って、汎用パーサは、カテゴリ指向パーサと比較して、より少ないメタデータを収集する。複数のタイプのアクティビティが、デフォルト・マッチルールを使用して汎用パーサによって処理されるので、汎用パーサは、メタデータが汎用パーサによって収集されるというラベルを含む追加の変数をDLPプロセッサに送信する。この追加のメタデータは、DLPプロセッサに、その許容範囲を緩和するために随意的に使用できる情報をDLPプロセッサに与えることによって、DLPプロセッサが誤検知を回避するのを助ける。アップロードに対して行動をとるための許容範囲の緩和は、許容範囲が緩和されたサイトを調査するための報告を伴うことができる。例えば、ブログ・ポストにコメントを投稿しているが、ファイルのアップロードのアクティビティとしてDLPプロセッサに送信されるリクエスト・メッセージは、セキュリティ・ポリシーが、ファイルのアップロードが許可されないと提示している場合、DLPプロセッサによってブロックすることができる。しかし、これは、誤検知であり、リクエスト・メッセージが汎用パーサによって構文解析されることをDLPプロセッサに通知するための追加のメタデータを含むことは、ポリシーを実施するときに、DLPプロセッサがこの情報を含むのを助けることができる。
[コンピュータ・システム]
図7は、サービス固有のパーサが利用可能でないクラウドベースのコンテンツ・ストレージやホスティング・サービス(集合的に「クラウドベースのサービス」)に、データ損失防止(DLP)を適用するための図1のインライン・プロキシ161を実施するために使用できるコンピュータ・システム700の簡略ブロック図である。コンピュータ・システム700は、バス・サブシステム755を介して幾つかの周辺装置と通信する少なくとも1つの中央演算処理装置(CPU)772を含む。これらの周辺装置は、例えば、メモリ装置及びファイル・ストレージ・サブシステム736を含むストレージ・サブシステム710、ユーザ・インターフェイス入力装置738、ユーザ・インターフェイス出力装置776、及びネットワーク・インターフェイス・サブシステム774を含むことができる。入力及び出力装置は、コンピュータ・システム700とのユーザ・インタラクションを可能にする。ネットワーク・インターフェイス・サブシステム774は、他のコンピュータ・システム内の対応するインターフェイス装置へのインターフェイスを含む、外部ネットワークへのインターフェイスを提供する。
一実施態様では、図1のインライン・プロキシ161は、ストレージ・サブシステム710及びユーザ・インターフェイス入力装置738に通信可能にリンクされる。
ユーザ・インターフェイス入力装置738は、キーボード、マウス,トラックボール,タッチパッド,またはグラフィックス・タブレット等のポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム及びマイクロフォン等のオーディオ入力装置、並びに他のタイプの入力装置を含むことができる。一般に、「入力装置」という用語の使用は、コンピュータ・システム700に情報を入力するための全ての可能なタイプの装置及び方法を含むことが意図される。
ユーザ・インターフェイス出力装置776は、ディスプレイ・サブシステム、プリンタ、ファックスマシン、またはオーディオ出力装置等の非視覚ディスプレイを含むことができる。ディスプレイ・サブシステムは、LEDディスプレイ、陰極線管(CRT)、液晶ディスプレイ(LCD)等のフラットパネル装置、投影装置、または可視画像を生成するための他の何らかのメカニズムを含むことができる。ディスプレイ・サブシステムはまた、オーディオ出力装置等の非視覚ディスプレイを提供することができる。一般に、「出力装置」という用語の使用は、コンピュータ・システム700からユーザに、または別の機械もしくはコンピュータ・システムに情報を出力するための全ての可能なタイプの装置及び方法を含むことが意図される。
ストレージ・サブシステム710は、本明細書で説明するモジュール及び方法の一部または全部の機能を提供するプログラミング及びデータ構造を記憶する。サブシステム778は、グラフィックス処理装置(GPU)またはプログラマブル・ゲートアレイ(FPGA)とすることができる。
ストレージ・サブシステム710で使用されるメモリ・サブシステム722は、プログラム実行中に命令及びデータを格納するためのメイン・ランダムアクセス・メモリ(RAM)732と、固定命令が格納される読み出し専用メモリ(ROM)734とを含む、幾つかのメモリを含むことができる。ファイル・ストレージ・サブシステム736は、プログラム及びデータファイルのための永続的ストレージを提供することができ、ハードディスク・ドライブ、関連するリムーバブル・メディアと共にフロッピー(商標)ディスク・ドライブ、CD−ROMドライブ、光ドライブ、またはリムーバブル・メディア・カートリッジを含むことができる。特定の実施態様の機能を実施するモジュールは、ストレージ・サブシステム710内のファイル・ストレージ・サブシステム736によって、またはプロセッサによってアクセス可能な他のマシン内に格納することができる。
バス・サブシステム755は、コンピュータ・システム700の様々なコンポーネント及びサブシステムに、意図されたように互いに通信させるためのメカニズムを提供する。バス・サブシステム755は、単一のバスとして概略的に示されているが、バス・サブシステムの他に採り得る実施態様は、多数のバスを使用することができる。
コンピュータ・システム700は、パーソナル・コンピュータ、ポータブル・コンピュータ、ワークステーション、コンピュータ端末、ネットワーク・コンピュータ、テレビ、サーバ、メインフレーム、広範囲に分散した一連の疎結合コンピュータ、または任意の他のデータ処理システムもしくはユーザ・デバイスを含む様々なタイプのものとすることができる。コンピュータ及びネットワークの絶えず変化する性質のために、図7に示されるコンピュータ・システム700の説明は、本発明の好ましい実施形態を例示する目的のための特定の実施例としてのみ意図される。コンピュータ・システム700の多くの他の構成は、図7に示されたコンピュータ・システムよりも多いまたは少ないコンポーネントを有することが可能である。
[特定の実施態様]
本発明は、サービス固有のパーサが利用できないクラウドベースのコンテンツ・サービスにデータ損失防止(DLPと略記)を適用することに関する。
開示される技術は、システム、方法、デバイス、製品、コンピュータ可読媒体、または製品として実施することができる。実施態様の1以上の特徴は、基本実施態様と組み合わせることができる。相互に排他的でない実施態様は、組み合わせ可能であると教示される。実施態様の1以上の特徴は、他の実施態様と組み合わせることができる。本開示は、これらのオプションをユーザに定期的に想起させる。これらのオプションを繰り返す記述の幾つかの実施態様からの省略は、これまでのセクションで教示された組み合わせを限定するものとして解釈されるべきではない。これらの記載は、以下の実施態様のそれぞれに参考として援用される。
開示された技術の第1のシステムの実施態様は、メモリに接続された1以上のプロセッサを含む。メモリには、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ命令がロードされている。システムは、既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(APIと略記)を介してアクセスされていることを判定する。システムは、アクセスされているAPIに対してサービス固有のパーサが利用可能でないことを判定する。システムは、アクセスされているAPIに対してサービスのカテゴリを判定する。システムは、判定されたカテゴリに基づいてカテゴリ指向パーサを選択する。カテゴリ指向パーサは、そのカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含む。システムは、カテゴリ指向パーサを使用して、APIを介して伝達されるコンテンツを構文解析して、メタデータを収集し、カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てる。システムは、変数に割り当てられた収集されたメタデータを、APIを介して伝達されているコンテンツにデータ損失防止を適用するためのDLPプロセッサに送信する。
このシステムの実施態様及び開示された他のシステムは、以下の特徴の1以上を任意に含む。システムはまた、開示された方法に関連して説明された特徴を含むことができる。簡潔にするために、システムの特徴の代替的な組み合わせは、個々に列挙されない。システム、方法、及び製品に適用可能な特徴は、基本特徴の法定クラスセット毎に繰り返されない。読者は、このセクションで識別された特徴が、他の法定クラスの基本特徴とどのように容易に組み合わせることができるかを理解するであろう。
システムは、選択アクションにおいてアクセスされているAPIのために選択すべきカテゴリ指向パーサが利用可能でないかを判定し、次いで、汎用パーサを選択する。汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される少なくとも1つのデフォルト・マッチルールを含む。デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられる。システムは、選択された汎用パーサのマッチルールを使用して、APIを介して伝達されるコンテンツを構文解析し、収集されたメタデータを変数に割り当てる。
システムは、APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて、カテゴリ指向パーサを使用することを決定する。
複数のマッチルールは、カテゴリ指向パーサによって対処されるカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される少なくとも10のマッチルールを含む。複数のマッチルールは、それぞれがカテゴリ指向パーサによって対処されたカテゴリのサービスを実施するクラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される。
クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される。サービスの少なくとも5つのカテゴリによって供給されるサービスの別個のカテゴリは、サービス固有のパーサを有さない個人ページ及びブログを含む。サービスの少なくとも5つのカテゴリにおけるサービスの他のカテゴリは、サービス固有のパーサを有さないニュース・ウェブサイト、サービス固有のパーサを有さないクラウドベースのストレージ・サービス、サービス固有のパーサを有さないソーシャル・メディア・サービス、及びサービス固有のパーサを有さないウェブメール・サービスを含む。
APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、既知のクラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む。リクエスト・メッセージに続いて、クライアントからDLP検査の対象となるサーバへのコンテンツのアップロードが行われる。APIを介して伝達されるコンテンツからメタデータを収集することは、リクエスト・メッセージにレスポンスする既知のクラウドベースのサービスをホストするサーバからのレスポンスを処理することを更に含む。レスポンス・メッセージに続いて、DLP検査の対象となるサーバから、コンテンツがダウンロードされる。
APIを介して伝達されるコンテンツからのメタデータの収集は、クライアントから既知のクラウドベースのサービスをホストするサーバへの複数のリクエスト・メッセージの処理からのメタデータの蓄積を更に含む。
アクセスされるAPIへのカテゴリ指向パーサの適用は、以下を含む。システムは、APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URL)を構文解析することによって、既知のクラウドベースのサービスのドメイン名を識別する。これに続いて、システムは、ドメイン名を、利用可能なサービス固有のパーサのドメイン名のエントリリストと照合することによって、アクセスされているAPIに利用可能なサービス固有のパーサがないと判定する。システムは、カテゴリ指向パーサのドメイン名のエントリリスト内のドメイン名のマッチを見つける。
一実施態様において、システムは、構文解析されたURLリクエストから識別されたリソース記述を使用することによって、カテゴリ指向パーサの一部を起動することを含む。システムは、カテゴリ指向マッチルールを使用して、APIを介して伝達されるコンテンツからメタデータを収集する前に、URL内のパラメータを識別ルールにマッチさせる。これに続いて、システムは、カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てる。
複数のカテゴリ指向マッチルールにおけるマッチルールは、コンテンツ・ラベル(鍵とも呼ばれる)を識別する左側指定子と、複数のシンタックスからの特定のシンタックスにおけるコンテンツ・ラベルにマッチするための目標ラベルの右側指定子とを含む。或るカテゴリのサービスを実施する、既知のクラウドベースのサービスの多数の既知のプロバイダによって使用される複数のシンタックス。システムは、アサイン・ステートメントを使用することによって、成功裏に解決されたマッチルールの結果を保持する。成功裏に解決されたマッチルールに相関名を持つアサイン・ステートメントを使用すると、保持されている値がシステム変数に割り当てられる。
他の実施態様は、上述のシステムの機能を実行するためにプロセッサによって実行可能な命令を格納する非一時的なコンピュータ可読記憶媒体を含むことができる。更に別の実施態様は、上述したシステムの機能を実行する方法を含むことができる。
開示された技術の第1の方法の実施態様は、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用することを含む。方法は、既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(APIと略記)を介してアクセスされていることを判定することを含む。方法は、アクセスされているAPIに対してサービス固有のパーサが利用可能でないことを判定することを含む。方法は、アクセスされているAPIに対してサービスのカテゴリを判定することを含む。方法は、判定されたカテゴリに基づいてカテゴリ指向パーサを選択することを含む。カテゴリ指向パーサは、そのカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含む。方法は、カテゴリ指向パーサを使用して、APIを介して伝達されるコンテンツを構文解析して、メタデータを収集し、カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てることを含む。最後に、方法は、変数に割り当てられた収集されたメタデータを、APIを介して伝達されているコンテンツにデータ損失防止を適用するためのDLPプロセッサに送信することを含む。
第1のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、この方法の実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。
他の実施態様は、上述の第1の方法を実行するために、プロセッサによって実行される命令を格納する非一時的なコンピュータ可読記憶媒体を含むことができる。更に別の実施態様は、上述の第1の方法を実行するために、メモリと、そのメモリ内に格納された命令を実行するように動作可能な1以上のプロセッサを含むシステムを含むことができる。
開示された技術のコンピュータ可読媒体(CRM)の実施態様は、プロセッサ上で実行されることで上述した方法を実施するコンピュータ・プログラム命令を記憶した非一時的なコンピュータ可読記憶媒体を含む。
第1のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、このCRMの実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。
開示された技術の第2のシステムの実施態様は、メモリに接続された1以上のプロセッサを含む。メモリには、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ命令がロードされている。システムは、未知のクラウドベースのサービスが、サービス固有のパーサ及びカテゴリ指向パーサが利用可能でないアプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定する。システムは、未知のクラウドベースのサービスがアクセスされていることの判定に基づいて、汎用パーサを選択する。汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含む。デフォルト・マッチルールは、カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスに関連付けられる。システムは、選択された汎用パーサを使用して、APIを介して伝達されている前記コンテンツを構文解析し、メタデータを収集する。システムは、収集されたメタデータを変数に割り当てる。システムは、変数に割り当てられたメタデータと、メタデータが汎用パーサによって収集されたことを示すデータをDLPプロセッサに送信する。DLPプロセッサは、APIを介して伝達されているコンテンツにデータ損失防止を適用する。
第2のシステムの実施態様と開示された他のシステムは、上述の第1のシステムの実施態様と関連して議論された特徴の内の1つ以上を任意に含み得る。システムはまた、開示された方法に関連する特徴を含み得る。説明の簡潔のために、本出願で開示される特徴の別の組み合わせは個別に列挙されない。システム、方法、そして製品に適用可能な特徴は、基本特徴の各法定クラスセットに対して繰り返されない。読者は、本セクションで特定された特徴が、他の法定クラスにおける基本特徴とどのように容易に組み合わせることができるかを理解するであろう。
開示された技術の第2の方法の実施態様は、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用することを含む。方法は、未知のクラウドベースのサービスが、サービス固有のパーサ及びカテゴリ指向パーサが利用可能でないアプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定することを含む。方法は、未知のクラウドベースのサービスがアクセスされていることの判定に基づいて、汎用パーサを選択することを含む。汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含む。デフォルト・マッチルールは、カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスに関連付けられる。方法は、選択された汎用パーサを使用して、APIを介して伝達されている前記コンテンツを構文解析し、メタデータを収集することを含む。方法は、収集されたメタデータを変数に割り当てることを含む。最後に、方法は、変数に割り当てられたメタデータと、メタデータが汎用パーサによって収集されたことを示すデータをDLPプロセッサに送信することを含む。DLPプロセッサは、APIを介して伝達されているコンテンツにデータ損失防止を適用する。
第2のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、この方法の実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。
他の実施態様は、上述の第2の方法を実行するために、プロセッサによって実行される命令を格納する非一時的なコンピュータ可読記憶媒体を含むことができる。更に別の実施態様は、上述の第2の方法を実行するために、メモリと、そのメモリ内に格納された命令を実行するように動作可能な1以上のプロセッサを含むシステムを含むことができる。
開示された技術のコンピュータ可読媒体(CRM)の実施態様は、プロセッサ上で実行されることで上述した方法を実施するコンピュータ・プログラム命令を記憶した非一時的なコンピュータ可読記憶媒体を含む。
第2のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、このCRMの実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。
開示された技術の第3のシステムの実施態様は、メモリに接続された1以上のプロセッサを含む。メモリには、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ命令がロードされている。システムは、クラウドベースのサービスにアクセスするアプリケーション・プログラミング・インターフェース(API)を識別するデータを受信する。システムは、APIを識別する前記データに基づいて、アクセスされているAPIに対してサービス固有のパーサが利用可能でないことを判定する。
アクセスされているAPIに対してカテゴリ指向パーサが利用可能であると判定された場合、システムは、以下を実行する。システムは、アクセスされているAPIに対してサービスのカテゴリを判定し、システムは、判定されたカテゴリに基づいてカテゴリ指向パーサを選択する。カテゴリ指向パーサは、或るカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含む。
アクセスされているAPIに対してカテゴリ指向パーサが利用可能でないと判定された場合、システムは汎用パーサを選択する。汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含む。デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられる。
システムは、選択されたカテゴリ指向パーサまたは選択された汎用パーサのマッチルールを使用して、APIを介して伝達されているコンテンツを構文解析して、メタデータを収集する。システムは、カテゴリ指向マッチルールを使用して、選択されたカテゴリ指向パーサを介して収集されたメタデータを変数に割り当てる。システムは、デフォルト・マッチルールを使用して、選択された汎用パーサを介して収集されたメタデータを変数に割り当てる。最後に、システムは、変数に割り当てられた収集されたメタデータを、APIを介して伝達されているコンテンツにデータ損失防止を適用するためのDLPプロセッサに送信する。
このシステムの実施態様及び開示された他のシステムは、以下の特徴の1以上を任意に含む。システムはまた、開示された方法に関連して説明された特徴を含むことができる。簡潔にするために、システムの特徴の代替的な組み合わせは、個々に列挙されない。システム、方法、及び製品に適用可能な特徴は、基本特徴の法定クラスセット毎に繰り返されない。読者は、このセクションで識別された特徴が、他の法定クラスの基本特徴とどのように容易に組み合わせることができるかを理解するであろう。
システムは、アクセスされているAPIに対してサービス固有のパーサが利用可能でないと判定した場合、メタデータが汎用パーサによって収集されたことを示すデータを送信することを更に含み、収集されたメタデータを送信する。
システムは、アクセスされているAPIに対してカテゴリ指向パーサが利用可能かを判定する。
システムは、アクセスされているAPIに対してカテゴリ指向パーサが利用可能かを、APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて判定する。
複数のカテゴリ指向マッチルールは、カテゴリ指向パーサによって対処されるカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される少なくとも10のマッチルールを含む。複数のカテゴリ指向マッチルールは、それぞれがカテゴリ指向パーサによって対処されるカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される。
クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される。サービスの少なくとも5つのカテゴリによって供給されるサービスの別個のカテゴリは、サービス固有のパーサを有さない個人ページ及びブログを含む。サービスの少なくとも5つのカテゴリにおけるサービスの他のカテゴリは、サービス固有のパーサを有さないニュース・ウェブサイト、サービス固有のパーサを有さないクラウドベースのストレージ・サービス、サービス固有のパーサを有さないソーシャル・メディア・サービス、及びサービス固有のパーサを有さないウェブメール・サービスを含む。
APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、既知のクラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む。リクエスト・メッセージに続いて、クライアントからDLP検査の対象となるサーバへのコンテンツのアップロードが行われる。APIを介して伝達されるコンテンツからメタデータを収集することは、リクエスト・メッセージにレスポンスする既知のクラウドベースのサービスをホストするサーバからのレスポンスを処理することを更に含む。レスポンス・メッセージに続いて、DLP検査の対象となるサーバから、コンテンツがダウンロードされる。
第3のシステムの実施態様と開示された他のシステムは、上述の第1のシステムの実施態様と関連して議論された特徴の内の1つ以上を任意に含み得る。システムはまた、開示された方法に関連する特徴を含み得る。説明の簡潔のために、本出願で開示される特徴の別の組み合わせは個別に列挙されない。システム、方法、そして製品に適用可能な特徴は、基本特徴の各法定クラスセットに対して繰り返されない。読者は、本セクションで特定された特徴が、他の法定クラスにおける基本特徴とどのように容易に組み合わせることができるかを理解するであろう。
開示された技術の第3の方法の実施態様は、データ損失防止(DLPと略記)をクラウドベースのコンテンツ・サービスに適用することを含む。方法は、クラウドベースのサービスにアクセスするアプリケーション・プログラミング・インターフェース(API)を識別するデータを受信することを含む。方法は、APIを識別するデータに基づいて、アクセスされているAPIに対してサービス固有のパーサが利用可能でないことを判定することを含む。
アクセスされているAPIに対してカテゴリ指向パーサが利用可能であると判定された場合、方法は、以下を実行することを含む。アクセスされているAPIに対してサービスのカテゴリを判定し、判定されたカテゴリに基づいてカテゴリ指向パーサを選択すること。カテゴリ指向パーサは、或るカテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含む。
アクセスされているAPIに対してカテゴリ指向パーサが利用可能でないと判定された場合、方法は汎用パーサを選択することを含む。汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含む。デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられる。
方法は、選択されたカテゴリ指向パーサまたは選択された汎用パーサのマッチルールを使用して、APIを介して伝達されているコンテンツを構文解析して、メタデータを収集することを含む。方法は、カテゴリ指向マッチルールを使用して、選択されたカテゴリ指向パーサを介して収集されたメタデータを変数に割り当てることを含む。方法は、デフォルト・マッチルールを使用して、選択された汎用パーサを介して収集されたメタデータを変数に割り当てることを含む。最後に、方法は、変数に割り当てられた収集されたメタデータを、APIを介して伝達されているコンテンツにデータ損失防止を適用するためのDLPプロセッサに送信することを含む。
第3のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、この方法の実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。
他の実施態様は、上述の第3の方法を実行するために、プロセッサによって実行される命令を格納する非一時的なコンピュータ可読記憶媒体を含むことができる。更に別の実施態様は、上述の第3の方法を実行するために、メモリと、そのメモリ内に格納された命令を実行するように動作可能な1以上のプロセッサを含むシステムを含むことができる。
開示された技術のコンピュータ可読媒体(CRM)の実施態様は、プロセッサ上で実行されることで上述した方法を実施するコンピュータ・プログラム命令を記憶した非一時的なコンピュータ可読記憶媒体を含む。
第3のシステムの実施態様について、この特定の実施態様のセクションで議論された特徴のそれぞれは、このCRMの実施態様に対して等しく適用される。上述したように、全てのシステムの特徴は、ここでは繰り返されず、参照により繰り返されると見なされるべきである。

Claims (41)

  1. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ命令がロードされているメモリに接続された1以上のプロセッサを含むシステムであって、
    前記命令は、前記プロセッサ上で実行されると、
    既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    アクセスされている前記APIに対してサービス固有のパーサが利用可能でないことを判定すること、
    アクセスされている前記APIに対してサービスのカテゴリを判定すること、
    判定された前記カテゴリに基づいてカテゴリ指向パーサを選択すること、
    前記カテゴリ指向パーサは、前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含み、
    前記カテゴリ指向パーサを使用して、前記APIを介して伝達されるコンテンツを構文解析して、メタデータを収集し、前記カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられた前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含むアクションを実施するシステム。
  2. 前記選択するアクションにおいて、アクセスされている前記APIのために選択すべきカテゴリ指向パーサが利用可能でない場合、
    汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられ、
    前記選択された汎用パーサの前記マッチルールを使用して、前記APIを介して伝達されている前記コンテンツを構文解析し、前記収集されたメタデータを変数に割り当てること、を含むアクションを更に実施する請求項1に記載のシステム。
  3. 前記カテゴリ指向パーサを使用することの決定が、前記APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて行われる請求項1または2に記載のシステム。
  4. 前記複数のマッチルールは、前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの前記プロバイダによって使用される前記複数のシンタックスから導出される少なくとも10のマッチルールを含む請求項1〜3の何れか1項に記載のシステム。
  5. 前記複数のマッチルールは、それぞれが前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される請求項1〜4の何れか1項に記載のシステム。
  6. 前記クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される請求項1〜5の何れか1項に記載のシステム。
  7. 前記少なくとも5つのカテゴリ指向パーサによって供給される前記サービスの別個のカテゴリは、少なくとも、個人ページ及びブログ、ニュース・ウェブサイト、クラウドベースのストレージ・サービス、ウェブメール、及び、ソーシャル・メディア・サービスを含む請求項6に記載のシステム。
  8. 前記APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、前記既知のクラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む請求項1〜7の何れか1項に記載のシステム。
  9. 前記リクエスト・メッセージに続いて、前記クライアントからDLP検査の対象となる前記サーバへの前記コンテンツの前記APIを介したアップロードが行われる請求項8に記載のシステム。
  10. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ命令がロードされているメモリに接続された1以上のプロセッサを含むシステムであって、
    前記命令は、前記プロセッサ上で実行されると、
    未知のクラウドベースのサービスが、サービス固有のパーサ及びカテゴリ指向パーサが利用可能でないアプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    未知のクラウドベースのサービスがアクセスされていることの判定に基づいて、汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスに関連付けられ、
    前記選択された汎用パーサを使用して、前記APIを介して伝達されている前記コンテンツを構文解析し、メタデータを収集し、前記収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられ、前記メタデータが前記汎用パーサによって収集されたことを示すデータを伴う前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含むアクションを実施するシステム。
  11. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用する方法であって、
    既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    アクセスされている前記APIに対してサービス固有のパーサが利用可能でないことを判定すること、
    アクセスされている前記APIに対してサービスのカテゴリを判定すること、
    判定された前記カテゴリに基づいてカテゴリ指向パーサを選択すること、
    前記カテゴリ指向パーサは、前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含み、
    前記カテゴリ指向パーサを使用して、前記APIを介して伝達されるコンテンツを構文解析して、メタデータを収集し、前記カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられた前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含む方法。
  12. 前記カテゴリ指向パーサを使用することの決定が、前記APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて行われる請求項11に記載の方法。
  13. 前記複数のマッチルールは、前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの前記プロバイダによって使用される前記複数のシンタックスから導出される少なくとも10のマッチルールを含む請求項11または12に記載の方法。
  14. 前記複数のマッチルールは、それぞれが前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される請求項11〜13の何れか1項に記載の方法。
  15. 前記クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される請求項11〜14の何れか1項に記載の方法。
  16. 前記少なくとも5つのカテゴリ指向パーサによって供給される前記サービスの別個のカテゴリは、少なくとも、個人ページ及びブログ、ニュース・ウェブサイト、クラウドベースのストレージ・サービス、ウェブメール、及び、ソーシャル・メディア・サービスを含む請求項15に記載の方法。
  17. 前記APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、前記既知のクラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む請求項11〜16の何れか1項に記載の方法。
  18. 前記リクエスト・メッセージに続いて、前記クライアントからDLP検査の対象となる前記サーバへの前記コンテンツの前記APIを介したアップロードが行われる請求項17に記載の方法。
  19. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用する方法であって、
    クラウドベースのサービスにアクセスするアプリケーション・プログラミング・インターフェース(API)を識別するデータを受信すること、
    前記APIを識別する前記データに基づいて、アクセスされている前記APIに対してサービス固有のパーサが利用可能でないことを判定すること、
    (1)アクセスされている前記APIに対してカテゴリ指向パーサが利用可能であると判定された場合、
    アクセスされている前記APIに対してサービスのカテゴリを判定すること、及び、
    判定された前記カテゴリに基づいてカテゴリ指向パーサを選択すること、
    前記カテゴリ指向パーサは、前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含み、
    (2)アクセスされている前記APIに対してカテゴリ指向パーサが利用可能でないと判定された場合、
    汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられ、
    前記選択されたカテゴリ指向パーサまたは選択された汎用パーサの前記マッチルールを使用して、前記APIを介して伝達されている前記コンテンツを構文解析して、メタデータを収集し、前記カテゴリ指向マッチルールを使用して、前記収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられた前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含む方法。
  20. アクセスされている前記APIに対してサービス固有のパーサが利用可能でないと判定された場合、
    前記収集されたメタデータを送信することは、前記メタデータが前記汎用パーサによって収集されたことを示すデータを送信することを、更に含む請求項19に記載の方法。
  21. アクセスされている前記APIに対してカテゴリ指向パーサが利用可能かを判定することを更に含む請求項19または20に記載の方法。
  22. アクセスされている前記APIに対してカテゴリ指向パーサが利用可能かの判定が、前記APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて行われる請求項21に記載の方法。
  23. 前記複数のカテゴリ指向マッチルールは、前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの前記プロバイダによって使用される前記複数のシンタックスから導出される少なくとも10のマッチルールを含む請求項19〜22の何れか1項に記載の方法。
  24. 前記複数のカテゴリ指向マッチルールは、それぞれが前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される請求項19〜23の何れか1項に記載の方法。
  25. 前記クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される請求項19〜24の何れか1項に記載の方法。
  26. 前記少なくとも5つのカテゴリ指向パーサによって供給される前記サービスの別個のカテゴリは、少なくとも、個人ページ及びブログ、ニュース・ウェブサイト、クラウドベースのストレージ・サービス、ウェブメール、及び、ソーシャル・メディア・サービスを含む請求項25に記載の方法。
  27. 前記APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、前記クラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む請求項19〜26の何れか1項に記載の方法。
  28. 前記リクエスト・メッセージに続いて、前記クライアントからDLP検査の対象となる前記サーバへの前記コンテンツの前記APIを介したアップロードが行われる請求項27に記載の方法。
  29. メモリと1以上のプロセッサを備えたコンピュータ・システムであって、
    前記1以上のプロセッサによって実行された場合、前記コンピュータに請求項19〜28の何れか1項に記載の方法を実行させるコンピュータ可読命令を格納しているコンピュータ・システム
  30. 請求項19〜28の何れか1項に記載の方法を、1以上のプロセッサに実行させるように構成されたコンピュータ可読命令を搭載するコンピュータ可読媒体。
  31. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用する方法であって、
    未知のクラウドベースのサービスが、サービス固有のパーサ及びカテゴリ指向パーサが利用可能でないアプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    未知のクラウドベースのサービスがアクセスされていることの判定に基づいて、汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、前記カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスに関連付けられ、
    前記選択された汎用パーサを使用して、前記APIを介して伝達されている前記コンテンツを構文解析し、メタデータを収集し、前記収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられ、前記メタデータが前記汎用パーサによって収集されたことを示すデータを伴う前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含む方法。
  32. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ・プログラム命令を記憶した非一時的なコンピュータ可読記憶媒体であって、
    前記命令は、プロセッサ上で実行されると、
    既知のクラウドベースのサービスが、アプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    アクセスされている前記APIに対してサービス固有のパーサが利用可能でないことを判定すること、
    アクセスされている前記APIに対してサービスのカテゴリを判定すること、
    判定された前記カテゴリに基づいてカテゴリ指向パーサを選択すること、
    前記カテゴリ指向パーサは、前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される複数のカテゴリ指向マッチルールを含み、
    前記カテゴリ指向パーサを使用して、前記APIを介して伝達されるコンテンツを構文解析して、メタデータを収集し、前記カテゴリ指向マッチルールを使用して、収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられた前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含む方法を実施する非一時的なコンピュータ可読記憶媒体。
  33. 前記選択するアクションにおいて、アクセスされている前記APIのために選択すべきカテゴリ指向パーサが利用可能でない場合、
    汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、複数のカテゴリのサービスに関連付けられ、及び、
    前記選択された汎用パーサの前記マッチルールを使用して、前記APIを介して伝達されている前記コンテンツを構文解析し、前記収集されたメタデータを変数に割り当てること、を更に含む前記方法を実施する請求項32に記載の非一時的なコンピュータ可読記憶媒体。
  34. 前記カテゴリ指向パーサを使用することの決定が、前記APIにアクセスするために使用されるユニフォーム・リソース・ロケータ(URLと略記)内のドメイン名に基づいて行われる請求項32または33に記載の非一時的なコンピュータ可読記憶媒体。
  35. 前記複数のマッチルールは、前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの前記プロバイダによって使用される前記複数のシンタックスから導出される少なくとも10のマッチルールを含む請求項32〜34の何れか1項に記載の非一時的なコンピュータ可読記憶媒体。
  36. 前記複数のマッチルールは、それぞれが前記カテゴリ指向パーサによって対処される前記カテゴリのサービスを実施する、クラウドベースのコンテンツ・サービスの少なくとも25のプロバイダによって使用されるシンタックスから導出される請求項32〜35の何れか1項に記載の非一時的なコンピュータ可読記憶媒体。
  37. 前記クラウドベースのサービスは、サービスの別個のカテゴリにおける少なくとも5つのカテゴリ指向パーサによって供給される請求項32〜36の何れか1項に記載の非一時的なコンピュータ可読記憶媒体。
  38. 前記少なくとも5つのカテゴリ指向パーサによって供給される前記サービスの別個のカテゴリは、少なくとも、個人ページ及びブログ、ニュース・ウェブサイト、クラウドベースのストレージ・サービス、ウェブメール、及び、ソーシャル・メディア・サービスを含む請求項37に記載の非一時的なコンピュータ可読記憶媒体。
  39. 前記APIを介して伝達されるコンテンツからメタデータを収集することは、クライアントから、前記既知のクラウドベースのサービスをホストするサーバへのリクエスト・メッセージを処理することを更に含む請求項32〜38の何れか1項に記載の非一時的なコンピュータ可読記憶媒体。
  40. 前記リクエスト・メッセージに続いて、前記クライアントからDLP検査の対象となる前記サーバへの前記コンテンツの前記APIを介したアップロードが行われる請求項39に記載の非一時的なコンピュータ可読記憶媒体。
  41. データ損失防止(DLP)をクラウドベースのコンテンツ・サービスに適用するためのコンピュータ・プログラム命令を記憶した非一時的なコンピュータ可読記憶媒体であって、
    前記命令は、プロセッサ上で実行されると、
    未知のクラウドベースのサービスが、サービス固有のパーサ及びカテゴリ指向パーサが利用可能でないアプリケーション・プログラミング・インターフェース(API)を介してアクセスされていることを判定すること、
    未知のクラウドベースのサービスがアクセスされていることの判定に基づいて、汎用パーサを選択すること、
    前記汎用パーサは、クラウドベースのコンテンツ・サービスのプロバイダによって使用される複数のシンタックスから導出される、少なくとも1つのデフォルト・マッチルールを含み、前記デフォルト・マッチルールは、前記カテゴリ指向パーサによって対処される少なくとも2つのカテゴリのサービスに関連付けられ、
    前記選択された汎用パーサを使用して、前記APIを介して伝達されている前記コンテンツを構文解析し、メタデータを収集し、前記収集されたメタデータを変数に割り当てること、及び、
    前記変数に割り当てられ、前記メタデータが前記汎用パーサによって収集されたことを示すデータを伴う前記収集されたメタデータを、前記APIを介して伝達されている前記コンテンツにデータ損失防止を適用するためのDLPプロセッサに送信すること、を含む方法を実施する非一時的なコンピュータ可読記憶媒体。
JP2019537825A 2018-05-22 2018-09-14 カテゴリ指向パーサを用いたデータ損失防止 Active JP6740482B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/986,732 2018-05-22
US15/986,732 US11064013B2 (en) 2018-05-22 2018-05-22 Data loss prevention using category-directed parsers
PCT/US2018/051031 WO2019226189A1 (en) 2018-05-22 2018-09-14 Data loss prevention using category-directed parsers

Publications (2)

Publication Number Publication Date
JP2020522768A true JP2020522768A (ja) 2020-07-30
JP6740482B2 JP6740482B2 (ja) 2020-08-12

Family

ID=63896635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019537825A Active JP6740482B2 (ja) 2018-05-22 2018-09-14 カテゴリ指向パーサを用いたデータ損失防止

Country Status (4)

Country Link
US (3) US11064013B2 (ja)
EP (1) EP3590248B1 (ja)
JP (1) JP6740482B2 (ja)
WO (1) WO2019226189A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11403418B2 (en) 2018-08-30 2022-08-02 Netskope, Inc. Enriching document metadata using contextual information
US11425169B2 (en) * 2016-03-11 2022-08-23 Netskope, Inc. Small-footprint endpoint data loss prevention (DLP)
US11405423B2 (en) 2016-03-11 2022-08-02 Netskope, Inc. Metadata-based data loss prevention (DLP) for cloud resources
US11064013B2 (en) 2018-05-22 2021-07-13 Netskope, Inc. Data loss prevention using category-directed parsers
US11363018B2 (en) * 2019-08-06 2022-06-14 Bitglass, Llc Verifying user device access rights for application data requests
KR102171436B1 (ko) * 2019-12-16 2020-10-29 주식회사 레몬헬스케어 Api 통합관리를 위한 클라우드 기반의 api 메타데이터 관리방법 및 시스템
US11856022B2 (en) 2020-01-27 2023-12-26 Netskope, Inc. Metadata-based detection and prevention of phishing attacks
US11463362B2 (en) 2021-01-29 2022-10-04 Netskope, Inc. Dynamic token bucket method adaptive to opaque server limits
US11848949B2 (en) 2021-01-30 2023-12-19 Netskope, Inc. Dynamic distribution of unified policies in a cloud-based policy enforcement system
US11997127B2 (en) 2021-05-07 2024-05-28 Netskope, Inc. Policy based vulnerability identification, correlation, remediation, and mitigation
US11503038B1 (en) 2021-10-27 2022-11-15 Netskope, Inc. Policy enforcement and visibility for IaaS and SaaS open APIs
US11960494B1 (en) * 2022-06-16 2024-04-16 Databricks, Inc. Fetching query results through cloud object stores

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014501066A (ja) * 2010-10-29 2014-01-16 シマンテック コーポレーション 部分データストリームにおけるデータ損失の監視
WO2016186703A2 (en) * 2015-03-19 2016-11-24 Netskope, Inc. Systems and methods of monitoring, controlling and per-document encryption of enterprise information stored on a cloud computing service (ccs)
JP2017504092A (ja) * 2013-11-11 2017-02-02 アダロム・インコーポレイテッド クラウド・サービス・セキュリティ・ブローカおよびプロキシ
WO2017053571A1 (en) * 2015-09-22 2017-03-30 Google Inc. Systems and methods for data loss prevention while preserving privacy
WO2017156497A1 (en) * 2016-03-11 2017-09-14 Netskope, Inc. Middle ware security layer for cloud computing services
WO2018031778A1 (en) * 2016-08-10 2018-02-15 Netskope, Inc. Systems and methods of detecting and responding to a malware on a file system

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7027975B1 (en) * 2000-08-08 2006-04-11 Object Services And Consulting, Inc. Guided natural language interface system and method
US6959326B1 (en) * 2000-08-24 2005-10-25 International Business Machines Corporation Method, system, and program for gathering indexable metadata on content at a data repository
US7958164B2 (en) * 2006-02-16 2011-06-07 Microsoft Corporation Visual design of annotated regular expression
US8667146B2 (en) * 2008-01-26 2014-03-04 Citrix Systems, Inc. Systems and methods for configuration driven rewrite of SSL VPN clientless sessions
US8825854B2 (en) * 2008-11-24 2014-09-02 Sap Ag DMZ framework
US9069992B1 (en) * 2009-07-31 2015-06-30 Symantec Corporation System and method for reducing data loss prevention scans
US9098338B2 (en) * 2010-12-17 2015-08-04 Verizon Patent And Licensing Inc. Work flow command processing system
US20130287121A1 (en) * 2012-04-26 2013-10-31 Iucf-Hyu (Industry-University Cooperation Foundation Hanyang University) Method and apparatus for parsing bitstream, and generic parsing apparatus
US9621435B2 (en) * 2012-09-07 2017-04-11 Oracle International Corporation Declarative and extensible model for provisioning of cloud based services
US9270765B2 (en) 2013-03-06 2016-02-23 Netskope, Inc. Security for network delivered services
US10177967B2 (en) * 2013-03-15 2019-01-08 Jesse Lakes Redirection service resource locator mechanism
US9894119B2 (en) * 2014-08-29 2018-02-13 Box, Inc. Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms
US10038731B2 (en) * 2014-08-29 2018-07-31 Box, Inc. Managing flow-based interactions with cloud-based shared content
EP3040845A1 (en) * 2015-01-05 2016-07-06 Iguazio Systems Ltd. Service oriented data management and architecture
US20160226888A1 (en) * 2015-01-29 2016-08-04 Government Of The United States As Represetned By The Secretary Of The Air Force Web malware blocking through parallel resource rendering
WO2016138067A1 (en) * 2015-02-24 2016-09-01 Cloudlock, Inc. System and method for securing an enterprise computing environment
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US20170171020A1 (en) * 2015-12-14 2017-06-15 Microsoft Technology Licensing, Llc Using declarative configuration data to manage cloud lifecycle
US10523677B2 (en) * 2017-04-28 2019-12-31 Versata Development Group, Inc. Managing metadata for external content within a computing environment
US10838828B2 (en) * 2017-07-25 2020-11-17 Hubstor Inc. Methods and systems relating to network based storage
CN111357241B (zh) * 2017-10-30 2023-07-21 云蓝有限责任公司 使用自动化通用连接器封装将云应用程序集成到云服务代理平台中的系统和方法
US10235533B1 (en) * 2017-12-01 2019-03-19 Palantir Technologies Inc. Multi-user access controls in electronic simultaneously editable document editor
US10776189B2 (en) * 2017-12-22 2020-09-15 MuleSoft, Inc. API query
US20190295011A1 (en) * 2018-03-20 2019-09-26 Xingjian Duan Distributed computer framework for data analysis, risk management, and automated compliance
US11064013B2 (en) 2018-05-22 2021-07-13 Netskope, Inc. Data loss prevention using category-directed parsers

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014501066A (ja) * 2010-10-29 2014-01-16 シマンテック コーポレーション 部分データストリームにおけるデータ損失の監視
JP2017504092A (ja) * 2013-11-11 2017-02-02 アダロム・インコーポレイテッド クラウド・サービス・セキュリティ・ブローカおよびプロキシ
WO2016186703A2 (en) * 2015-03-19 2016-11-24 Netskope, Inc. Systems and methods of monitoring, controlling and per-document encryption of enterprise information stored on a cloud computing service (ccs)
WO2017053571A1 (en) * 2015-09-22 2017-03-30 Google Inc. Systems and methods for data loss prevention while preserving privacy
WO2017156497A1 (en) * 2016-03-11 2017-09-14 Netskope, Inc. Middle ware security layer for cloud computing services
WO2018031778A1 (en) * 2016-08-10 2018-02-15 Netskope, Inc. Systems and methods of detecting and responding to a malware on a file system

Also Published As

Publication number Publication date
US20190364097A1 (en) 2019-11-28
EP3590248B1 (en) 2020-09-09
US20190364095A1 (en) 2019-11-28
JP6740482B2 (ja) 2020-08-12
US11064013B2 (en) 2021-07-13
US11575735B2 (en) 2023-02-07
US20210344746A1 (en) 2021-11-04
EP3590248A1 (en) 2020-01-08
US11064016B2 (en) 2021-07-13
WO2019226189A1 (en) 2019-11-28

Similar Documents

Publication Publication Date Title
JP6740482B2 (ja) カテゴリ指向パーサを用いたデータ損失防止
CN109314704B (zh) 用于多租户身份和数据安全管理云服务的单点登录和单点注销功能
CN112088373B (zh) 用于多租户身份云服务的声明性第三方身份提供者集成
CN109565511B (zh) 用于多租户身份和数据安全管理云服务的租户和服务管理
CN107852417B (zh) 多租户身份和数据安全性管理云服务
CN112154639B (zh) 在没有用户足迹的情况下的多因素认证
CN106716404B (zh) 计算机子网内的代理服务器
US8555339B2 (en) Identifying guests in web meetings
US9055068B2 (en) Advertisement of conditional policy attachments
US20180077144A1 (en) Single logout functionality for a multi-tenant identity and data security management cloud service
US11159576B1 (en) Unified policy enforcement management in the cloud
US8898731B2 (en) Association of service policies based on the application of message content filters
US11907393B2 (en) Enriched document-sensitivity metadata using contextual information
CN112805699A (zh) 具有内部部署的认证集成的多租户身份云服务
US11334529B2 (en) Recommending files for file sharing system
Kornienko et al. Principles of securing RESTful API web services developed with python frameworks
WO2022165061A1 (en) Unified policy enforcement management in the cloud
US11477296B2 (en) Dynamic user group management in group-based communication systems
US11586530B2 (en) Methods and systems for correctly assembling component sequences
US11503038B1 (en) Policy enforcement and visibility for IaaS and SaaS open APIs

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190716

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190716

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190716

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200520

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200722

R150 Certificate of patent or registration of utility model

Ref document number: 6740482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250