JP2019519833A - 解析データセットのための細粒セキュリティ - Google Patents

解析データセットのための細粒セキュリティ Download PDF

Info

Publication number
JP2019519833A
JP2019519833A JP2018554013A JP2018554013A JP2019519833A JP 2019519833 A JP2019519833 A JP 2019519833A JP 2018554013 A JP2018554013 A JP 2018554013A JP 2018554013 A JP2018554013 A JP 2018554013A JP 2019519833 A JP2019519833 A JP 2019519833A
Authority
JP
Japan
Prior art keywords
security
data
data field
fields
level security
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
JP2018554013A
Other languages
English (en)
Other versions
JP6751771B2 (ja
JP2019519833A5 (ja
Inventor
マイケル ティマーマン,ジャン
マイケル ティマーマン,ジャン
シュナイダー,ドノヴァン
ギテルマン,アレックス
Original Assignee
セールスフォース ドット コム インコーポレイティッド
セールスフォース ドット コム インコーポレイティッド
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 セールスフォース ドット コム インコーポレイティッド, セールスフォース ドット コム インコーポレイティッド filed Critical セールスフォース ドット コム インコーポレイティッド
Publication of JP2019519833A publication Critical patent/JP2019519833A/ja
Publication of JP2019519833A5 publication Critical patent/JP2019519833A5/ja
Application granted granted Critical
Publication of JP6751771B2 publication Critical patent/JP6751771B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • G06F16/2456Join operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

開示される技術は、超高速で、アドホックなデータ探索、および、統合された、異種混合のデータセット上のファセットナビゲーションのために、プライマリソースからバッチベースで抽出され、かつ、分析的な、読み取り専用データベースへとコンパイルされたフィールドに対してフィールドレベルセキュリティを割り当てることに関する。本方法は、抽出されたフィールドに対するフィールドレベルセキュリティをデータベースソースにおける参照フィールドに対してピン留めすることを伴い、抽出されたフィールドを生成するソースフィールドからのフィールドレベルセキュリティのユーザ選択可能なインヘリタンスを組み合わせることによって、抽出されたフィールドに対してフィールドレベルセキュリティを割り当てること、を含む。ここで、参照フィールドは、抽出されたフィールドとは異なるものである。開示される方法は、また、セキュアでないデータセットとして追加的なフィールドを受信すること、および、受信したフィールドに対するフィールドレベルセキュリティをデータベースソースにおける参照フィールドに対してピン留めすることを伴い、受信したフィールドに対するフィールドレベルセキュリティのユーザ選択可能な明示的スペックを結合することによって受信された、追加的なフィールドに対してフィールドレベルセキュリティを割り当てること、を含む。

Description

本発明は、超高速な、アドホックデータ探索、および、統合され、異種混合のデータセットにおけるファセットナビゲーション(faceted navigation)の技術分野に関する。
本特許出願は、2016年4月14日付の米国特許出願第15/099533号、タイトル”FINE GAIN SECURITY FOR ANALYTIC DATA SETS”(文書管理番号SALE1147−1/1699US)に基づく優先権を主張するものである。本関連出願は、全ての目的のためにここにおいて参照として包含されている。
本特許出願は、2014年10月10日付の米国特許出願第14/512230号、タイトル”ROW−LEVEL SECURITY INTEGRATION OF ANALYTICAL DATA STORE WITH CLOUD ARCHITECTURE”(文書管理番号SALE1096−1/1451US)に関連する。この特許出願において説明されるように、このような読取り専用データベースにおけるインデックス付きフィールドは、ディメンション(dimension)と呼ばれ、そして、数量フィールドはメジャー(measures)と呼ばれ得る。より詳細な説明は、関連する特許出願において見出され、優先権を主張する出願にも組み込まれているように、全ての目的のためにここにおいて参照として包含されている。
背景技術セクションにおいて説明される技術的事項(subject matter)は、単に背景技術セクションにおいて言及した結果として先行技術であると仮定されるべきではない。同様に、背景技術セクションにおいて、または、背景技術セクションの技術的事項に関連して言及された問題は、先行技術において以前に認識されていたものと仮定されるべきではない。背景技術セクションにおける技術的事項は、単に異なるアプローチを表すに過ぎないものであり、請求される発明の実施にも対応し得るものである。
ビジネスでは、情報を得たビジネス上の決定を下すために、分析されている大量のデータセットについて、クエリ(query)し、かつ、クエリ結果をリアルタイムに検討する能力が必要である。分析データセット(analytics dataset)は、アドホッククエリ分析(ad-hoc query analysis)のために最適化されたフィールドの具体化された(materialized)されたコレクションを含んでいる。あらゆるクエリについて1秒以内(sub-second)のクエリ応答を可能にするためである。データセットの分野に対するセキュリティは、ビジネスにとって非常に重要である。
ビジネスの顧客は、いくつかのオブジェクトについて数百のカスタムデータフィールドを含む、内部コンテンツ管理システム(CRM)と、他のエンタープライズシステムを含む、外部エンティティとの両方からのデータセットに対してデータセキュリティを必要とする。CRMデータセキュリティは、セールス、サービスマーケティング、ソーシャルネットワーキングコミュニティ、分析、カスタマイズされたアプリケーション、および、モノのインターネット(Internet of Things、IoT)を含む、エンタープライズビジネスに係る多くの広範なカテゴリにおいて極めて重要である。データセキュリティは、また、外部ソースからのデータに対しても重要である。分析プラットフォーム(analytics platform)へ直接的にアップロードされたカンマ区切り値(comma separated value、CSV)ファイルを介して受信できるものである。加えて、ビジネスには、既存のデータセットを組み合わせることによって作成されたデータセットに対して効果的なデータセキュリティが必要である。
セキュリティ要求は、大量のデータについてビジネス分析を「ライブで(”live”)」提供するシステムのために、データと機能へのユーザクセスをコントロールし、かつ、制限する機能に対する必要性を駆り立てている。データセキュリティは、ユーザがログインできる時期、場所、方法といった組織レベルの機能(organization-level features)、各オブジェクトのレコードについてユーザが実行できるアクション(例えば、作成、読取り編集、削除)を決定するオブジェクトレベルの許可(object-level permissions)、および、デフォルト設定、共有ルール、等を通してアクセスを許可するレコードレベルの許可(record-level permissions)を含み得る。加えて、レポート、視覚化デザイン、電子メールテンプレート、および文書を含む企業の様々なデータを保護するためにフォルダ構成(folder organization)を使用することができ、フォルダアクセス(folder access)をパブリックに設定することができ、または、ロールベース(role-based)でアクセスを提供することもできる。データのフィールドレベルの許可は、1回の実施においてオブジェクトのレコードに対してユーザが閲覧および編集できるフィールドを指定する(例えば、閲覧可能かつ読取り専用を指定する)。
ダッシュボードとして表示される単一の視覚化レンズまたはレンズ群を介して、異なるセキュリティプロファイルを持つユーザに対して分析結果を展開することが望ましい場合には、データフィールドレベルセキュリティ(FLS)が必要とされるか、または、そうでなければ、各ユーザまたはユーザプロファイルの権限(permissions)に応じて様々なフィールド数を有するデータセットのコピーを作成する必要があるか、いずれかである。このことは、レンズのコピーを作成し、かつ、データセットを変更し、そして、次いで、ユーザがセキュリティ権限(security permissions)を持つデータセットおよびレンズに対するユーザクセスをコントロールするようにアプリケーション共有を構成するシステムを要求する。複数の同様なデータセットを作成する第2のオプションは、すぐにメンテナンスとセキュリティの問題となり、そして、著しいシステムパフォーマンスの影響を生じさせ得るものである。代替的に、フィールドレベルのセキュリティを使用する第1のオプションにより、異なるセキュリティプロファイルを持つ複数のユーザにわたり単一のレポートを共有することができ、一方で、ユーザはアクセスが許可されたデータフィールドだけを閲覧することが確保されている。
一つの使用例において、給与のような機密フィールドに対するアクセスは、従業員、人事(HR)管理者、および経営幹部に限定される必要があり、そして、他の全てのユーザに対して読取りアクセスを禁止する必要がある。FLSを使用して、HR管理者プロファイルを持つレポート作成者は、従業員の給与を含むレポートを作成でき、そして、レポート作成者は、HR以外の管理者がそのフィールドまたはデータを閲覧しないことの完全な保証を伴って、レポートを全てのHRユーザと確信をもって共有することができる。
別の使用例において、個人の健康データは、健康保険可搬性および説明責任法(Health Insurance Portability and Accountability Act、HIPAA)のプライバシールールに準拠するように保護される必要がある。この例において、患者データの重要情報閲覧者(医者および医師のアシスタントといった人)は、彼らが診断記述および処方情報を含むデータフィールドを閲覧することができることを指定するプロファイルを有している。− 医療施設の事業所内の会計係は見る必要がないであろうフィールドである。
開示される技術は、統合された、異種混合のデータセットにおけるデータフィールドレベルのセキュリティを特定すること、および、実施することに関する。
例示的で非限定的な実施の様々な態様について基本的または一般的な理解を可能にするのに役立つように、ここにおいて簡略化された概要が提供される。実装形態は、より詳細な説明および添付の図面に続いている。しかしながら、この概要は、広範囲にわたるまたは包括的な概要として意図されたものではない。代わりに、この概要の唯一の目的は、以下に続く様々な実装のより詳細な説明に対する前置きとして、いくつかの例示的で非限定的な実装形態に関連するいくつかの概念を簡略化した形で提示することである。
開示されるシステムおよび方法は、フィールドレベルセキュリティを、バッチベース(batch basis)でプライマリソースから抽出され、かつ、分析の、読取り専用データベースの中へコンパイルされたデータフィールドに対して割り当てるために使用可能である。本方法は、抽出されたフィールドを生成するソースフィールドからのフィールドレベルセキュリティに係るユーザ選択可能なインヘリタンスを組み合わせることによって割り当てることを含み、抽出されたフィールドに対するフィールドレベルセキュリティのインヘリタンス(inheritance)をデータベースソースにおける参照フィールドに対してピン留めする(pinning)ことを伴うものであり、ここで、参照フィールドは抽出されたフィールドとは異なるものである。
開示される方法は、また、セキュアでないデータセットとして追加フィールドを受信すること、および、追加フィールドに対してフィールドレベルセキュリティを割り当てることも含んでいる。追加フィールドは、受信したフィールドのためのフィールドレベルセキュリティのユーザ選択可能な明示的なスペック(specification)を、受信したフィールドのためのフィールドレベルセキュリティのインヘリタンスをデータベースソースにおける参照フィールドにピン留めすることと結合することによって受信されるものである。
開示される技術の他の態様および利点は、以降の図面、詳細な説明、および請求項を検討することによって理解することができる。
添付される図面は、説明目的のものであり、そして、この開示に係る1つまたはそれ以上の実装形態のための可能な構造およびプロセスオペレーションの実施例を提供するためだけに役立つものである。これらの図面は、この開示の精神および範囲から逸脱することなく、当業者によってなされ得る形態および詳細におけるいかなる変更も決して限定するものではない。技術的事項のより完全な理解は、以下の図面と併せて考慮するときに、詳細な説明および請求項を参照することによって導き出すことができる。ここで、図面の全体を通じて同様な参照番号は同様な要素を示している。
図1は、フィールドレベルセキュリティを伴う一つの例示的なビジネス情報および分析アーキテクチャ環境を示している。 図2は、一つの分析クラウド環境のためのデータソースの例についてブロック図を示している。 図3は、2つの結合され、かつ、変換されたデータセットの組み合わせについて一つの例示的なフィールドレベルセキュリティ属性を示している。 図4は、リモート要求(remote request)のために交換されたメッセージを伴う一つの例示的なブロック図を示している。 図5は、複数のレンズを用いたダッシュボードの一つの例を示している(従来技術)。 図6は、セキュアなデータベースからのデータのフィールドに対してデータのセキュリティを実装するためのフローについて一つの概要を示している。 図7は、分析データセットについて細粒セキュリティを実施することができる一つの例示的なマルチテナントコンピュータシステムのブロック図である。
以下の詳細な説明は、図面を参照して行われる。実施例は、開示される技術を、その範囲を限定することなく説明するために記載されるものであり、特許請求の範囲は請求項によって規定される。当業者であれば、以下の説明について様々な均等な変形を認識するだろう。
洞察データ分析(insight data analysis)は、データ視覚化(data visualizations)に係るデータ探索、ダッシュボード構築、および宣言的表現(declarative representation)をサポートしている。探索およびリプレイ探索の最中には、データフィルタリング、グループ化、およびプレゼンテーションフォーマットにおける変更がアニメーション化され、変更がデータ値をどのように再配分するかを示している。単独で又は組み合わせにおいて、これらの機能は、データ分析およびプレゼンテーションの成功に貢献することができる。
単一パネルのデータ探索およびリプレイの最中には、新しいデータの視覚化がそれらがデザインされるようにアニメーション化される。データセグメントについてドリルダウン(drill down)することは、例えば、元のデータセグメントを選択された再グループ化に従って細分化させ、そして、アニメーション化された細分化の成長および再構成を通じて、より細かい(granular)データの視覚化へと視覚的に進歩させる。このことは、分析者が、データを理解し、そして、続いて、プロセス並びに数字に興味がある同僚に対して重要なデータセグメントを説明するのに役立つ。
分析データセットについて細粒セキュリティ(fine grain security)のための開示される方法は、異なるセキュリティプロファイルを持つユーザ間で共有されるべきデータをレポートする単一のダッシュボードの使用をサポートし、一方で、ユーザは彼らがアクセスを許可されたフィールドだけを閲覧することを確保している。
開示される実装形態に従ったシステム、装置、および方法の例は、「販売機会(”sales opportunity”)」のコンテクストにおいて説明されている。リード(leads)、見込み(prospects)、およびアカウント(accounts)といった、販売コンタクト(sales contacts)の例は、コンテクストを追加し、かつ、開示される実装形態の理解を援助するためだけに使用されている。他のインスタンスにおいて、多数の要素を伴うデータは、医療システム診断および検査結果、保険請求、カスタマーサービスコールルーティング、等、または、かなりの数の特徴を有するであろう任意のデータを含んでよい。他のアプリケーションも可能であるので、以下の例は、範囲、コンテクスト、または設定のいずれにおいても最終的または限定的なものとして理解されるべきではない。当業者には、従って、「販売機会」のコンテクストの中または外側で実施が行われ得ることが、明らかであろう。
フィールドレベルセキュリティ環境
図1は、フィールドレベルセキュリティ環境100における分析データセットについて細粒セキュリティを実施するための一つの環境を示しており、分析読取り専用データストア(data store)102、セキュアなCRMデータストア104、外部データストア142、および、マルチテナントCRMコンピューティングサービス106を含んでいる。マルチテナントCRMコンピューティングサービス106における、FLSフィルタ116は、フィールドレベルセキュリティロールおよびクエリ要求者の権限に基づいて、大きなデータセットをフィルタする。
分析読取り専用データストア102は、読取り専用データセットを含んでいる。分析される大量のデータセットについて、探索し、かつ、リアルタイムで探索結果を閲覧するために使用可能な、複数のユーザのフィールドレベルセキュリティ属性を有するものである。セキュアなCRMデータストア104は、一つの例において、マルチテナントCRMコンピューティングサービス106からバッチベースで抽出されたデータセットを含んでいる。抽出されたフィールドに対するフィールドレベルセキュリティは、抽出されたフィールドを生成するソースフィールドからのフィールドレベルセキュリティに係るユーザ選択可能なインヘリタンスを組み合わせることによって割り当てることができる。抽出されたフィールドに対するフィールドレベルセキュリティのインヘリタンスをデータベースソースにおける参照フィールドに対してピン留めすることを伴うものであり、ここで、参照フィールドは抽出されたフィールドとは異なるものである。大規模なデータリポジトリから取得された(抽出された)データは、関連するフィールドレベルセキュリティと共に、分析読取り専用データストア102へとコンパイルすることができ、そして、「生の(”raw”)」データセットを作成するために使用することができる、−分析のための読取り専用データ構造であり、増大、変換、平坦化、等がなされ、かつ、ビジネスエンティティのための顧客が視認可能(customer-visible)なデータセットとして発行され得るものである。
外部データストア142は、企業のコンテンツ管理システムの一部ではないソースからのデータを含み得る。外部システムの例は、これらに限定されるわけではないが、SAPTM、ORACLE E-BUSINESSTM、PEOPLESOFTTM、NETSUITETM、およびWORKDAYTMを含んでいる。このデータには、顧客の購入履歴、人口統計学的特性(demographics)、関係性、およびプリファレンスを含み得る。一つの例において、データは、スプレッドシート形式で提供される、競合他社についての販売クオータ(quotas)を表すコンマ区切り値(CSV)として表現することができる。フィールドレベルセキュリティは、スプレッドシートのデータ表現の中に含まれ得るものであり、または、管理者によりユーザ選択可能なものであり得る。外部データストア142は、また、外部ソースから受信したデータも含み得るものであり、そのフィールドレベルセキュリティは、フィールドに対するフィールドレベルセキュリティに係るユーザ選択可能な明示的なスペックを組み合わせることによって、追加的に受信されたフィールドに対して割り当てられる。データは、他の形式においても受信され得る、−これらに限定されるわけではないが、その他のデリミタ区切り(delimiter-separated)フォーマット、ビットマップ画像、異なるタイプのマルチメディアのためのOggフォーマットコンテナ、および、独占的(proprietary)なファイルフォーマットを含んでいる。
図1に示される環境は、異種混合(heterogeneous)のデータソース及び関連する探索を取り扱う分析サーバ162、および、複数のソースからのフィールドレベルセキュリティメタデータを管理するための内部FLSエンジン156を伴う分析FLSエンジン146、−承継され、ピン留めされ、かつ、ユーザ選択可能なFLSを含んでいるもの、を有する。加えて、ネットワーク145は、ここにおいて説明されるデータストア、サーバ、およびエンジン間で通信するものである。
環境においては、また、GUIクライアントエンジン166も示されている。ライブビジネス分析レンズとダッシュボードを鑑賞するため、および、「ライブ(”live”)」分析データのニュアンス(nuances)を探索するために新規かつ更新されたクエリ要求を受け入れるためのレンズおよびダッシュボードビルダ178を伴う視覚化ディスプレイエンジン176を含むものである。これらの要求は、サービスのために分析サーバ162に対してルート(routed)され得る。レンズおよびダッシュボードビルダ178は、ダッシュボードをデザインして、リアルタイムなデータ探索結果として複数のレンズを表示している。つまり、アナリストは、複数のクエリ結果のセットのための表示チャートを単一のダッシュボード上に配置することができる。グローバルフィルタへの変更がダッシュボード上の任意の表示チャートに影響を与える場合、ダッシュボード上の残りの表示チャートは、変更を反映するために更新される。正確なライブクエリー結果が、クエリ結果を要求しているユーザのフィールドレベルセキュリティ権限に従って、ダッシュボード上のディスプレイレンズのセットにわたり生成され、かつ、表示される。GUIクライアントエンジン166は、−モバイルアプリケーション165またはユーザコンピューティングデバイス164のユーザについて、分析クエリ要求および分析サーバ162への応答のフローを管理する。
所望のセキュリティプロファイル属性を有するフィールドを有する参照テーブルを作成することができ、そして、分析テーブルにおけるフィールドを参照テーブルにおけるフィールドに対してピン留めすることができる。つまり、フィールドに対するフィールドレベルセキュリティは、データストアにおいて既存の列(columns)と属性にバインドして、テーブルにおける参照フィールドから継承(inherit)することができる。
GUIクライアントエンジン166は、また、分析読取り専用データストア102におけるフィールドに対してセキュリティメタデータオプションを選択し、かつ、構成するための管理者により使用可能であるユーザ選択可能なFLSインターフェイス186も含んでいる。
マルチテナントCRMコンピューティングサービス106は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または、あらゆる他のデータ処理システムまたはコンピューティングデバイスを含む、様々なタイプのものであり得る。そして、ネットワーク145は、相互に通信するデバイスの任意のネットワークまたはネットワークの組み合わせであり得る。例えば、マルチテナントCRMコンピューティングサービス106は、LAN(ローカルエリアネットワーク)、WAN(ワイドエリアネットワーク)、電話ネットワーク(公衆交換電話網(PSTN)、セッションイニシエーションプロトコル(SIP)、3G、4G LTE)、無線ネットワーク、ポイントツーポイントネットワーク、スターネットワーク、トークンリングネットワーク、ハブネットワーク、WiMAX、Wi-Fi、ブルートゥース(登録商標)のようなピアツーピア接続、近距離無線通信(NFC)、Z-Wave、ZigBee、または、インターネットを含む、データネットワークの他の適切な構成、のうち1つ又は任意の組み合わせを使用して実施され得る。他の実装形態においては、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、非TCP/IPベースのネットワーク、任意のLANまたはWAN等といった、他のネットワークが使用され得る。
分析読取り専用データストア102、セキュアなCRMデータストア104、外部データストア142、および、マルチテナントCRMコンピューティングサービス106は、汎用分散メモリキャッシュシステムを使用して実施され得る。いくつかの実装形態において、データ構造は、1つまたはそれ以上のテナントからの情報を共通データベースイメージのテーブルの中へ保管することができ、オンデマンドデータベースサービス(ODDS)を形成する。マルチテナントデータベースシステム(MTDS)といった、多くの方法で実施され得るものである。データベースイメージは、1つまたはそれ以上のデータベースオブジェクトを含み得る。他の実装形態において、データベースは、リレーショナルデータベース管理システム(RDBMS)、オブジェクト指向データベース管理システム(OODBMS)、分散ファイルシステム(DFS)、スキーマなし(no-schema)データベース、または、あらゆる他のデータ記憶システム又はコンピューティングデバイス、であり得る。分析読取り専用データベースでは、2000万件を超えるレコードを検索し、かつ、選択されたレコードから集計統計をコンパイルするときに、2秒未満の応答時間を実施することができる。
いくつかの実装形態において、ユーザコンピューティングデバイス164は、パーソナルコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のモバイルコンピューティングデバイス、パーソナルデジタルアシスタント(PDA)、デジタルイメージキャプチャデバイス、等であり得る。いくつかの実装形態において、ユーザモバイルデバイス165は、タブレットコンピュータ、スマートフォンまたは他のモバイルコンピューティングデバイス、パーソナルデジタルアシスタント(PDA)、デジタルイメージキャプチャデバイス、等であり得る。
視覚化ディスプレイエンジン176およびユーザ選択可能なFLSインターフェイス186は、ブラウザにおいて又はアプリケーションとして動作している、多数の形態のうち1つをとることができる。ユーザインターフェイス、ダッシュボードインターフェイス、エンゲージメントコンソール、および、モバイルインターフェイス、タブレットインターフェイス、サマリインターフェイス、またはウェアラブルインターフェイスといった、他のインターフェイスを含んでいるものである。いくつかの実装形態においては、オンプレミス(on-premise)環境におけるWebベースまたはクラウドベースのサーバ上でホストされ得る。一つの実装形態において、視覚化ディスプレイエンジン176およびユーザ選択可能なFLSインターフェイス186は、コンピューティングデバイス上で動作しているブラウザからアクセスされ得る。ブラウザは、CHROMETM、INTERNET EXPLORERTM、FIREFOXTM、SAFARITM、OPERATM、等であり得る。他の実装形態において、視覚化ディスプレイエンジン176およびユーザ選択可能なFLSインターフェイス186は、コンピュータデスクトップアプリケーション上のエンゲージメントコンソール(engagement console)として動作し得る。
他の実装形態において、フィールドレベルセキュリティ環境100は、上記に列挙されたものと同じ要素またはコンポーネントを有さなくてよく、かつ/あるいは、上記に列挙されたものの代わりに、または、加えて、Webサーバおよびテンプレートデータベースといった要素またはコンポーネントを有してよい。異なる要素またはコンポーネントを単一のソフトウェアモジュールへと組み合わせることができ、そして、複数のソフトウェアモジュールを同じハードウェア上で実行することができる。データセキュリティは、一つのシステムについてデータフローにおける複数のレベルにおいて考慮される。次に、一つの実施例が説明される。
図2は、データフロー図の一つの例を示しており、これらに限定されるわけではないが、CRMデータ242および外部データ292を含んでいる。分析クラウド245について、アプリケーション254は、CRMデータ242および外部データ292からのデータを組み込むデータセット264を含んでいる。データセット264は、レンズ265として示される(rendered)。ダッシュボード266は、ユーザ268に対してCRMデータ242および外部データ292に基づく分析を配信するために、複数のレンズ265を表示することができる。
一つのユースケース(use case)において、企業のための管理者は、会社のCRMデータ242へのアクセスをコントロールする。データセット所有者は、データセット264に係るレコードに対するアクセスをコントロールする。アプリケーションの所有者、管理者、および十分な許可を有するユーザ(例えば、アプリケーションに対するアクセスを認められたマネージャ)は、アプリケーションの中のデータセット264、レンズ265、およびダッシュボード266に対するアクセスをコントロールする。フィールドレベルセキュリティを介して細粒セキュリティを提供するための開示される方法は、ユーザ268は、彼らが許可を有するデータだけを見ることを確保することができる。構築時にCRMリレーショナルデータベースから切り離された抽出データセットに対してセキュリティを適合させることができる。
セキュリティは、また、異なるインフラストラクチャおよびセキュリティモデルの下で動作している、外部ソースから抽出され、そして、抽出されたCRMデータと組み合されたデータを取り扱うように適合させることもできる。一つの例示的なユースケースにおいて、大企業は、競合するボート(boat)ブランドについて月毎にボートのセールスを調査しており、一方で、調査データがチーフインテリジェンスオフィサ(CIO)であるシニアITリーダー、マーケティングリーダー、およびサプライチェーンリーダーを対象とするデータ統合企業から引き出された最近のローン(load)を分析していてよい。つまり、複数の外部ソースからの異種混合のデータを、彼らのプロファイルが必要とされるフィールドレベルセキュリティをカバーするユーザのために、ダッシュボード上に含めることができる。
いくつかのユースケースについては、複数のデータセットが結合され、かつ、変換されることを必要とし、そして、データが結合された2つまたはそれ以上のオブジェクトにおけるフィールドレベルのセキュリティ設定の組み合わせに基づいて、結果フィールド(resultant field)についてフィールドレベルセキュリティを計算することができる。
以下の検討は、ビジネスの難局を明らかにすることができる「ライブ(”live”)」データ分析の配信を促進するためのデータセットの結合および変換の使用の動機を与える。様々なタイプのオンデマンドトランザクションデータ管理システムを分析データストアと統合することができ、データアナリストに対してトランザクションデータ管理システムを検索するためのアドホックを提供する。このことは、数値、メトリック、および測定値を使用する分析アプリケーションの迅速な構築を促進することができ、トランザクションデータ管理システムに保管されたトランザクションデータからビジネスインテリジェンス(business intelligence)を推進し、かつ、組織の意思決定を支援する。トランザクションデータは、組織のオペレーションをサポートするデータオブジェクトを参照するものであり、そして、営業、サービス、銀行業務、受注管理、製造、医療記録、購買、課金、等といった、異なる分野における主要なビジネスプロセスを自動化するアプリケーションシステムの中に含まれている。トランザクションデータのいくつかの例は、企業データ(例えば、注文入力、サプライチェーン、出荷、請求書)、販売データ(口座、リード、機会)、医療データ(診断、処方箋、請求)、等を含んでいる。
抽出(extraction)は、一つの実装形態に従って、トランザクションデータストアからトランザクションデータを取得するタスクを参照するものである。このことは、データベースまたはスプレッドシートからフラットファイルをダウンロードするのと同様に単純であってよく、または、外部システムとの関係をセットアップし、次いで、ターゲットシステムに対するデータの転送をコントロールするのと同様に複雑なものであってよい。ロード(loading)は、キャプチャされたデータが、ウェアハウスまたはマート(mart)といった、新しいデータストアの中に置かれるフェイズである。いくつかの実装形態において、ロードは、構造化照会言語(SQL)におけるIMPORTおよびOracleユーティリティにおけるLOADといった、カスタムプログラミングコマンドによって遂行される。いくつかの実装形態においては、複数のアプリケーションプログラミングインターフェイス(API)を使用することができ、トランザクションデータを専用のデータストアの中へロードする抽出コネクタと一緒に、複数のトランザクションデータソースとインターフェイスする。
変換(transformation)は、抽出またはロードされたデータに対して一連のルールまたはファンクションを適用する段階(stage)を参照し、一般的に、抽出またはロードされたデータを、分析を導き出すのに役立つフォーマットに変換するためのものである。変換のいくつかの実施例は、ロードする所定の列だけの選択、コード値の変換、フリーフォーム値の符号化、新たな計算値の導出、ソート、複数ソースからのデータの結合、集計、非正規化、データの転置またはピボット(pivoting)、一つの列の複数列への分離、および、データの検証、を含んでいる。
一つの実装形態において、補強変換(augment transformation)は、2つのデータセットからのデータを結合して、それら両方にわたる検索をできるようにする。例えば、「ユーザデータセット(”user dataset”)」を「アカウントデータセット(”account dataset”)」を用いて補強することにより、データアナリストは、アカウントの所有者と作成者の名前を含む、全てのアカウントの詳細を表示するクエリを生成することができる。補強変換は、2つの入力データセットからのデータに基づいて新たなデータセットを作成する。各入力データセットは、左または右のデータセットとして識別され得る。新たなデータセットは、左データセットの全ての列を含み、かつ、右データセットからは指定された列だけが追加されている。補強変換は、左の、外部結合を実行し、ここで、新たな結合は、左データセットから全ての行(rows)と、右データセットから一致した行だけを含んでいる。別の実装形態において、2つ以上のデータセットに及ぶクエリを可能にすることができる。このことは、一度に2つのデータセットを補強することによって達成することができる。例えば、3つのデータセットを補強するためには、最初の2つのデータセットを補強してから、結果として生じるデータセットを第3のデータセットを用いて補強することができる。
いくつかの実装形態においては、補強変換の結合条件を指定することができ、右データセットにおける行を左データセットにおけるものと一致させる方法を決定する。以下の実施例は、単一列の結合条件を示している。単一列のキーに基づいて以下のデータセットを補強するために、「オポチュニティ(”Opportunity”)」が左データセットとして割り当てられ、そして、「アカウント(”Account”)」が右データセットとして割り当てられる。また、”OpptyAcct”が、それらの間の関係として指定される。

Figure 2019519833
全てのアカウント列に対して”OpptyAcct”プリフィクスが追加され、そして、データセットが”Opportunity.Account_ID = Account.ID”として定義されたキーに基づいて結合される。2つの入力データセットを補強した後で、結果として得られるデータセットは、以下の列を含んでいる。

Figure 2019519833
他の実装形態においては、異なる重量級の変換(heavy-weight transformation)を適用することができる。アカウント上でロールベースのアクセスを作成するためのフラット化変換、データセットにおいて一次元列をインデックス付けするためのインデックス変換、データセットにおいてデータに基づいて大文字小文字を区別するフルテキストインデックスを生成するエヌグラム(Ngram)変換、クエリに利用できるようにするためにデータセットを登録する登録変換、および、データオブジェクトのフィールドからデータを抽出する抽出変換を、を含むものである。
いくつかの実装形態においては、分析データセットのための細粒セキュリティは、プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合すること、および、2つまたはそれ以上のオブジェクトにおけるフィールドレベルセキュリティ設定の組み合わせに基づいて、結合されたデータにおける1つまたはそれ以上のフィールドのフィールドレベルセキュリティを計算すること、を含んでいる。
図3は、2つのオブジェクトの結合に係る一つの例示的な実装形態300を示している。補強エンジン345は、2つのオブジェクト、データセットA 324とデータセットB 328、を結合することができる。いくつかの実装形態において、新たなフィールドは、プライマリデータベースソースにおける2つまたはそれ以上のフィールドのデータから計算することができ、そして、その2つまたはそれ以上のオブジェクトにおけるフィールドレベルセキュリティ設定の組み合わせに基づいて、新たなフィールドの中のフィールドレベルセキュリティを計算している。
変換エンジン355は、結合の結果を変更することができる。一つの実装形態において、結合および変換後の、結果として生じるフィールドに対するフィールドレベルセキュリティは、データセットA 324およびデータセットB 328のフィールドレベルセキュリティ設定に基づいている。結果データセット365は、フィールドXを含み、派生フィールド(derived field)を構成するフィールドのセキュリティ344、346を集めることによって設定されたセキュリティレベルを伴っている。一つの実施例において、フィールドAは列1に依存するFLSを有し、フィールドBは列2に依存するFLSを有し、そして、フィールドCはフィールドAおよびフィールドBから派生し−両方に依存し、かつ、両方に縛られ、列1と列2の両方に依存する、フィールド視認性(field visibility)を伴うものである。実施例を続けると、管理者は、このデフォルト設定をオーバーライド(override)するように許可され得るものであり、フィールドC FLSを列1に対して、または列2に対して、もしくは、完全に異なる列(列3)に対して手動で結合することができる。列のリスト(1、2、または「その他(”other”)」を表示することは、フィールドCについて我々が有する系統情報(lineage information)に基づくものであろう。
オーバーライドオプションは、集計統計(aggregate statistics)が根底にある詳細よりも広く分散されている場合に有用である。ロールアップ(roll-ups)は、それらがまとめるフィールドのセキュリティ制限を継承することができないだろう。フィールドに対する特別な派生セキュリティ(derived security)は、JOINオペレーションから生成できる。計算されたフィールドに対する特別な派生セキュリティは、コンポーネントのうち1つよりもセキュリティに相当するものであり得る。
図4における一つの例示的なブロック図は、ユーザのためにフィールドレベルセキュリティ要求をカスタマイズした一つの実装形態を表示しており、−環境における機能ブロック間での要求と応答を示している。GUIクライアントエンジン166は、要求を送信する(例えば、レンズのリスト、データセットのリスト、外部データに対するリモートクエリ)。要求を受信すると、分析サーバ162は、新しいクエリが必要であるか否かを判断する。そして、必要である場合に、マルチテナントCRMコンピューティングサービス106に対してリモートリクエスト424を送信する。分析FLSエンジン146における内部FLSエンジン156に対して要求を送信するものであり、−要求しているユーザ(requesting user)に対するFLS要求434のリクエストである。ユーザのための複合FLS444がFLSフィルタ116に戻される場合には、次いで、FLSフィルタされた(FLS-filtered)応答454が生成され、そして、GUIクライアントエンジン166を介してユーザに対してクエリ結果を表示するために機能する分析サーバ162に対して送信される。
いくつかの実装形態について、クエリにおけるフィールドに対してFLSを指定することができる。一つのユースケースにおいて、分析サーバ要求は、興味のオブジェクトを含み、そうしたオブジェクトのフィールド系統と一緒である。分析サーバは、認可されたFLSに基づいて、要求しているユーザについて許可されるフィールドを含むオブジェクトを用いて応答することができる。クエリとレスポンスは、属性値(attribute-value)のペアから成るデータオブジェクトを送信するJSONまたは別のフォーマットを使用して配信され得る。フィールド系列の一つの例は、以下のように表すことができる。
”field3.relation1.relation2.field”
”<entity1>”:[
”<field1>”、
”<field2>”、
”<field3.relation1.relation2.field>”、
・・・]
”<entity2>”:[
”<field1>”、
”<field2>”、
”<field3.relation1.relation2.field>”、
・・・]
ユーザが選択可能なFLSインターフェイス186は、抽出されたフィールドについてフィールドレベルセキュリティを明示的に指定するために、管理者のためのスクリーンインターフェイスを提供することができる。指定されたFLSは、管理者によって、抽出されたフィールドについてフィールドレベルセキュリティのインヘリタンスをオーバーライドすることができる。
ユーザが必要なフィールドレベルセキュリティプロファイルを有さないフィールドを求める(call for)、レンズまたは複数のレンズのダッシュボード、をユーザが要求する場合に、GUIは、その要求は完了できないことをユーザに対して伝えるメッセージを配信することができる。いくつかの実装形態について、レンズをレンダリングするために必要な任意のフィールドがユーザによって視認できない場合、レンズは供給されず、そして、「レンズは見ることができない(”lens not visible”)」と伝えるUIを表示することができる。この結果は、利用可能なレンズのリストの表示をユーザが要求している場合、そして、また、レンズクエリを実行するようにユーザが要求した場合にも起こり得るものである。同様に、ユーザがセキュリティ権限を欠く1つまたはそれ以上のレンズをユーザが有する場合に、ダッシュボードは、いくつかの実装形態において、レンズを隠すことができ、そして、他の事例においてはレンズがユーザから隠されていることを伝えるメッセージを表示することができる。
いくつかのユースケースにおいては、ユーザが要求されるFLSプロファイルを欠いている場合に、ユーザがセキュリティ権限を欠くフィールドをプロジェクトのために利用可能なフィールドから取り除くことができ、そして、実行可能なクエリを作成するためにフィールドのサブセットを使用するこができる。このシナリオにおいては、視覚化の成功が制限され得る。
別の実装形態においては、分析サーバ162に対するFLSフィルタされた応答の中にユーザのクエリを完了するために必要とされるフィールドのリストを含めることができ、そして、許容可能なフィールドのリターンリストに基づいてレンズおよびダッシュボードに対するクエリをフィルタすることができる。分析サーバ162は、保管されている視覚化、すなわちレンズおよびダッシュボード、におけるクエリを満足するために必要とされるフィールドを検査することができる。GUI166に対して提供されるレンズおよびダッシュボードのリストは、次いで、分析サーバ162によってフィルタすることができる。このことは、エラーを起こし、かつ、「レンズは見ることができない」メッセージの表示を生じさせるレンズおよびダッシュボードを、ユーザが閲覧しようとする試みを防止する。上級ユーザが、フィールドレベルセキュリティのアクセスを有さないフィールド名をタイプ入力しようと試みる状況について、システムはフィールド名の認識に応答(acknowledge)しない。開示される技術は、ユーザがフィールドレベルアクセスを有さないフィールドとして認識されるユーザ入力ストリングを含む高度な検索を含むデータフィールドを抽出すること、および、その認識されたストリングを認識されないものとして取り扱うことのためのスペックを含んでいる。
図5(従来技術)は、複数のレンズを伴うダッシュボードの一つの実施例として示されている。この視覚化において、ダッシュボードを閲覧しているユーザは、「アカウント名(”Account Name”)」フィールドに対するアクセスを許可されていない。ダッシュボードは、このフィールドに依存する2つのウィジェットを含んでいる。右端のフィルタセレクタ−「アカウントセレクタ(”account selector”)」525および右下の円グラフ568である。2つの表示オプションは、これら2つのコンポーネントをフィルタしてダッシュボードから取り除くこと、または、ダッシュボードをレンダリングして、これらの2つのレンズの代わりにエラーメッセージを表示することである。第3の選択肢として、ユーザがダッシュボードを閲覧することを全く防止することができる。
いくつかの実装形態においては、データセットが作成され、かつ、キャッシュされ、そして、ユーザのセッションは、そのセッションのデータセットが作成されたときに存在したFLS情報を使用することができる。このユースケースについては、ユーザがセッションを開始したときに有しているフィールドレベルセキュリティの制限が、セッション全体を通じて継続される。
セキュリティ分析のための抽出/構築サイクル間で生じるFLSの変化に応答するために、多数のオプションが利用可能である。キャッシュ時間がゼロ、つまりキャッシングが全く無いときは、セキュリティのドリフト(drift)が無く、完全なセキュリティの忠実度(security fidelity)が達成される。いくつかの実装形態において、分析読取り専用データベースにおけるフィールドに対するフィールドレベルセキュリティの現在値のキャッシュは、現在の値に対するアップデートをクエリする以前の、5−10分のうちの限られた時間について有効である。
システムフロー
図6は、分析データセットについて細粒セキュリティを実施している一つの実装形態に係るフローチャート600を示している。フローチャート600は、例えば、情報を受信または検索し、情報を処理し、結果を保管し、かつ、結果を送信するように構成された1つまたはそれ以上のプロセッサによって、少なくとも部分的にデータベースシステムを用いて実施され得る。他の実装形態は、異なる順序で、かつ/あるいは、図6に示されるものとは異なる、より少ないか又は追加のステップを用いて、ステップを実行することができる。以下に説明される動作は、より多くのステップへと細分され、または、より少ないステップへと組み合わされ、説明される本方法を異なるステップの数量または配置を使用して実行することができる。
動作610において、FLSエンジン116は、セキュアな(secured)プライマリデータベースソースからデータのフィールドをバッチベースで抽出する。
動作620において、分析FLSエンジン146は、フィールドを分析読取り専用データストア102へとコンパイルする。
動作630において、内部FLSエンジン156は、抽出されたフィールドに対してフィールドレベルセキュリティを割り当て、そして、複数のソースからのフィールドレベルセキュリティメタデータ−継承され(inherited)、ピン留めされ、かつ、ユーザ選択されたFLSを含むもの、を管理することができる。
動作640において、分析FLSエンジン146は、抽出されたフィールドを生成するソースフィールドからのフィールドレベルセキュリティのユーザ選択可能なインヘリタンスを組み合わせる。抽出されたフィールドに対するフィールドレベルセキュリティのインヘリタンスをデータベースソースにおける参照フィールドにピン留めすることを用いるものである。
マルチテナント統合
図7は、図1のフィールドレベルセキュリティ環境100との統合に適した一つの例示的なマルチテナントシステム700のブロック図を示している。一般的に、図7で示されるマルチテナントシステム700は、複数のテナント間で共有される共通データベース732からのデータ722に基づいて、仮想アプリケーション716および718を動的に作成し、かつ、サポートするサーバ704を含む。共通データベースは、代替的に、ここにおいては「マルチテナントデータベース(”multi-tenant database”)」として参照されるものである。GUIクライアントを含む、仮想アプリケーション716および718によって生成されるデータおよびサービスは、ネットワーク745を介して、任意の数のクライアントデバイス748または758に対して、必要に応じて提供される。
ここにおいて使用されるように、「テナント(”tenant”)」または「組織(”organization”)」は、マルチテナントデータベース732の中でデータの共通サブセットに対するアクセスを共有する一人またはそれ以上のユーザのグループを参照するものである。この点に関して、各テナントは、それぞれのテナントに対して、関連付けられ、割り当てられ、または、そうでなければ所属している、一人またはそれ以上のユーザを含んでいる。別の言葉で言えば、マルチテナントシステム700の中の各ユーザそれぞれが、マルチテナントシステム700によってサポートされる複数のテナントのうち特定のテナントに対して、関連付けられ、割り当てられ、または、そうでなければ所属している。テナントは、ユーザ、ユーザの部署、業務または法律上の組織、及び/又は、マルチテナントシステム700の中でユーザの特定のセットについてデータを維持するあらゆる他のエンティティ、を表してよい。複数のテナントがサーバ704およびデータベース732に対するアクセスを共有することができるが、各テナントに対してサーバ704から提供される特定のデータおよびサービスは、他のテナントに対して提供されるものからセキュアに隔離することができる。マルチテナントアーキテクチャにより、従って、ユーザの異なるセットは、他のテナントに属しているか、または、そうでなければ関連付けられている任意のデータ722を必ずしも共有することなく、機能性およびハードウェアリソースを共有することができる。
マルチテナントデータベース732は、任意の数のテナントと関連するデータ722を保管し、かつ、管理することができる、あらゆる種類のリポジトリ(repository)または他のデータストレージシステムである。データベース732は、あらゆるタイプの従来のデータベースサーバハードウェアを使用して実施することができる。様々な実装形態において、データベース732は、処理(processing)ハードウェアをサーバ704と共有している。他の実装形態において、データベース732は、ここにおいて説明される様々な機能を実行するためにサーバ704と通信する別個の物理的及び/又は仮想データベースサーバのハードウェアを使用して実施される。マルチテナントデータベース732は、ここにおいては、代替的にオンデマンドデータベースとして参照されてよい。この点で、マルチテナントデータベース732は、アプリケーションプラットフォーム717、セキュアに分離されたテナント1のメタデータ712およびテナント2のメタデータ714を伴うもの、によって生成されるオンデマンド仮想アプリケーション716または718に対して、実行時に(at run-time)データを提供する(または、提供するように利用可能である)。
実際に、データ722は、アプリケーションプラットフォーム717をサポートするために任意的な方法でオーガナイズされ、かつ、フォーマットされてよい。様々な実装形態において、従来のデータ関連性は、インデックス付け、一意性、エンティティ間の関係性、及び/又は、必要に応じて従来のデータベース構成の他の態様を確立する任意の数のピボットテーブル713を使用して確立される。
サーバ704は、仮想アプリケーションを生成するための動的アプリケーションプラットフォーム717を集合的に提供する、1つまたはそれ以上の現実及び/又は仮想コンピューティングシステムを使用して実施される。例えば、サーバ704は、相互に関連して動作している現実及び/又は仮想サーバのクラスタを使用して実施することができ、典型的には、従来のネットワーク通信、クラスタ管理、ロードバランシング、および、必要に応じて他の機能に関連している。サーバ704は、プロセッサ736、メモリ738、入力/出力機能734、等といった、あらゆる種類の従来の処理ハードウェアを用いて動作する。入力/出力734は、一般的に、ネットワーク(例えば、ネットワーク745、または、他のローカルエリア、ワイドエリア、もしくは他のネットワーク)、マスストレージ、ディスプレイ装置、データ入力装置、及び/又は、同様のものに対するインターフェイスを表す。ユーザインターフェイス入力装置734は、キーボード、マウス、トラックボール、タッチパッド、またはグラフィックタブレットといったポインティングデバイス、スキャナ、ディスプレイに組み込まれているタッチスクリーン、音声認識システムとマイクロホンといった音声入力装置、および、他のタイプの入力装置を含む。一般的に、用語「入力装置(”input device”)」の使用は、コンピュータシステム717の中へ情報を入力する可能なタイプの装置および方法を含むように意図されている。
ユーザインターフェイス出力装置は、ディスプレイサブシステム、プリンタ、ファックス装置、または、オーディオ出力装置といった非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、ブラウン管(CRT)、液晶ディスプレイ(LCD)といったフラットパネル装置、プロジェクション装置、または、可視画像を作成するためのいくらかの他のメカニズムを含み得る。ディスプレイサブシステムは、また、オーディオ出力装置といった非視覚的ディスプレイを提供することもできる。一般的に、用語「出力装置(”output device”)」の使用は、プロセッサ736からユーザ、もしくは、別のマシンまたはコンピュータシステムに対して情報を出力するための全ての可能なタイプの装置および方法を含むように意図されている。
プロセッサ736は、任意の適切な処理システムを使用して実装され得る。1つまたはそれ以上のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、処理コア、及び/又は、任意の数の分散または統合されたシステムにわたり広がっている他のコンピューティングリソース、任意の数の「クラウドベース(”cloud-based”)」または他の仮想システムを含んでいるもの、といったものである。メモリ738は、プロセッサ736上における実行のためのプログラミングインストラクションを保管することができる任意の非一時的な短期または長期のストレージ、または、他のコンピュータで読取り可能な媒体を表しており、あらゆる種類のランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、磁気または光学マスストレージ、及び/又は、同様なものを含んでいる。コンピュータで実行可能なプログラミングインストラクションは、サーバ704及び/又はプロセッサ736によって読み取られ、かつ、実行されるときに、サーバ704及び/又はプロセッサ736に、アプリケーションプラットフォーム717及び/又は仮想アプリケーション716および718を作成させ、生成させ、または、そうでなければ促進させ、そして、ここにおいて説明される1つまたはそれ以上の追加的なタスク、オペレーション、ファンクション、及び/又は、プロセスを実行させる。メモリ738は、そうしたコンピュータで読取り可能な媒体の一つの適切な実装形態を表しており、そして、代替的または追加的に、サーバ704は、例えば、ポータブルハードドライブ、USBフラッシュドライブ、光ディスク、等の、ポータブルまたはモバイルコンポーネント、もしくはアプリケーションプラットフォームとして実現される外部のコンピュータで読取り可能な媒体を受け取り、かつ、協業し得ることに留意すべきである。
アプリケーションプラットフォーム717は、クライアントデバイス748および758に対してデータ及び/又はサービスを提供する仮想アプリケーション716および718を生成する、あらゆる種類のソフトウェアアプリケーションまたは他のデータ処理エンジンである。典型的な実装形態において、アプリケーションプラットフォーム717は、あらゆる種類の従来的又は専有的なオペレーティングシステム728を使用して、処理ハードウェアの処理リソース、通信インターフェイス、および他の機能に対するアクセスを獲得する。仮想アプリケーション716および718は、典型的には、クライアントデバイス748および758から受信した入力に応じて実行時に生成される。
引き続き図7を参照すると、サーバ704によって提供されるデータおよびサービスは、ネットワーク745上におけるあらゆる種類のパーソナルコンピュータ、携帯電話、タブレット、または、他のネットワーク対応クライアントデバイス748または758を使用して取り出すことができる。一つの例示的な実装形態において、クライアントデバイス748または758は、マルチテナントデータベース732から取り出されたデータ及び/又は情報をグラフィカルに表示することができる、モニタ、スクリーン、または、別の従来的な電子ディスプレイといった、ディスプレイ装置を含んでいる。
いくつかの実装形態において、ネットワーク745は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、WiMAX、Wi-Fi、電話ネットワーク、無線ネットワーク、ポイントツーポイントネットワーク、スターネットワーク、トークンリングネットワーク、ハブネットワーク、メッシュネットワーク、ブルートゥース(登録商標)、近距離通信(NFC)、Z-Wave、ZigBeeのようなピアツーピア接続、または、インターネットを含む、データネットワークの他の適切なコンフィグレーションのうち任意の一つまたは任意の組み合わせであり得る。
前述の説明は、本質的に単なる例示であり、そして、技術的事項またはアプリケーションの実装、または、そうした実装の使用を限定するように意図されたものではない。さらに、技術分野、背景、または詳細な説明において提示された任意の表現され、又は、暗示された理論によって拘束される意図は存在しない。ここにおいて使用されるように、用語「例示的(”exemplary”)」は、「一つの例、インスタンス、または説明として機能する」ことを意味するものである。ここにおいて例示的として記載されたあらゆる実装形態は、必ずしも他の実装形態よりも好ましく又は有利であるとして解釈されるべきものではなく、そして、ここにおいて記載される例示的な実装形態は、どのようにしても技術的事項の範囲または適用可能性を限定するように意図されたものではない。
開示される技術は、データベースシステム、マルチテナント環境、またはリレーショナルデータベース実装を含む、任意のコンピュータ実装システムのコンテクストにおいて実施することができる。ORACLETM互換データベース実装、IBM DB2 Enterprise Server互換リレーショナルデータベース実装、MySQL又はPostgreSQL互換リレーショナルデータベース実装、またはMicrosoft SQL Server互換リレーショナルデータベース実装、またはVampireTM互換非リレーショナルデータベース実装といったNoSQL非リレーショナルデータベース実装、Apache CassandraTM互換非リレーショナルデータベース実装、BigTable互換非リレーショナルデータベース実装、もしくはHBase又はDynamoDB互換非リレーショナルデータベース実装、等である。
さらに、開示される技術は、相互に協働し、かつ、通信する2つまたはそれ以上の別個の異なるコンピュータ実装システムを使用して実装することができる。開示される技術は、多数の方法で実装することができる。方法は、プロセス、方法、装置、システム、デバイス、コンピュータで読取り可能なインストラクションまたはコンピュータプログラムコードを保管するコンピュータで読取り可能な記憶媒体といったコンピュータで読取り可能な媒体として、もしくは、中に組み込まれたコンピュータで読取り可能なプログラムコードを有するコンピュータで使用可能な媒体を含むコンピュータプログラム製品としてのものを含んでいる。
特定の実装形態
一つの実装形態において、開示される方法は、セキュアな、プライマリデータベースソースからバッチベースでデータフィールドを抽出すること、そして、フィールドを分析的な、読取り専用データベースの中へコンパイルすること、および、抽出されたフィールドに対するフィールドレベルセキュリティをデータベースソースにおける参照フィールドに対してピン留めすることを伴い、抽出されたフィールドを生成するソースフィールドからのフィールドレベルセキュリティのユーザ選択可能なインヘリタンスを組み合わせることによって、抽出されたフィールドに対してフィールドレベルセキュリティを割り当てること、を含む。ここで、参照フィールドは、抽出されたフィールドとは異なるものである。開示される方法は、さらに、セキュアでないデータセットとして追加的なフィールドを受信すること、および、受信したフィールドに対するフィールドレベルセキュリティをデータベースソースにおける参照フィールドに対してピン留めすることを伴い、受信したフィールドに対するフィールドレベルセキュリティのユーザ選択可能な明示的スペックを結合することによって受信された、追加的なフィールドに対してフィールドレベルセキュリティを割り当てること、を含む。ここで、参照フィールドは、抽出されたフィールドとは異なるものである。
開示される技術に係るこの方法および他の実装形態は、開示される追加的な方法に関連して説明される以下の特徴及び/又は複数の特徴のうちの1つまたはそれ以上を含み得る。簡潔のために、この出願において開示される特徴の組み合わせは、個々には列挙されず、そして、特徴の各基本セットと伴に繰り返されない。読者は、このセクションにおいて特定される特徴が、実装形態として特定される基本の特徴セットとどのように容易に組み合わされ得るのか理解するだろう。
いくつかの実装形態において、フィールドレベルセキュリティのユーザ選択可能な割り当ては、さらに、フィールドレベルセキュリティの明示的なスペックを用いて抽出されたフィールドからのフィールドレベルセキュリティのインヘリタンスをオーバーライドすることによって、フィールドレベルセキュリティを割り当てること、を含む。
分析的な、読取り専用データベースのための開示される方法の実施は、2000万以上のレコードを検索し、かつ、選択されたレコードから総統計をまとめるときに、2秒以下の応答時間を実現する、
いくつかの実装形態について、分析データセットのための細粒セキュリティに係る開示される方法は、プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合すること、および、2つまたはそれ以上のオブジェクトにおけるフィールドレベルセキュリティ設定の組み合わせに基づいて、結合されたデータにおける1つまたはそれ以上のフィールドのフィールドレベルセキュリティを計算すること、を含む。
さらに他の実装形態において、本方法は、ピン留めのための基礎(basis)として、データベースソースにおけるユーザが選択した(user-selected)参照フィールドをフラグ付けすること、および、フラグ付けされた参照フィールドを列挙し、かつ、参照フィールドに対して抽出されたフィールドのピン留めをユーザができるようにする、ユーザインターフェイスの表示を行わせること、を含み得る。
開示される方法の実装形態は、さらに、ユーザがフィールドレベルアクセスを有さないフィールドとして認識されるユーザ入力ストリングを含む高度な検索を含むデータのフィールドを抽出すること、および、その認識されたストリングを認識されないものとして取り扱うことのためのスペックを含む。
開示される方法のいくつかの実装形態について、要求されるレンズが、フィールドレベルセキュリティ許可をユーザが有さないフィールドを使用する場合に、レンズは表示されない。いくつかの場合には、レンズは利用可能ではないというメッセージがディスプレイに表示される。ユーザが利用可能でないフィールドを求めるダッシュボードの取り扱いは、ユーザがフィールドレベルセキュリティ許可を有するダッシュボードのためのレンズのサブセットおよび残りのレンズが閲覧のために利用可能ではないことを伝えるメッセージを含み得る。ユーザが利用可能でないフィールドを求めるストリングによって指定される高度なクエリを含む実装形態においては、要求しているユーザがセキュリティ許可を有さない保護データは表示されない。
さらに他の実装形態について、分析読取り専用データベースにおけるフィールドに対するユーザ権限のキャッシュは、限られた時間についてのものである。これらに限定されるわけではないが、ユーザ権限を更新する以前の、2−6分、3−8分、または4−10分のうち一つを含んでいる。
開示される方法は、さらに、現在の値に対するアップデートをクエリする以前に、分析読取り専用データベースにおけるフィールドに対するフィールドレベルセキュリティの現在値を3−8分の限られた時間についてキャッシュすることを含み得る。他の実装形態において、本方法は、現在の値に対するアップデートをクエリする以前に、分析読取り専用データベースにおけるフィールドに対するフィールドレベルセキュリティの現在値を4−9分の限られた時間についてキャッシュすることを含み得る。もしくは、現在の値に対するアップデートをクエリする以前に、分析読取り専用データベースにおけるフィールドに対するフィールドレベルセキュリティの現在値を5−10分の限られた時間についてキャッシュすることを含み得る。
他の実装形態は、インストラクションが刻まれた非一時的で有形なコンピュータで読取り可能な媒体を含み得る。インストラクションは、コンピュータデバイスおよび1つまたはそれ以上のサーバ上で実行されたときに、上記のプロセスのうち任意のものを実行する。
さらに別の実装形態は、1つまたはそれ以上のプロセッサ、および、プロセッサに接続されたメモリを有する少なくとも1つのサーバを含むコンピューティングシステムを含んでよく、プロセッサ上で実行されたとき、コンピューティングシステムに上記のプロセスのうち任意のものを実行させるコンピュータインストラクションを含んでいる。
開示される技術は、上に詳述された好ましい実装形態および実施例を参照して開示されているが、これらの実施例は、限定する意味ではなく、むしろ例示的であると意図されていることが理解されるべきである。当業者であれば、変更および組み合わせが容易になされることが期待される。変更および組み合わせは、本発明の精神および以降の請求項の範囲内のものである。
クローズ(Clauses)
1.セキュアな読取り専用データベースを構築するためのシステムが開示される。本システムは、
少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドをバッチで抽出するための抽出手段と、
抽出されたデータフィールドの中のディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ抽出されたデータフィールドをコンパイルするためのコンパイル手段と、
複数のコンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるためのセキュリティ割り当て手段であり、セキュリティ手段は、セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択のための選択手段を含む、手段と、を含み、ここで、
セキュリティのインヘリタンスの選択により、セキュリティ割り当て手段は、プライマリデータベースソースにおいて抽出されたフィールドから、コンパイルされたデータフィールドに対して、インヘリタンスによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、セキュリティ割り当て手段は、コンパイルされたデータフィールドに対する参照フィールドから、コンパイルされたデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当て、
参照フィールドは、抽出されたフィールドとは異なるものであり、
読取り専用データベースの構築の最中に、割り当てられたデータフィールドレベルセキュリティをコンパイルされたデータフィールドと整合させるための構築手段と、
を含んでいる。
2.本システムは、さらに、
データフィールドレベルセキュリティの対象とならないセキュアでないデータセットから、さらに、追加的なデータフィールドを抽出するための抽出手段と、
明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択のための選択手段を用いて、追加的なデータフィールドに対してフィールドレベルセキュリティをさらに割り当てるためのセキュリティ割り当て手段と、を含み、ここで、
明示的なセキュリティの選択により、セキュリティ割り当て手段は、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、セキュリティ割り当て手段は、コンパイルされたデータフィールドに対する参照テーブルにおける参照フィールドから、追加的なデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当てる、
クローズ1に係るシステム。
3.選択手段は、さらに、明示的なセキュリティ間の選択を行い、かつ、
明示的なセキュリティの選択により、セキュリティ割り当て手段は、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる、
クローズ2に係るシステム。
4.2000万以上のレコードを検索し、かつ、選択されたレコードから総統計をまとめるときに、読取り専用データベースは、2秒以下の応答時間を実現する、
クローズ1乃至3のいずれか一つに係るシステム。
5.本システムは、さらに、
プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するための新たなフィールド手段、を含み、かつ、
セキュリティ割り当て手段は、2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、さらに、新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算する、
クローズ1乃至4のいずれか一つに係るシステム。
6.本システムは、さらに、
プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するためのオブジェクト結合手段、を含み、かつ、
セキュリティ割り当て手段は、2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、さらに、結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算する、
クローズ1乃至5のいずれか一つに係るシステム。
7.選択手段は、さらに、
プライマリデータベースソースにおけるデータフィールドのうち少なくとも1つをセキュリティのピン留めのための参照フィールドとしてフラグ付けを行い、かつ、
フラグ付けされた参照フィールドを列挙し、かつ、参照フィールドに対して抽出されたフィールドに係るセキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う、
クローズ1乃至6のいずれか一つに係るシステム。
8.読取り専用データベースをセキュアにする方法が、さらに開示される。本方法は、
少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドを抽出するステップと、
抽出されたデータフィールドの中のディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ抽出されたデータフィールドをコンパイルするステップと、
セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択を伴って、複数のコンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるステップであり、ここで、
セキュリティのインヘリタンスの選択により、プライマリデータベースソースにおいて抽出されたフィールドから、コンパイルされたデータフィールドに対して、インヘリタンスによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、コンパイルされたデータフィールドに対する参照フィールドから、コンパイルされたデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当て、
参照フィールドは、抽出されたフィールドとは異なるものである、ステップと、
読取り専用データベースの構築の最中に、割り当てられたデータフィールドレベルセキュリティをコンパイルされたデータフィールドと整合させるステップと、
を含んでいる。
9.本方法は、さらに、
データフィールドレベルセキュリティの対象とならない少なくとも1つのセキュアでないデータセットから追加的なデータフィールドを抽出するステップと、
明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択のために、追加的なデータフィールドに対してフィールドレベルセキュリティを割り当てるステップと、を含み、ここで、
明示的なセキュリティの選択により、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、コンパイルされたデータフィールドに対する参照テーブルにおける参照フィールドから、追加的なデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当てる、
クローズ8に係る方法。
10.本方法は、さらに、明示的なセキュリティ間の選択を行うステップを含み、かつ、
明示的なセキュリティの選択により、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる、
クローズ9に係る方法。
11.本方法は、さらに、
プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するステップと、
2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、含む、
クローズ8乃至10のいずれか一つに係る方法。
12.本方法は、さらに、
プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するステップと、
2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む、
クローズ8乃至11のいずれか一つに係る方法。
13.本方法は、さらに、
プライマリデータベースソースにおけるデータフィールドのうち少なくとも1つをセキュリティのピン留めのための参照フィールドとしてフラグ付けするステップ、を含み、かつ、
フラグ付けされた参照フィールドを列挙し、かつ、参照フィールドに対して抽出されたフィールドに係るセキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う、
クローズ8乃至12のいずれか一つに係る方法。
14.読取り専用データベースをセキュアにするためのコンピュータプログラムインストラクションが刻まれた非一時的なコンピュータで読取り可能な記憶媒体であって、インストラクションがプロセッサ上で実行されると、
少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドをバッチで抽出するステップと、
抽出されたデータフィールドの中のディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ抽出されたデータフィールドをコンパイルするステップと、
セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択を伴って、複数のコンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるステップであり、ここで、
セキュリティのインヘリタンスの選択により、プライマリデータベースソースにおいて抽出されたフィールドから、コンパイルされたデータフィールドに対して、インヘリタンスによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、コンパイルされたデータフィールドに対する参照フィールドから、コンパイルされたデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当て、
参照フィールドは、抽出されたフィールドとは異なるものである、ステップと、
読取り専用データベースの構築の最中に、割り当てられたデータフィールドレベルセキュリティをコンパイルされたデータフィールドと整合させるステップと、
を含む、方法を実行する。
15.上記方法は、さらに、
データフィールドレベルセキュリティの対象とならないセキュアでないデータセットから追加的なデータフィールドを抽出するステップと、
明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択のために、追加的なデータフィールドに対してフィールドレベルセキュリティを割り当てるステップと、を含み、ここで、
明示的なセキュリティの選択により、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
セキュリティのピン留めの選択により、コンパイルされたデータフィールドに対する参照テーブルにおける参照フィールドから、追加的なデータフィールドに対するピン留めされた参照フィールドからのデータフィールドレベルセキュリティのインヘリタンスを用いて、セキュリティのピン留めによってデータフィールドレベルセキュリティを割り当てる、
クローズ14に係る非一時的なコンピュータで読取り可能な記憶媒体。
16.上記方法は、さらに、明示的なセキュリティ間の選択を選択するステップを含み、かつ、
明示的なセキュリティの選択により、追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる、
クローズ15に係る非一時的なコンピュータで読取り可能な記憶媒体。
17.上記方法は、さらに、
プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するステップと、
2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、含む、
クローズ14乃至16のいずれか一つに係る非一時的なコンピュータで読取り可能な記憶媒体。
18.上記方法は、さらに、
プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するステップと、
2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む、
クローズ14乃至17のいずれか一つに係る非一時的なコンピュータで読取り可能な記憶媒体。
19.上記方法は、さらに、
プライマリデータベースソースにおけるデータフィールドのうち少なくとも1つをセキュリティのピン留めのための参照フィールドとしてフラグ付けするステップ、を含み、かつ、
フラグ付けされた参照フィールドを列挙し、かつ、参照フィールドに対して抽出されたフィールドに係るセキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う、
クローズ14乃至18のいずれか一つに係る非一時的なコンピュータで読取り可能な記憶媒体。

Claims (19)

  1. データフィールドセキュリティのインヘリタンスを用いたセキュアな読取り専用データベースを構築するためのシステムであって、
    少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドをバッチで抽出するための抽出手段と、
    前記抽出されたデータフィールドの中の前記ディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ前記抽出されたデータフィールドをコンパイルするためのコンパイル手段と、
    複数の前記コンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるためのセキュリティ割り当て手段であり、セキュリティ手段は、前記コンパイルされたデータフィールドの中の第1コンパイル済みデータフィールドについて、セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択のための選択手段を含む、セキュリティ割り当て手段と、を含み、
    前記セキュリティのインヘリタンスの選択により、前記セキュリティ割り当て手段は、前記プライマリデータベースソースにおいて抽出されたフィールドから、インヘリタンスによって、前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、かつ、
    セキュリティのピン留めの選択により、前記セキュリティ割り当て手段は、前記ピン留めされた参照フィールドからの前記コンパイルされたデータフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照フィールドに対する前記第1コンパイル済みデータフィールドに係るセキュリティのピン留めによって前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、
    前記参照フィールドは、データフィールドレベルセキュリティのインヘリタンスを用いて、前記プライマリデータベースソースから抽出された第2コンパイル済データフィールドであり、
    前記読取り専用データベースの構築の最中に、前記割り当てられたデータフィールドレベルセキュリティを前記コンパイルされたデータフィールドと整合させるための構築手段と、
    を含む、システム。
  2. 前記システムは、セキュアでないソースフィールドの取り扱いを伴い、さらに、
    データフィールドレベルセキュリティの対象とならないセキュアでないデータセットから、さらに、追加的なデータフィールドを抽出するための抽出手段と、
    前記追加的なデータフィールドの中の第3データフィールドについて、明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択のための選択手段を用いて、前記追加的なデータフィールドに対してフィールドレベルセキュリティをさらに割り当てるためのセキュリティ割り当て手段と、を含み、ここで、
    前記明示的なセキュリティの選択により、前記セキュリティ割り当て手段は、前記第3データフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
    前記セキュリティのピン留めの選択により、前記セキュリティ割り当て手段は、前記ピン留めされた参照フィールドからの前記第3データフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照テーブルにおける前記参照フィールドに対する前記第3データフィールドのセキュリティのピン留めによって前記第3データフィールドに対してデータフィールドレベルセキュリティを割り当てる、
    請求項1に記載のシステム。
  3. 前記選択手段は、さらに、明示的なセキュリティ間の選択を行い、かつ、
    前記明示的なセキュリティの選択により、前記セキュリティ割り当て手段は、前記追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる、
    請求項2に記載のシステム。
  4. 前記読取り専用データベースは、2000万以上のレコードを検索し、かつ、選択されたレコードから総統計をまとめるときに、2秒以下の応答時間を実現する、
    請求項1乃至3のいずれか一項に記載のシステム。
  5. 前記システムは、さらに、
    前記プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するための新たなフィールド手段、を含み、かつ、
    前記セキュリティ割り当て手段は、前記2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、さらに、前記新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算する、
    請求項1乃至4のいずれか一項に記載のシステム。
  6. 前記システムは、さらに、
    前記プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するためのオブジェクト結合手段、を含み、かつ、
    前記セキュリティ割り当て手段は、前記2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、さらに、前記結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算する、
    請求項1乃至5のいずれか一項に記載のシステム。
  7. 前記選択手段は、さらに、
    前記プライマリデータベースソースにおける前記データフィールドのうち少なくとも1つを前記セキュリティのピン留めのための参照フィールドとしてフラグ付けを行い、かつ、
    前記フラグ付けされた参照フィールドを列挙し、かつ、前記参照フィールドに対して前記抽出されたフィールドに係る前記セキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う、
    請求項1乃至6のいずれか一項に記載のシステム。
  8. データフィールドセキュリティのインヘリタンスを用いた読取り専用データベースをセキュアにする方法であって、
    少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドを抽出するステップと、
    前記抽出されたデータフィールドの中の前記ディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ前記抽出されたデータフィールドをコンパイルするステップと、
    セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択を伴って、複数の前記コンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるステップであり、前記コンパイルされたデータフィールドの中の第1コンパイル済みデータフィールドに対する前記データフィールドレベルセキュリティのアクセスの割り当てを含み、
    前記セキュリティのインヘリタンスの選択により、前記プライマリデータベースソースにおいて抽出されたフィールドから、インヘリタンスによって、前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、かつ、
    セキュリティのピン留めの選択により、前記ピン留めされた参照フィールドからの前記第1コンパイル済みデータフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照フィールドに対する前記第1コンパイル済みデータフィールドに係るセキュリティのピン留めによって前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、
    前記参照フィールドは、データフィールドレベルセキュリティのインヘリタンスを用いて、前記プライマリデータベースソースから抽出された第2コンパイル済データフィールドである、ステップと、
    前記読取り専用データベースの構築の最中に、前記割り当てられたデータフィールドレベルセキュリティを前記コンパイルされたデータフィールドと整合させるステップと、
    を含む、方法。
  9. 前記方法は、セキュアでないソースフィールドの取り扱いを伴い、さらに、
    データフィールドレベルセキュリティの対象とならない少なくとも1つのセキュアでないデータセットから追加的なデータフィールドを抽出するステップと、
    明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択によって、前記追加的なデータフィールドの中の第3データフィールドに対してフィールドレベルセキュリティを割り当てるステップと、を含み、
    前記明示的なセキュリティの選択により、前記第3データフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
    前記セキュリティのピン留めの選択により、前記ピン留めされた参照フィールドからの前記第3データフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照テーブルにおける前記参照フィールドに対する前記第3データフィールドのセキュリティのピン留めによって前記第3データフィールドに対してデータフィールドレベルセキュリティを割り当てる、
    請求項8に記載の方法。
  10. 前記方法は、さらに、明示的なセキュリティ間の選択を行うステップを含み、かつ、
    前記明示的なセキュリティの選択により、前記追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる、
    請求項9に記載の方法。
  11. 前記方法は、さらに、
    前記プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するステップと、
    前記2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、前記新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む、
    請求項8乃至10のいずれか一項に記載の方法。
  12. 前記方法は、さらに、
    前記プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するステップと、
    前記2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、前記結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む、
    請求項8乃至11のいずれか一項に記載の方法。
  13. 前記方法は、さらに、
    前記プライマリデータベースソースにおける前記データフィールドのうち少なくとも1つを前記セキュリティのピン留めのための参照フィールドとしてフラグ付けするステップ、を含み、かつ、
    前記フラグ付けされた参照フィールドを列挙し、かつ、前記参照フィールドに対して前記抽出されたフィールドに係る前記セキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う、
    請求項8乃至12のいずれか一項に記載の方法。
  14. 読取り専用データベースをセキュアにするためのコンピュータプログラムインストラクションが刻まれた非一時的なコンピュータで読取り可能な記憶媒体であって、インストラクションがプロセッサ上で実行されると、
    少なくとも1つのプライマリデータベースソースから、ディメンションおよびメジャーを含むデータフィールドを抽出するステップと、
    前記抽出されたデータフィールドの中の前記ディメンションに対する不変のインデックスを用いて、少なくとも1つの読取り専用データベースの中へ前記抽出されたデータフィールドをコンパイルするステップと、
    セキュリティのインヘリタンスとセキュリティのピン留めとの間の選択を伴って、複数の前記コンパイルされたデータフィールドに対してデータフィールドレベルセキュリティのアクセスを割り当てるステップであり、前記コンパイルされたデータフィールドの中の第1コンパイル済みデータフィールドに対する前記データフィールドレベルセキュリティのアクセスの割り当てを含み、
    前記セキュリティのインヘリタンスの選択により、前記プライマリデータベースソースにおいて抽出されたフィールドから、インヘリタンスによって、前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、かつ、
    セキュリティのピン留めの選択により、前記ピン留めされた参照フィールドからの前記第1コンパイル済みデータフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照フィールドに対する前記第1コンパイル済みデータフィールドに係るセキュリティのピン留めによって前記第1コンパイル済みデータフィールドに対してデータフィールドレベルセキュリティを割り当て、
    前記参照フィールドは、データフィールドレベルセキュリティのインヘリタンスを用いて、前記プライマリデータベースソースから抽出された第2コンパイル済データフィールドである、ステップと、
    前記読取り専用データベースの構築の最中に、前記割り当てられたデータフィールドレベルセキュリティを前記コンパイルされたデータフィールドと整合させるステップと、
    を含む方法を実行する、非一時的なコンピュータで読取り可能な記憶媒体。
  15. 前記方法を実行する請求項14に記載の非一時的なコンピュータで読取り可能な記憶媒体であって、セキュアでないソースフィールドの取り扱いを伴い、
    前記方法は、さらに、
    データフィールドレベルセキュリティの対象とならない少なくとも1つのセキュアでないデータセットから追加的なデータフィールドを抽出するステップと、
    明示的なセキュリティとセキュリティのピン留めとの間のさらなる選択によって、前記追加的なデータフィールドの中の第3データフィールドに対してフィールドレベルセキュリティを割り当てるステップと、を含み、
    前記明示的なセキュリティの選択により、前記第3データフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当て、かつ、
    前記セキュリティのピン留めの選択により、前記ピン留めされた参照フィールドからの前記第3データフィールドによる前記データフィールドレベルセキュリティのインヘリタンスを用いて、参照テーブルにおける前記参照フィールドに対する前記第3データフィールドのセキュリティのピン留めによって前記第3データフィールドに対してデータフィールドレベルセキュリティを割り当てる。
  16. 前記方法を実行する請求項15に記載の非一時的なコンピュータで読取り可能な記憶媒体であって、前記方法は、さらに、
    明示的なセキュリティ間の選択を行うステップを含み、かつ、
    前記明示的なセキュリティの選択により、前記追加的なデータフィールドについてフィールドレベルセキュリティの明示的なスペックによってデータフィールドレベルセキュリティを割り当てる。
  17. 前記方法を実行する請求項14乃至16のいずれか一項に記載の非一時的なコンピュータで読取り可能な記憶媒体であって、前記方法は、さらに、
    前記プライマリデータベースソースにおいて2つまたはそれ以上のデータフィールドにおけるデータから新たなデータフィールドを計算するステップと、
    前記2つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、前記新たなデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む。
  18. 前記方法を実行する請求項14乃至17のいずれか一項に記載の非一時的なコンピュータで読取り可能な記憶媒体であって、前記方法は、さらに、
    前記プライマリデータベースソースにおける2つまたはそれ以上のオブジェクトからのデータを結合するステップと、
    前記2つまたはそれ以上のオブジェクトにおけるデータフィールドレベルセキュリティ設定の組み合わせに基づいて、前記結合されたデータにおいて1つまたはそれ以上のデータフィールドにおけるデータフィールドレベルセキュリティを計算するステップと、を含む。
  19. 前記方法を実行する請求項14乃至18のいずれか一項に記載の非一時的なコンピュータで読取り可能な記憶媒体であって、前記方法は、さらに、
    前記プライマリデータベースソースにおける前記データフィールドのうち少なくとも1つを前記セキュリティのピン留めのための参照フィールドとしてフラグ付けするステップ、を含み、かつ、
    前記フラグ付けされた参照フィールドを列挙し、かつ、前記参照フィールドに対して前記抽出されたフィールドに係る前記セキュリティのピン留めをユーザが選択できるようにする、ユーザインターフェイスの表示を行う。
JP2018554013A 2016-04-14 2017-04-14 解析データセットのための細粒セキュリティ Active JP6751771B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/099,533 US10713376B2 (en) 2016-04-14 2016-04-14 Fine grain security for analytic data sets
US15/099,533 2016-04-14
PCT/US2017/027791 WO2017181131A1 (en) 2016-04-14 2017-04-14 Fine grain security for analytic data sets

Publications (3)

Publication Number Publication Date
JP2019519833A true JP2019519833A (ja) 2019-07-11
JP2019519833A5 JP2019519833A5 (ja) 2020-07-02
JP6751771B2 JP6751771B2 (ja) 2020-09-09

Family

ID=59215891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018554013A Active JP6751771B2 (ja) 2016-04-14 2017-04-14 解析データセットのための細粒セキュリティ

Country Status (5)

Country Link
US (1) US10713376B2 (ja)
EP (1) EP3443483A1 (ja)
JP (1) JP6751771B2 (ja)
CA (1) CA3021031C (ja)
WO (1) WO2017181131A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021152817A1 (ja) * 2020-01-31 2021-08-05

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10733162B2 (en) * 2015-07-30 2020-08-04 Workday, Inc. Indexing structured data with security information
US10713376B2 (en) 2016-04-14 2020-07-14 Salesforce.Com, Inc. Fine grain security for analytic data sets
US10521442B1 (en) * 2016-09-16 2019-12-31 EMC IP Holding Company LLC Hierarchical value-based governance architecture for enterprise data assets
US11048695B2 (en) * 2017-09-12 2021-06-29 Sap Se Context-aware data commenting system
US20210256616A1 (en) * 2017-09-27 2021-08-19 State Farm Mutual Automobile Insurance Company Automobile Monitoring Systems and Methods for Risk Determination
US20190102841A1 (en) * 2017-10-04 2019-04-04 Servicenow, Inc. Mapping engine configurations with task managed workflows and grid user interfaces
US10546003B2 (en) * 2017-11-09 2020-01-28 Adobe Inc. Intelligent analytics interface
US10922430B2 (en) * 2018-07-16 2021-02-16 Beijing Didi Infinity Technology And Development Co., Ltd. System and method for data security grading
CN109189394B (zh) * 2018-08-02 2021-11-16 浪潮通用软件有限公司 一种自适应国内主流厂商粮情数据结构的方法
US11151110B2 (en) 2018-09-24 2021-10-19 Salesforce.Com, Inc. Identification of records for post-cloning tenant identifier translation
US11947558B2 (en) * 2020-11-12 2024-04-02 Kyndryl, Inc. Built-in analytics for database management

Family Cites Families (173)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5649104A (en) 1993-03-19 1997-07-15 Ncr Corporation System for allowing user of any computer to draw image over that generated by the host computer and replicating the drawn image to other computers
US5608872A (en) 1993-03-19 1997-03-04 Ncr Corporation System for allowing all remote computers to perform annotation on an image and replicating the annotated image on the respective displays of other comuters
US7991347B1 (en) 1994-04-07 2011-08-02 Data Innovation Llc System and method for accessing set of digital data at a remote site
US5577188A (en) 1994-05-31 1996-11-19 Future Labs, Inc. Method to provide for virtual screen overlay
US7181758B1 (en) 1994-07-25 2007-02-20 Data Innovation, L.L.C. Information distribution and processing system
GB2300991B (en) 1995-05-15 1997-11-05 Andrew Macgregor Ritchie Serving signals to browsing clients
US5715450A (en) 1995-09-27 1998-02-03 Siebel Systems, Inc. Method of selecting and presenting data from a database using a query language to a user of a computer system
US5821937A (en) 1996-02-23 1998-10-13 Netsuite Development, L.P. Computer method for updating a network design
US5831610A (en) 1996-02-23 1998-11-03 Netsuite Development L.P. Designing networks
US5873096A (en) 1997-10-08 1999-02-16 Siebel Systems, Inc. Method of maintaining a network of partially replicated database system
US6604117B2 (en) 1996-03-19 2003-08-05 Siebel Systems, Inc. Method of maintaining a network of partially replicated database system
WO1998038586A1 (en) 1997-02-26 1998-09-03 Siebel Systems, Inc. Method of determining the visibility to a remote databaseclient of a plurality of database transactions using simplified visibility rules
WO1998038583A1 (en) 1997-02-26 1998-09-03 Siebel Systems, Inc. Method of determining visibility to a remote database client of a plurality of database transactions having variable visibility strengths
AU6654798A (en) 1997-02-26 1998-09-18 Siebel Systems, Inc. Method of determining visibility to a remote database client of a plurality of database transactions using a networked proxy server
WO1998040804A2 (en) 1997-02-26 1998-09-17 Siebel Systems, Inc. Distributed relational database
AU6440398A (en) 1997-02-26 1998-09-18 Siebel Systems, Inc. Method of using a cache to determine the visibility to a remote database client of a plurality of database transactions
WO1998040805A2 (en) 1997-02-27 1998-09-17 Siebel Systems, Inc. Method of synchronizing independently distributed software and database schema
AU6183798A (en) 1997-02-27 1998-09-29 Siebel Systems, Inc. Method of migrating to a successive level of a software distribution incorporating local modifications
EP1015997A4 (en) 1997-02-28 2006-03-29 Siebel Systems Inc PARTLY REPLICATED DISTRIBUTED DATABASE WITH MULTIPLE LEVELS FROM REMOTE CLIENTS
US6169534B1 (en) 1997-06-26 2001-01-02 Upshot.Com Graphical user interface for customer information management
US6560461B1 (en) 1997-08-04 2003-05-06 Mundi Fomukong Authorized location reporting paging system
US5918159A (en) 1997-08-04 1999-06-29 Fomukong; Mundi Location reporting satellite paging system with optional blocking of location reporting
US20020059095A1 (en) 1998-02-26 2002-05-16 Cook Rachael Linette System and method for generating, capturing, and managing customer lead information over a computer network
US6732111B2 (en) 1998-03-03 2004-05-04 Siebel Systems, Inc. Method, apparatus, system, and program product for attaching files and other objects to a partially replicated database
US6772229B1 (en) 2000-11-13 2004-08-03 Groupserve, Inc. Centrifugal communication and collaboration method
US6161149A (en) 1998-03-13 2000-12-12 Groupserve, Inc. Centrifugal communication and collaboration method
US5963953A (en) 1998-03-30 1999-10-05 Siebel Systems, Inc. Method, and system for product configuration
EP1105826A1 (en) 1998-08-27 2001-06-13 Upshot Corporation A method and apparatus for network-based sales force management
US6601087B1 (en) 1998-11-18 2003-07-29 Webex Communications, Inc. Instant document sharing
US6549908B1 (en) 1998-11-18 2003-04-15 Siebel Systems, Inc. Methods and apparatus for interpreting user selections in the context of a relation distributed as a set of orthogonalized sub-relations
US6728960B1 (en) 1998-11-18 2004-04-27 Siebel Systems, Inc. Techniques for managing multiple threads in a browser environment
EP1135723A4 (en) 1998-11-30 2005-02-16 Siebel Systems Inc DEVELOPMENT TOOL, METHOD AND SYSTEM FOR CUSTOMER SERVICE APPLICATIONS
AU1838300A (en) 1998-11-30 2000-06-19 Siebel Systems, Inc. Smart scripting call centers
WO2000033235A1 (en) 1998-11-30 2000-06-08 Siebel Systems, Inc. State models for monitoring processes
AU2707200A (en) 1998-11-30 2000-06-19 Siebel Systems, Inc. Assignment manager
US7356482B2 (en) 1998-12-18 2008-04-08 Alternative Systems, Inc. Integrated change management unit
US6574635B2 (en) 1999-03-03 2003-06-03 Siebel Systems, Inc. Application instantiation based upon attributes and values stored in a meta data repository, including tiering of application layers objects and components
US20020072951A1 (en) 1999-03-03 2002-06-13 Michael Lee Marketing support database management method, system and program product
US8095413B1 (en) 1999-05-07 2012-01-10 VirtualAgility, Inc. Processing management information
US7698160B2 (en) 1999-05-07 2010-04-13 Virtualagility, Inc System for performing collaborative tasks
US6621834B1 (en) 1999-11-05 2003-09-16 Raindance Communications, Inc. System and method for voice transmission over network protocols
US6535909B1 (en) 1999-11-18 2003-03-18 Contigo Software, Inc. System and method for record and playback of collaborative Web browsing session
US6324568B1 (en) 1999-11-30 2001-11-27 Siebel Systems, Inc. Method and system for distributing objects over a network
US6654032B1 (en) 1999-12-23 2003-11-25 Webex Communications, Inc. Instant sharing of documents on a remote server
US6577726B1 (en) 2000-03-31 2003-06-10 Siebel Systems, Inc. Computer telephony integration hotelling method and system
US6732100B1 (en) 2000-03-31 2004-05-04 Siebel Systems, Inc. Database access method and system for user role defined access
US6336137B1 (en) 2000-03-31 2002-01-01 Siebel Systems, Inc. Web client-server system and method for incompatible page markup and presentation languages
US7266502B2 (en) 2000-03-31 2007-09-04 Siebel Systems, Inc. Feature centric release manager method and system
US6665655B1 (en) 2000-04-14 2003-12-16 Rightnow Technologies, Inc. Implicit rating of retrieved information in an information search system
US7730072B2 (en) 2000-04-14 2010-06-01 Rightnow Technologies, Inc. Automated adaptive classification system for knowledge networks
US6434550B1 (en) 2000-04-14 2002-08-13 Rightnow Technologies, Inc. Temporal updates of relevancy rating of retrieved information in an information search system
US6842748B1 (en) 2000-04-14 2005-01-11 Rightnow Technologies, Inc. Usage based strength between related information in an information retrieval system
US6763501B1 (en) 2000-06-09 2004-07-13 Webex Communications, Inc. Remote document serving
US7069231B1 (en) 2000-07-20 2006-06-27 Oracle International Corporation Methods and systems for defining, applying and executing customer care relationship plans
KR100365357B1 (ko) 2000-10-11 2002-12-18 엘지전자 주식회사 무선통신 단말기의 데이터 통신 방법
US8812319B2 (en) 2001-01-31 2014-08-19 Ibiometrics, Inc. Dynamic pass phrase security system (DPSS)
US7581230B2 (en) 2001-02-06 2009-08-25 Siebel Systems, Inc. Adaptive communication application programming interface
USD454139S1 (en) 2001-02-20 2002-03-05 Rightnow Technologies Display screen for a computer
US7310687B2 (en) 2001-03-23 2007-12-18 Cisco Technology, Inc. Methods and systems for managing class-based condensation
US7174514B2 (en) 2001-03-28 2007-02-06 Siebel Systems, Inc. Engine to present a user interface based on a logical structure, such as one for a customer relationship management system, across a web site
US6829655B1 (en) 2001-03-28 2004-12-07 Siebel Systems, Inc. Method and system for server synchronization with a computing device via a companion device
US7363388B2 (en) 2001-03-28 2008-04-22 Siebel Systems, Inc. Method and system for direct server synchronization with a computing device
US20030206192A1 (en) 2001-03-31 2003-11-06 Mingte Chen Asynchronous message push to web browser
US20030018705A1 (en) 2001-03-31 2003-01-23 Mingte Chen Media-independent communication server
US6732095B1 (en) 2001-04-13 2004-05-04 Siebel Systems, Inc. Method and apparatus for mapping between XML and relational representations
US7761288B2 (en) 2001-04-30 2010-07-20 Siebel Systems, Inc. Polylingual simultaneous shipping of software
US6782383B2 (en) 2001-06-18 2004-08-24 Siebel Systems, Inc. System and method to implement a persistent and dismissible search center frame
US6763351B1 (en) 2001-06-18 2004-07-13 Siebel Systems, Inc. Method, apparatus, and system for attaching search results
US6711565B1 (en) 2001-06-18 2004-03-23 Siebel Systems, Inc. Method, apparatus, and system for previewing search results
US6728702B1 (en) 2001-06-18 2004-04-27 Siebel Systems, Inc. System and method to implement an integrated search center supporting a full-text search and query on a database
US20030004971A1 (en) 2001-06-29 2003-01-02 Gong Wen G. Automatic generation of data models and accompanying user interfaces
DE60208908T8 (de) 2001-07-19 2008-04-10 San-Ei Gen F.F.I., Inc., Toyonaka Geschmacksverbessernde zusammensetzungen und ihre anwendung
US6724399B1 (en) 2001-09-28 2004-04-20 Siebel Systems, Inc. Methods and apparatus for enabling keyboard accelerators in applications implemented via a browser
US6978445B2 (en) 2001-09-28 2005-12-20 Siebel Systems, Inc. Method and system for supporting user navigation in a browser environment
US7761535B2 (en) 2001-09-28 2010-07-20 Siebel Systems, Inc. Method and system for server synchronization with a computing device
US6826582B1 (en) 2001-09-28 2004-11-30 Emc Corporation Method and system for using file systems for content management
US6993712B2 (en) 2001-09-28 2006-01-31 Siebel Systems, Inc. System and method for facilitating user interaction in a browser environment
US7146617B2 (en) 2001-09-29 2006-12-05 Siebel Systems, Inc. Method, apparatus, and system for implementing view caching in a framework to support web-based applications
US6901595B2 (en) 2001-09-29 2005-05-31 Siebel Systems, Inc. Method, apparatus, and system for implementing a framework to support a web-based application
US7962565B2 (en) 2001-09-29 2011-06-14 Siebel Systems, Inc. Method, apparatus and system for a mobile web client
US8359335B2 (en) 2001-09-29 2013-01-22 Siebel Systems, Inc. Computing system and method to implicitly commit unsaved data for a world wide web application
US7289949B2 (en) 2001-10-09 2007-10-30 Right Now Technologies, Inc. Method for routing electronic correspondence based on the level and type of emotion contained therein
US7062502B1 (en) 2001-12-28 2006-06-13 Kesler John N Automated generation of dynamic data entry user interface for relational database management systems
US6804330B1 (en) 2002-01-04 2004-10-12 Siebel Systems, Inc. Method and system for accessing CRM data via voice
US7058890B2 (en) 2002-02-13 2006-06-06 Siebel Systems, Inc. Method and system for enabling connectivity to a data system
US7672853B2 (en) 2002-03-29 2010-03-02 Siebel Systems, Inc. User interface for processing requests for approval
US7131071B2 (en) 2002-03-29 2006-10-31 Siebel Systems, Inc. Defining an approval process for requests for approval
KR100450402B1 (ko) 2002-04-17 2004-09-30 한국전자통신연구원 컴퓨터 시스템에 있어서 보안속성을 갖는 토큰을 이용한접근 제어방법
US6850949B2 (en) 2002-06-03 2005-02-01 Right Now Technologies, Inc. System and method for generating a dynamic interface via a communications network
US8639542B2 (en) 2002-06-27 2014-01-28 Siebel Systems, Inc. Method and apparatus to facilitate development of a customer-specific business process model
US7437720B2 (en) 2002-06-27 2008-10-14 Siebel Systems, Inc. Efficient high-interactivity user interface for client-server applications
US7594181B2 (en) 2002-06-27 2009-09-22 Siebel Systems, Inc. Prototyping graphical user interfaces
US20040010489A1 (en) 2002-07-12 2004-01-15 Rightnow Technologies, Inc. Method for providing search-specific web pages in a network computing environment
US7251787B2 (en) 2002-08-28 2007-07-31 Siebel Systems, Inc. Method and apparatus for an integrated process modeller
US7069497B1 (en) 2002-09-10 2006-06-27 Oracle International Corp. System and method for applying a partial page change
US9448860B2 (en) 2003-03-21 2016-09-20 Oracle America, Inc. Method and architecture for providing data-change alerts to external applications via a push service
US7904340B2 (en) 2003-03-24 2011-03-08 Siebel Systems, Inc. Methods and computer-readable medium for defining a product model
JP2006521641A (ja) 2003-03-24 2006-09-21 シーベル システムズ,インコーポレイティド カスタム共通オブジェクト
US7711680B2 (en) 2003-03-24 2010-05-04 Siebel Systems, Inc. Common common object
US8762415B2 (en) 2003-03-25 2014-06-24 Siebel Systems, Inc. Modeling of order data
US7685515B2 (en) 2003-04-04 2010-03-23 Netsuite, Inc. Facilitating data manipulation in a browser-based user interface of an enterprise business application
US7412455B2 (en) 2003-04-30 2008-08-12 Dillon David M Software framework that facilitates design and implementation of database applications
US7620655B2 (en) 2003-05-07 2009-11-17 Enecto Ab Method, device and computer program product for identifying visitors of websites
US20050262087A1 (en) * 2003-05-19 2005-11-24 Ju Wu Apparatus and method for maintaining row set security through a metadata interface
US7409336B2 (en) 2003-06-19 2008-08-05 Siebel Systems, Inc. Method and system for searching data based on identified subset of categories and relevance-scored text representation-category combinations
US20040260659A1 (en) 2003-06-23 2004-12-23 Len Chan Function space reservation system
US7237227B2 (en) 2003-06-30 2007-06-26 Siebel Systems, Inc. Application user interface template with free-form layout
US7694314B2 (en) 2003-08-28 2010-04-06 Siebel Systems, Inc. Universal application network architecture
KR20050042694A (ko) 2003-11-04 2005-05-10 한국전자통신연구원 보안토큰을 이용한 전자거래방법 및 그 시스템
US7661141B2 (en) 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
US7711750B1 (en) 2004-02-11 2010-05-04 Microsoft Corporation Systems and methods that specify row level database security
US8607322B2 (en) 2004-07-21 2013-12-10 International Business Machines Corporation Method and system for federated provisioning
US7289976B2 (en) 2004-12-23 2007-10-30 Microsoft Corporation Easy-to-use data report specification
US20130104251A1 (en) * 2005-02-01 2013-04-25 Newsilike Media Group, Inc. Security systems and methods for use with structured and unstructured data
US7587410B2 (en) 2005-03-22 2009-09-08 Microsoft Corporation Dynamic cube services
US7818728B1 (en) 2005-04-04 2010-10-19 Qd Technology Llc Maximizing system resources used to decompress read-only compressed analytic data in a relational database table
US7590641B1 (en) 2005-04-04 2009-09-15 Qd Technology, Llc Selecting various algorithms to compress columns of analytic data in a read-only relational database in a manner that allows decompression of the compressed data using minimal system resources
US20090187586A1 (en) 2006-03-31 2009-07-23 Qd Technology Llc Selecting various algorithms to compress columns of analytic data in a read-only relational database in a manner that allows decompression of the compressed data using minimal system resources
US8566301B2 (en) 2006-05-01 2013-10-22 Steven L. Rueben Document revisions in a collaborative computing environment
US9135228B2 (en) 2006-05-01 2015-09-15 Domo, Inc. Presentation of document history in a web browsing application
US8209308B2 (en) 2006-05-01 2012-06-26 Rueben Steven L Method for presentation of revisions of an electronic document
US7779475B2 (en) 2006-07-31 2010-08-17 Petnote Llc Software-based method for gaining privacy by affecting the screen of a computing device
FR2905488B1 (fr) 2006-09-04 2011-04-01 Baracoda Architecture d'acces a un flux de donnees au moyen d'un terminal utilisateur
US8082301B2 (en) 2006-11-10 2011-12-20 Virtual Agility, Inc. System for supporting collaborative activity
US8954500B2 (en) 2008-01-04 2015-02-10 Yahoo! Inc. Identifying and employing social network relationships
US20080165970A1 (en) 2007-01-05 2008-07-10 Chung Hyen V runtime mechanism for flexible messaging security protocols
US8073850B1 (en) 2007-01-19 2011-12-06 Wordnetworks, Inc. Selecting key phrases for serving contextually relevant content
US8719287B2 (en) 2007-08-31 2014-05-06 Business Objects Software Limited Apparatus and method for dynamically selecting componentized executable instructions at run time
US7840518B1 (en) 2007-09-04 2010-11-23 The United States Of America As Represented By The Secretary Of The Navy System and method for object recognition utilizing fusion of multi-system probabalistic output
US20090100342A1 (en) 2007-10-12 2009-04-16 Gabriel Jakobson Method and system for presenting address and mapping information
US7987428B2 (en) 2007-10-23 2011-07-26 Microsoft Corporation Dashboard editor
US8504945B2 (en) 2008-02-01 2013-08-06 Gabriel Jakobson Method and system for associating content with map zoom function
US8490025B2 (en) 2008-02-01 2013-07-16 Gabriel Jakobson Displaying content associated with electronic mapping systems
US9418087B2 (en) * 2008-02-29 2016-08-16 Red Hat, Inc. Migrating information data into an application
US8032297B2 (en) 2008-05-08 2011-10-04 Gabriel Jakobson Method and system for displaying navigation information on an electronic map
US8014943B2 (en) 2008-05-08 2011-09-06 Gabriel Jakobson Method and system for displaying social networking navigation information
US8646103B2 (en) 2008-06-30 2014-02-04 Gabriel Jakobson Method and system for securing online identities
US8510664B2 (en) 2008-09-06 2013-08-13 Steven L. Rueben Method and system for displaying email thread information
US8661056B1 (en) 2008-11-03 2014-02-25 Salesforce.Com, Inc. System, method and computer program product for publicly providing web content of a tenant using a multi-tenant on-demand database service
US20100177051A1 (en) 2009-01-14 2010-07-15 Microsoft Corporation Touch display rubber-band gesture
US20100198804A1 (en) * 2009-02-04 2010-08-05 Queplix Corp. Security management for data virtualization system
CN102349050A (zh) 2009-02-10 2012-02-08 渣普控股有限公司 数据存储的创建
US20110106853A1 (en) 2009-10-30 2011-05-05 Microsoft Corporation Declarative model security pattern
US8510045B2 (en) 2009-12-22 2013-08-13 Steven L. Rueben Digital maps displaying search-resulting points-of-interest in user delimited regions
US8583587B2 (en) 2010-03-08 2013-11-12 Salesforce.Com, Inc. System, method and computer program product for performing one or more actions utilizing a uniform resource locator
US20110246504A1 (en) * 2010-04-01 2011-10-06 Salesforce.Com, Inc. System, method and computer program product for performing one or more actions based on a comparison of data associated with a client to one or more criteria
US8925041B2 (en) 2010-04-01 2014-12-30 Salesforce.Com, Inc. System, method and computer program product for performing one or more actions based on a determined access permissions for a plurality of users
US8566654B2 (en) 2010-08-13 2013-10-22 Salesforce.Com, Inc. Debugging site errors by an admin as a guest user in a multi-tenant database environment
US9021374B2 (en) 2010-12-03 2015-04-28 Salesforce.Com, Inc. Systems and methods for generating a dashboard in a multi-tenant database system environment
US8805882B2 (en) * 2011-01-20 2014-08-12 Microsoft Corporation Programmatically enabling user access to CRM secured field instances based on secured field instance settings
US20120331536A1 (en) 2011-06-23 2012-12-27 Salesforce.Com, Inc. Seamless sign-on combined with an identity confirmation procedure
GB2488386B (en) 2011-10-07 2013-01-16 David Teng Pong Method and apparatus for producing cut to length bars in a steel mill
US8839349B2 (en) * 2011-10-18 2014-09-16 Mcafee, Inc. Integrating security policy and event management
US9665898B2 (en) 2011-10-21 2017-05-30 Groupon, Inc. Executing multiple transactions using trigger inputs
US8863298B2 (en) * 2012-01-06 2014-10-14 Mobile Iron, Inc. Secure virtual file management system
AU2013214801B2 (en) * 2012-02-02 2018-06-21 Visa International Service Association Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems
US8943002B2 (en) 2012-02-10 2015-01-27 Liveperson, Inc. Analytics driven engagement
US8769004B2 (en) 2012-02-17 2014-07-01 Zebedo Collaborative web browsing system integrated with social networks
US8756275B2 (en) 2012-02-17 2014-06-17 Zebedo Variable speed collaborative web browsing system
US8769017B2 (en) 2012-02-17 2014-07-01 Zebedo Collaborative web browsing system having document object model element interaction detection
US8682925B1 (en) * 2013-01-31 2014-03-25 Splunk Inc. Distributed high performance analytics store
US8793213B2 (en) * 2012-05-23 2014-07-29 Sap Ag Embedded data marts for central data warehouse
US20140040374A1 (en) * 2012-07-31 2014-02-06 Salesforce.Com, Inc. Computer implemented methods and apparatus for providing relevant data in a social network feed according to a location of a computing device
US9747388B2 (en) * 2012-08-31 2017-08-29 Salesforce.Com, Inc. Systems and methods for providing access to external content objects
US9223807B2 (en) * 2012-09-13 2015-12-29 International Business Machines Corporation Role-oriented database record field security model
US9208212B2 (en) * 2012-12-17 2015-12-08 Sap Ag Field extensibility in a multi-tenant environment with columnar database support
US9275121B2 (en) * 2013-01-03 2016-03-01 Sap Se Interoperable shared query based on heterogeneous data sources
US9251241B2 (en) * 2013-03-15 2016-02-02 International Business Machines Corporation Self provisioning and applying role-based security to teamspaces in content repositories
JP5831480B2 (ja) 2013-03-25 2015-12-09 富士ゼロックス株式会社 携帯型情報端末装置、プログラム及びサービス利用システム
US20150047003A1 (en) 2013-08-07 2015-02-12 Sal Khan Verification authority and method therefor
SG11201605659SA (en) 2014-02-07 2016-08-30 Oracle Int Corp Mobile cloud service architecture
US9449187B2 (en) 2014-08-11 2016-09-20 Document Dynamics, Llc Environment-aware security tokens
US10713376B2 (en) 2016-04-14 2020-07-14 Salesforce.Com, Inc. Fine grain security for analytic data sets

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021152817A1 (ja) * 2020-01-31 2021-08-05
JP7315873B2 (ja) 2020-01-31 2023-07-27 日本電信電話株式会社 データ流通管理装置、データ流通管理方法、およびプログラム

Also Published As

Publication number Publication date
CA3021031A1 (en) 2017-10-19
US20170300712A1 (en) 2017-10-19
US10713376B2 (en) 2020-07-14
WO2017181131A1 (en) 2017-10-19
EP3443483A1 (en) 2019-02-20
CA3021031C (en) 2023-04-04
JP6751771B2 (ja) 2020-09-09

Similar Documents

Publication Publication Date Title
JP6751771B2 (ja) 解析データセットのための細粒セキュリティ
US10949565B2 (en) Data processing systems for generating and populating a data inventory
US10204154B2 (en) Data processing systems for generating and populating a data inventory
US10181051B2 (en) Data processing systems for generating and populating a data inventory for processing data access requests
US10671751B2 (en) Row level security integration of analytical data store with cloud architecture
US20200042743A1 (en) Data processing systems for generating and populating a data inventory for processing data access requests
US20220398338A1 (en) Data privacy pipeline providing collaborative intelligence and constraint computing
US11256702B2 (en) Systems and methods for management of multi-tenancy data analytics platforms
US11403299B2 (en) Constraint manager for collaborative intelligence and constraint computing
US11409897B2 (en) Constraint querying for collaborative intelligence and constraint computing
EP2116954A1 (en) Apparatus and method for accessing data in a multi-tenant database according to a trust hierarchy
US9971803B2 (en) Method and system for embedding third party data into a SaaS business platform
US9830385B2 (en) Methods and apparatus for partitioning data
US11100087B2 (en) Data tokenization system maintaining data integrity
US11169997B1 (en) Centralized data access tool implementing resource governance
US11222035B2 (en) Centralized multi-tenancy as a service in cloud-based computing environment
EP4345643A1 (en) Distributing large amounts of global metadata using object files

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200522

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200522

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200715

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: 20200721

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200817

R150 Certificate of patent or registration of utility model

Ref document number: 6751771

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250