JP5004779B2 - マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム - Google Patents

マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム Download PDF

Info

Publication number
JP5004779B2
JP5004779B2 JP2007320232A JP2007320232A JP5004779B2 JP 5004779 B2 JP5004779 B2 JP 5004779B2 JP 2007320232 A JP2007320232 A JP 2007320232A JP 2007320232 A JP2007320232 A JP 2007320232A JP 5004779 B2 JP5004779 B2 JP 5004779B2
Authority
JP
Japan
Prior art keywords
window
security level
windows
window system
order
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.)
Expired - Fee Related
Application number
JP2007320232A
Other languages
English (en)
Other versions
JP2009146009A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2007320232A priority Critical patent/JP5004779B2/ja
Priority to US12/331,762 priority patent/US20090150824A1/en
Publication of JP2009146009A publication Critical patent/JP2009146009A/ja
Application granted granted Critical
Publication of JP5004779B2 publication Critical patent/JP5004779B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Description

この発明は、一般的には、コンピュータのセキュリティ管理に関し、より詳しくは、マルチセキュリティ・レベルに対応したコンピュータに接続された画面における出力情報を保護するためのグラフィック・インターフェースの技術に関するものである。
マルチレベルセキュリティに対応したシステムでは、セキュリティレベルの異なる主体間の情報フローを厳密に管理する必要がある。一般に、マルチレベルセキュリティシステムでは、プロセスにラベル付けを行ない、ラベルに基づいて、ファイルやデバイスに対するアクセス制御を行なう。軍事などの一部の分野では、マルチレベルセキュリティに対応した専用のオペレーティング・システム(OS)が用いられているが、近年は、Windows(R)などの一般商用OSにおいて、強制アクセス制御機構を後から付加することで、簡易的なマルチレベルセキュリティを実現する手法も存在する。
クライアント端末として利用されることの多いWindows(R)などの一般商用OSでは、マルチウィンドウ・システムによるGUIが提供されており、これによれば、ユーザーはウィンドウを切り替えながら、複数のタスクを同時に処理できる。しかし、このようなマルチタスクのウィンドウシステムに、マルチレベルセキュリティの概念を持ち込むと、ユーザビリティの観点から問題が生じる。具体的には、同一デスクトップ画面上でセキュリティレベルの異なる複数の作業を同時に行なう場合、現在どのレベルの作業を行なっており、何が許可されて、何が禁止されているか、ユーザーには直感的にわかりにくい。
例えば、印刷やコピーが禁止されている機密文書と、制限のない通常の文書を同時に編集しているとき、ウィンドウを切り替えても画面の見た目がほぼ同じため、操作が許可されているのか、禁止されているのか、実際に実行するまでユーザーは判断できない。そのため、誤って禁止された操作をしてしまい、意図せずに警告が管理者に通知されるなど、不都合が生じる。
そこで、セキュリティレベルごとにデスクトップ画面を隔離することで、どのレベルで作業しているのか直感的にわかるようにしたGUIが提供されている。例えば、仮想化技術を用いてデスクトップ画面をセキュリティレベルごとに隔離する方法がある。これによれば、個別にポリシーを割り当てた専用の仮想環境でプログラムを動かすため、自分がどのレベルで作業しており、何が禁止されているのか、ユーザーは直感的に理解できる。ただし、仮想環境間で自由にデータをやり取りできないため、本来許可されても問題のないコピー&ペーストやドラッグ&ドロップなどの便利な操作も過度に制限され、利便性が大きく犠牲になる。また、レベルごとに準備する仮想環境のセットアップやソフトウェアライセンスなどのコストも無視できない。
異なるセキュリティレベルのプログラムを同一デスクトップ内で動かす方法として、下記非特許文献1では、専用のウィンドウマネージャの管理下で、複数のウィンドウシステムを透過的に合成表示する手法が示されている。ウィンドウマネージャが、画像の合成出力と、入力デバイスイベントの振り分けを担い、ウィンドウシステム間での情報流通を遮断する。一つのデスクトップ画面内で複数のセキュリティレベルの作業を同時に実現できるが、異なるレベル間の情報流通は一律に遮断されるため、仮想化技術を用いた方法と同様、過度の制限を受け、操作性が低下する。
また、Trusted Solaris(商標)など、一部のセキュアOSでは、セキュリティラベルをサポートするウィンドウシステムが提供されているが、ウィンドウ・プロパティ情報へのアクセス制御やクリップボード操作の可否を制御するのみであり、GUIの表示状態を制御するわけではなく、直感的なわかりやすさが実現されているわけではない。
特開平5−53748号公報は、マルチウィンドウ管理に関するもので、個々のウィンドウに対して別個に入出力を禁止することで、個々のウィンドウに対して機密保護を可能とするマルチウィンドウ管理装置を開示する。これにおいては、ウィンドウ入出力制御部が、機密保護属性テーブル部の機密保護属性を参照することでウィンドウ別に入出力を管理して機密保護を行う。
特開平6−149525号公報は、ロックを必要とする画像の特定領域に重ね合わせるようにロック用ウインドウ12を表示する技術を開示する。この場合、ロック用ウインドウ以外の領域にカーソルを移動させて所定の入出力処理を行うと、その画像の加工や命令の入出力が可能となる。しかしながら、ロック用ウインドウ上にカーソルを重ねて操作しても、その操作命令はロック用ウインドウの下にある画像についての処理とは見なされず、その特定領域に限ってデータ入出力処理が禁止される。
特開平7−281860号公報は、グラフィカル・ユーザ・インタフェースのコントロールにアクセス・セキュリティを提供するための技術に関し、グラフィカル・ユーザ・インタフェースのウィンドウ内の個別のコントロールにセキュリティを提供する方法およびシステムを提供することを開示する。この技術によれば、コントロールを有するウィンドウの作成またはオープン時に、コントロール情報を隠して見えなくする覆い隠し領域が定義される。その後、許可パスワードを入力することでアクセス権を獲得することができる。
特開平11−195033号公報は、二次元画像情報の提示装置において、各レイヤーごとにセキュリティーを確保し、複数ファイル間でのレイヤーを一元的に取り扱うようにすることを開示する。
特開2000−181597号公報は、コンピュータ・システムのグラフィック・ユーザ・インタフェース(GUI)内の制御を保護する方法及び装置に関し、これによれば、GUIが、ユーザ入力に応答して、1つ以上の制御領域を表示する。すると、制御は、保護状態をユーザに伝える透過のオーバレイにより、入力から保護される。許可されたユーザはポインティング・デバイスにより、制御に近接するグリップ面を活動化し、次に該デバイスを移動して、ボタンまたはコマンド行入力のフィールドなどに相当する下側の制御を露出し、カバーを除去し得る。こうして、制御領域との不注意な対話が回避される。
特開2007−65846号公報は、本出願人と同一の出願人に係る発明であり、オペレーティングシステム上で第1および第2アプリケーションプログラムを含む複数のアプリケーションプログラムを並行に動作させる情報処理装置であって、第1アプリケーションプログラムからオペレーティングシステムに対する関数呼び出し、または、第1アプリケーションプログラムおよびオペレーティングシステム間で送受信されるメッセージを監視する監視部と、監視部による監視結果に基づいて、第2アプリケーションプログラムからオペレーティングシステムに対する関数呼び出し、若しくは、第2アプリケーションプログラムおよびオペレーティングシステム間のメッセージ送受信の処理を変更または禁止する制御部とを備える情報処理装置を開示する。本願発明の1つの背景技術として参考までに示す。
上記のような従来技術では、セキュリティ保護という目的は達成されるが、依然として、GUIのわかりやすさと、情報フロー制御の柔軟性を両立することが難しい。また、上記のような従来技術では、どのウインドウが高いセキュリティ・レベルにあり、どのウインドウが低いセキュリティ・レベルにあるか、ということが明確でない。
特開平5−53748号公報 特開平6−149525号公報 特開平7−281860号公報 特開平11−195033号公報 特開2000−181597公報 特開2007−65846号公報 Norman Feske and Christian Helmuth. Overlay Window Management: User interaction with multiple security domains. Technical Report TUD-FI04-02-Marz 2004, TU Dresden, 2004
この発明の目的は、マルチセキュリティレベルのシステムにおいて、ユーザのGUIの操作性を改善することにある。
この発明の他の目的は、マルチセキュリティレベルのシステムにおいて、ウインドウのセキュリティ・レベルの分かりやすさを改善するマルチウインドウ・システムを提供することにある。
本発明の一側面では、セキュリティレベルと、画面上のZ軸方向の位置情報(Zオーダー)を対応づけし、低セキュリティレベルのプログラムが、高セキュリティレベルのプログラムよりZ軸方向で高くならないように制限を課す。同時に、クリップボードやウィンドウメッセージによる情報フローに関して、Z軸方向の高いプログラムから低いプログラムへの流れを制限する。アクセスするファイルや表示する文書の属性などに応じて、ウィンドウ単位でセキュリティレベルを細粒度に管理し、ユーザーが実際に作業しているウィンドウのセキュリティレベルに応じて、デスクトップ内の各ウィンドウの表示状態を動的に制御する。また、セキュリティレベルに応じて、プリンタやドライブなどのシステムリソースの可視状態も制御する。
本発明においては、各プロセス内には、ウィンドウのアクティブ状態やZ軸方向の位置などを監視する状態監視部、状態変化に応じてセキュリティレベルを再評価するセキュリティレベル判定部、ウィンドウの可視状態を制御する状態制御部、クリップボードやウィンドウメッセージなどのリソースアクセスを制御するアクセス制御部が常駐する。状態監視部は、ウィンドウのZ軸方向の位置変更イベントを監視し、自分よりセキュリティレベルの高いウィンドウの上位に移動しようとしていることを検出すると、システムは、各ウィンドウを所有するプロセス内の状態制御部に状態変更要求を通知する。通知を受けた上位セキュリティレベルの各プロセス内の状態制御部は、ウィンドウを不可視状態に変更し、画面上から消去する。また、アクセス制御部は、状態変更時にクリップボード内に残されたデータを消去すると同時に、上位プログラムからクリップボードへのデータ出力や、上位プログラムから下位プログラムへのメッセージ送信を制限する。なお、クリップボード内のデータの所有者を判定するために、アクセス制御部は、プログラムがクリップボードにデータを出力する時は常に、書き込み元プログラムのセキュリティレベルを付加情報としてユーザー定義領域に書き込む。また、状態監視部とセキュリティレベル判定部が連携し、GUIの状態変化に応じてセキュリティレベルの再評価を行なう。
一方、セキュリティレベル復元GUI表示部がシステムに常駐し、高レベル・プログラムへの復帰を要求するためのGUIをユーザーに提供する。GUIは、例えばタスクバーのウィンドウアイコンをクリックする方法でもよいし、タスクトレイに常駐するレベル選択のスライドバーでもよい。また、特定のホットキー(Shiftキーなど)が長時間押されたときに、不可視上位ウィンドウを半透明表示させる方式でもよい。これらのGUIを用いてユーザーが高レベルプログラムへの復帰を要求すると、高レベルプログラム内の状態制御部に状態変更要求を通知する。通知を受けた状態制御部は、不可視状態のウィンドウを元のZ軸方向の位置で可視化する。その結果、それまでフォーカスされていた低セキュリティレベルのウィンドウはフォーカスを失い、Z軸方向で下位に移される。
なお、本発明の別の側面では、セキュリティ・レベルと、ウインドウのZオーダーの関係が逆になり、高セキュリティレベルのプログラムが、低セキュリティレベルのプログラムよりZ軸方向で高くならないように制御される。
この発明によれば、セキュリティレベルと、画面上のZ軸方向の位置情報を対応づけし、低セキュリティレベルのプログラムのウインドウが高いZ値をもつように操作されたことに応答して、高セキュリティレベルのプログラムのウインドウを隠すようにシステムが自動的に制御するので、ユーザが、使用するウインドウのセキュリィ・レベルでとまどうことが少なくなり、操作性が向上する。
以下、図面を参照して、本発明の一実施例の構成及び処理を説明する。以下の記述では、特に断わらない限り、図面に亘って、同一の要素は同一の符号で参照されるものとする。なお、ここで説明する構成と処理は、一実施例として説明するものであり、本発明の技術的範囲をこの実施例に限定して解釈する意図はないことを理解されたい。
図1を参照すると、本発明の一実施例に係るシステム構成及び処理を実現するためのコンピュータ・ハードウェアのブロック図が示されている。図1において、システム・パス102には、CPU104と、主記憶(RAM)106と、ビデオメモリ(VRAM)108と、ハードディスク・ドライブ(HDD)110と、キーボード112と、マウス114と、ディスプレイ116が接続されている。CPU104は、好適には、32ビットまたは64ビットのアーキテクチャに基づくものであり、例えば、インテル社のPentium(商標) 4、AMD社のAthlon(商標)などを使用することができる。主記憶106は、好適には、512KB以上の容量をもつものである。ビデオメモリ108は、ディスプレイ116に画面出力するためのイメージを保持するために使用される。
ハードディスク・ドライブ110には、個々に図示しないが、オペレーティング・システム及び本発明に係る処理プログラム、及びそのワードプロセッサ、表計算プログラム、プレゼンテーション作成プログラム、データベース・プログラムなどのアプリケーション・プログラムが、予め格納されている。オペレーティング・システムは、Linux(商標)、マイクロソフト社のWindows XP(商標)、Windows(商標)2000、アップルコンピュータのMac OS(商標)などの、マルチウインドウのグラフィック・ユーザー・インターフェースをサポートし、CPU104に適合する任意のものでよい。なお、以下の説明では、便宜上、オペレーティング・システムとして、Windows XP(商標)を使用し、APIとしてWin32 APIを使用するものとして説明する。しかし、この分野の当業者なら、Linux(商標)などの他のオペレーティング・システムでも、同等のAPIを具備しており、そのような別のオペレーティング・システムでも本発明を実現できることを理解するであろう。
ディスプレイ116は、これには限定されないが、好適には、1024×768以上の解像度をもち、32ビットtrue colorのLCDモニタである。
キーボード110及びマウス112は、オペレーティング・システムが提供するグラフィック・ユーザ・インターフェースに従い、ディスプレイ116に表示されたアイコン、タスクバー、ウインドウなどのグラフィック・オブジェクトを操作するために使用される。
図2は、本発明の機能ブロック図を示す。図2において、オペレーティング・システム202は、ハードディスク110に格納されて、図1に示すコンピュータの電源投入時に、RAM106にロードされて、動作する。オペレーティング・システム202の主要な機能として、ハードディスク110、キーボード112、マウス114、及びディスプレイ116などの周辺装置との入出力制御機能、プログラムのロード及び機能、タスクの切り替え機能などを有する。
ウインドウ・マネジャ204は、ディスプレイ116にウインドウを表示したり、ウインドウをリサイズしたり、ウインドウを隠したり、ウインドウを消滅させたり、ユーザのマウス・クリック操作に応答して、指定したウインドウを前面にもってきたり、1つのウインドウから別のウインドウに、クリップボードを介してデータをコピーしたりする操作をコントロールするなどのGUI環境を提供するシステムであり、Linux(商標)では、X Window Systemなどがそれに当たる。Windows XP(商標)においては、ウインドウ・マネジャ204は、オペレーティング・システム202の機能の一部として含まれており、具体的には、Win32k.sys、GDI32.DLLなどからなるが、これらの機能自体は周知なので、ここでは詳細な説明は省略する。
アプリケーション・プログラム206a、206b・・・206zは、例えば、ワードプロセッサ、表計算プログラム、プレゼンテーション作成プログラムなどであり、ハードディスク・ドライブ110に保存されており、ユーザのマウス114やキーボード112の操作により、オペレーティング・システム202の機能によって、主記憶106にロードされ、ウインドウ・マネジャ204の機能により、個別のウインドウに表示されて、並列に実行される。
次に、本発明の特徴的な機能である、状態監視部208、セキュリティレベル判定部210、状態制御部212、アクセス制御部214、及びセキュリティレベル復元GUI表示部216について説明する。これらの機能は、オペレーティング・システム202が提供するAPI関数を呼び出して、プロセスやスレッドを監視し得る機能を記述可能な、C、C++、C#、Java(商標)などの任意の適当なプログラム言語処理系で書かれて、ハードディスク・ドライブ110に保存されて、スタートアップ・ルーチンに組み込まれて、図1のコンピュータ・システムの電源投入時に、自動的に主記憶108にロードされて実行されるように、オペレーティング・システム202に制御される。
なお、図2には、状態監視部208、セキュリティレベル判定部210、状態制御部212、アクセス制御部214は、アプリケーション・プログラム206a、206b・・・206zと機能的に別のものとして表示されているが、好適には、セキュリティレベル判定部210、状態制御部212、アクセス制御部214がアプリケーション・プログラム206a、206b・・・206z内部のプロセスに介在し常駐して、1つのアプリケーション・プログラムから別のアプリケーション・プログラムを、監視する機能をもつ。
状態監視部208は、ウィンドウマネージャ204が提供するメッセージフック機構を利用する。状態監視部208は、ウィンドウマネージャ204から通知されるメッセージを監視し、ウィンドウのZオーダーの変更やアクティブ状態の変更を検出する。例えば、WM_WINDOWPOSCHANGINGメッセージを監視することで、Z軸方向の位置、すなわち、ウインドウの重なりの上下、が変更されることを検出する。また、WM_ACTIVATEメッセージを監視することで、フォーカスを得るまたは失うことを検出する。ウィンドウの状態変化を検出すると、必要に応じて、各プロセス内の状態制御部に対して、ウィンドウの可視状態の変更を要求する。また、後述するセキュリティレベル判定部210に対して、セキュリティレベルの再評価を要請する。
セキュリティレベル判定部210は、状態監視部208から通知されるイベントに応じて、当該プロセスの所有するウィンドウのセキュリティレベルを再評価する。例えば、アプリケーションが別の文書を開いた場合などに、開いた文書の属性に応じて、ウィンドウのセキュリティレベルを再評価する。なお、Windowsの電卓のような単純なプログラムの場合、一つのプロセスに一つのセキュリティレベルを固定的に適用できるので、セキュリティレベル判定部を省略してもよい。
本発明によれば、アプリケーション・プログラム206a、206b、・・・206zには、1〜3のようなセキュリティ・レベルが付与される。ここでは、その数字が多いほど、セキュリティ・レベルが高いとする。アプリケーション・プログラム、あるいはアプリケーション・プログラムが生成するプロセスにセキュリティ・レベルを付与する技術としては、例えば、特開2007−65846に記載されている技術がある。これにより開示される技術は、オペレーティング・システム202上で、アプリケーション・プログラム間で送受信されるメッセージを監視し、別途記述されているポリシーに基づき、処理の変更、禁止などを行う。
下記は、ファイル毎にセキュリティ・ラベルを設定するポリシーの例であり、<Rule RuleId="urn:rule1">が、設定されるセキュリティ・レベルを記述する。すなわち、urn:rule1以外に、"urn:rule0, "urn:rule2など複数用意しておく。また、<AttributeValue DataType="file:path"> 〜 </AttributeValue>のところで、そのセキュリティ・ラベルが適用されるアプリケーション・プログラムを記述する。
<!-- Group 1 -->
<Rule RuleId="urn:rule1">
<Description>Deny clipboad copy and print by notepad and calc</Description>
<Subjects>
<Subject>
<AttributeValue DataType="file:path">calc.exe</AttributeValue>
</Subject>
<Subject>
<AttributeValue DataType="file:path">notepad.exe</AttributeValue>
</Subject>
</Subjects>
<Resources>
<Resource DataType="clipboard" Lib="SBLCLIP">
<!-- クリップボードへのコピー禁止 -->
<AttributeValue DataType="clipboard:type">
<AnyClipboardDataType/>
</AttributeValue>
<Actions>
<Action Effect="Deny">write</Action>
</Actions>
</Resource>
...........
...........
</Rule>
同様に、アプリケーション・プログラムによって生成されるプロセス毎に、セキュリティ・レベルを設定することが可能であり、例えば、あるウインドウが生成する子ウインドウに別のセキュリティ・レベルを設定することも可能である。しかし、このようなセキュリティ・レベル設定機能自体は、本発明の要旨ではないので、これ以上の詳しい説明は省略する。必要に応じて、特開2007−65846その他の従来技術を参照されたい。セキュリティレベル判定部210は、状態監視部208からの要求に応じて、このような機能を利用して、アプリケーション・プログラムのセキュリティ・レベルを検出し、状態監視部208にその検出結果を返す。
状態制御部212は、常駐先プロセス内でウィンドウ可視状態変更APIを呼び出すことで、ウィンドウの可視状態を制御する。例えば、SetWindowPlacement、SetWindowPos、SetLayeredWindowAttributesなどのAPIを呼び出して、ウィンドウの可視状態やZオーダーを変更したり、半透明表示に変更したりする。この際、基本的には、個々のウィンドウを個別に制御するのではなく、ウィンドウ間の親子関係や被所有関係に基づいて、グループ単位で制御する。例えば、アプリケーションがモーダルダイアログを表示している場合でも、モーダルダイアログ・ウィンドウと、その所有者ウィンドウであるアプリケーションの主ウィンドウとを、一体として扱う。また、必要に応じて、状態制御部212は、その他のウィンドウ属性を変更する。例えば、低セキュリティレベルのウィンドウが、最上位属性(WS_EX_TOPMOST)ウィンドウを表示している場合、それより高いセキュリティレベルのウィンドウを表示するために、一時的に最上位属性を取り除き、高セキュリティレベルのウィンドウより下位に表示されるように、Zオーダーを調整する。
セキュリティレベル復元GUI表示部216は、高レベルプログラムのウインドウが非表示の時、高レベルプログラムのウインドウの復帰を要求するためのGUIをユーザに提供する。このGUIは、ユーザの指示に応じて、各プロセス内の状態制御部に対して状態変更要求を通知し、通知を受けた状態制御部は、不可視状態のウィンドウを元のZ軸方向の位置で、復元し可視化する。そのGUIとしては、さまざまな形態を実現することができる。例えば、タスクバーやタスクトレイ常駐アイコンのような専用の単体プログラムとして実装してもよいし、状態監視部208・状態制御部212と連携して、ウィンドウマネージャ204内でシームレスなGUIを実現してもよい。後者のシームレスなGUIの具体的な方法は、特定のホットキー(Shiftキーなど)が長時間押されること、あるいは特定のキーの押し下げの組み合わせ(例えば、「前面」キー+上カーソル・キー)を状態監視部212が検出すると、不可視状態の上位レベルプロセスの状態制御部に要求して、ウィンドウを一斉に復元表示させる。
また、セキュリティレベル復元GUI表示部216によるセキュリティレベルの復元要求以外に、新規に高いレベルのプログラムを起動することでGUI状態を復元させようにしてもよい。この場合、GUIやそれに類する操作の結果、それまでフォーカスされていた低レベルウィンドウはフォーカスを失い、Z軸方向で下位に移される。
オペレーティング・システム202はさらに、ウインドウ・マネジャ204からの描画命令に基づき、VRAM108にビットマップの値を書き込み、あるいはコピーや移動させて、実際にディスプレイ116に、ウインドウその他のグラフィックスを描画する。具体的には、VRAM108には、画面表示領域108aと、複数のオフスクリーン・バッファ領域108a、108b・・・108zがある。オフスクリーン・バッファ領域108a、108b・・・108zは、アプリケーション・プログラム206a、206b・・・206zの、子ウインドウも含む個々のウインドウに対応し、アプリケーション・プログラムが生成されて、そのウインドウが存在するようになったときに、そのオフスクリーン・バッファ領域が、CreateBitmapなどのAPI関数により、VRAM108中にアロケートされる。そうして、実際のディスプレイ116への表示は、オフスクリーン・バッファ領域のビットマップ値を、BitBltなどのAPI関数により、画面表示領域108aにビットブロック転送することによって、達成される。ウインドウの画面からの消去は、画面表示領域108aから、対応するオフスクリーン・バッファ領域に、表示内容を退避させることによって、達成される。
図3は、本発明に係る処理のフローチャートの図である。図3において、ステップ302では、状態監視部208が、イベント発生を待機する。ここでいうイベントとは、ウインドウのZオーダーの変更、ウインドウの消去、消去されたウインドウの再表示、ウインドウの破棄、などの処理のことである。
そのようなイベントが、状態監視部208により検出されると、ステップ304では、ウインドウがZオーダー上位に移動したかどうかが、判断される。ウインドウがZオーダー上位に移動した、ということは、例えば下位Zオーダーにあるウインドウをマウスでクリックして、最上位のZオーダーにする、ということである。ウインドウがZオーダー上位に移動したことが検出されると、ステップ306では、より高いZオーダーにあり、且つ、その上位に移動したウインドウよりも高いセキュリティ・レベルのウインドウが消去される。これを行うためには、各ウインドウのセキュリティ・レベルが必要であるが、それは、状態監視部208が、セキュリティ・レベル判定部210に問い合わせすることによって知ることができる。
ウインドウがZオーダー上位に移動したのでないなら、ステップ308で、イベントが、他ウインドウからの消去要求かどうかが判断される。他ウインドウからの消去要求とは例えば、当該ウィンドウより低いセキュリティレベルの他のウィンドウが,Z軸上で当該ウィンドウより上位に移動するために,画面から消えるように要求することであったり、親ウィンドウが消去されるとき、その子ウィンドウに対しても消去が指示されるような場合のことである。そのような場合、ステップ310で、その消去されるウインドウのZオーダーを記憶して、ウインドウが消される。この場合、消すとは、単にウインドウを最小化してもよく、セキュリティ・レベル復元GUI表示部216によって表示される、適当な専用のGUIで表示されたタスクトレイに入れてもよく、あるいは、半透明化してもよい。なお、記憶されるZオーダーの値は、例えば、状態監視部208が保持する主記憶106上の所定の領域に、後で読み出し可能に保存される。
他ウインドウからの消去要求でないなら、ステップ312では、セキュリティ・レベル復元GUI表示部216からの再表示要求かどうかが判断され、もし再表示要求であるなら、ステップ314で、その再表示要求されたウインドウに関連して記憶されていたZオーダー位置に、そのウインドウが表示される。例えば、セキュリティ・レベル復元GUI表示部216によって表示された、図5に示すようなGUIのタスクトレイ領域504から、指定された操作により復元されることができる。あるいは、タスクトレイ中の所望のウインドウ・アイコンにマウス・カーソルを合わせて、例えば、Ctrl + Rのキーが押されたことをトリガするようにしてもよい。
なお、ステップ312での「復元GUI表示部からの再表示要求」という記述は例示的な記述であって、ウインドウが最小化されたのであれば、それを元に戻す表示であり、ウインドウが半透明化されたのであれば、それをもとの非透明表示に戻すことを意味する。
もし再表示要求でないなら、ステップ316で、ウインドウ破棄かどうかが判断される。ここでウインドウ破棄とは、例えば、ウインドウ右上のXをクリックするなどによって、監視中のウインドウを破棄することを意味する。すなわち、もし、監視中のウインドウを破棄するなら、最早イベントを監視する必要はなくなるので、この処理を完了する。
監視中のウインドウを破棄するのでないなら、処理は、ステップ302に戻って、次のイベントの発生を待機することになる。また、図3には示さないが、セキュリティ管理の目的で、高いセキュリティ・レベルのウインドウから低いセキュリティ・レベルのウインドウへの、クリップ・ボード等を介しての文書やデータ、グラフィック・データ、ビットマップなどのコピーは禁止される。このような禁止の仕組みは、例えば、特開2007−65846によって提供される。このとき、図3のフローチャートに示す処理は、ウィンドウの数だけ、マルチタスクで並行動作される、と理解されたい。
また、図3には示していないが、この実施例の処理によると、新規に起動されたアプリケーションのウインドウのZオーダーは、そのアプリケーションよりも低いセキュリティ・レベルのウインドウよりは高く、そのアプリケーションよりも高いセキュリティ・レベルのウインドウよりは低くなるように選ばれる。
図4は、セキュリティ・レベル復元GUI表示操作の処理のフローチャートである。ステップ402では、セキュリティ・レベル復元GUIが表示される。これは、例えば、「前面」キー+上向きカーソルの組み合わせの押し下げなでに応答して表示される。
図5に、セキュリティ・レベル復元GUI500の一例を示す。図5において、コンボボックス502は、復元すべきウインドウのセキュリティ・レベルを設定するためのもので、コンボボックス502によるレベルの切り替えに応答して、その指定したセキュリティ・レベルにあり且つ非表示状態にあるウインドウのアイコン504a、504b・・・が、領域504に表示される。
図5に示すGUIはさらに、「すべて復元」というボタン506と、「選択復元」というボタン508をもつ。図4のステップ404は、コンボボックス502によって指定したセキュリティ・レベルにあるウインドウの復元要求かどうか、すなわち、ユーザが、「すべて復元」のボタン506をクリックしたかどうかの判断である。
そこで、ユーザが、「すべて復元」のボタン506をクリックすると、処理はステップ406に移行し、そこで、消去状態にあり、要求されたレベルの全ウインドウ(図5では、領域504にあるアイコン化されたウインドウすべて)の復元が要求される。ここでいう復元とは、図3のステップ310に関連して説明したように、もともと記憶されていたZオーダーでウインドウを表示させることである。
図4のフローチャートには明示しないが、図5のGUIにおいて、領域504に表示されているウインドウのアイコン504a、504b・・・を、Ctrlキーを押しながらマウス・カーソルでクリックするなどのインターフェースにより1つまたは複数の非表示ウインドウのアイコンを選択し、「選択復元」のボタン508をクリックすることにより、選択されたウインドウのみ復元する、という操作も可能である。
図4に戻って、こうしてステップ408で、すべてのセキュリティ・レベルのウインドウの復元表示が完了したと判断されたなら、復元処理は完了である。復元表示するウインドウがなくなったことに応答して、システムは、図5のGUIを自動的に終了してもよいし、ユーザが手動で図5のGUIを終了してもよい。
まだ復元表示すべきウインドウが残っていて、ユーザが処理を続けたいなら、図4の処理は、ステップ402に戻る。
次に図6以下を参照して、本発明によるウインドウの非表示・復元処理について、具体的に説明する。図6の(a)は、ディスプレイ116に複数のウインドウ602、604、606、608、610、612が表示されている状態を示す。図6の(b)には、図6の(a)に示したウインドウ602、604、606、608、610、612のZオーダー(Z座標)と、そのセキュリティ・レベルが示されている。このとき、図6の(a)のウインドウの参照番号と、図6の(b)の参照番号とは対応していることに留意されたい。このことは、図7乃至図9でも同様である。
図6の(b)に示すように、ウインドウ602、604はセキュリティ・レベル3にあり、ウインドウ606、608はセキュリティ・レベル2にあり、ウインドウ610、612はセキュリティ・レベル1にあるとする。
そこで、ユーザが、マウスカーソル620で、ウインドウ606をクリックするとする。この操作は、ウインドウ606のZオーダーを最上位にもってくることを意味する。しかし、本発明のこの実施例によれば、状態監視部208がこの状態変化を検出し、ウインドウ606において、図3のステップ304での肯定的な判断をもたらす。これにより、ウインドウ606のステップ306において、ウインドウ606よりも高いZオーダーをもち、且つ高いセキュリティ・レベルのウインドウ、すなわち、ウインドウ602、604に、消去が要求される。その要求が、ウインドウ602とウインドウ604におけるステップ308のYes及び、それによるステップ310の実行へと伝播し、結果的に、ウインドウ602、604が消去されることになる。この処理は、状態制御部212が、ウインドウマネジャ204にリクエストを出すことによってなされる。
この結果、図7(a)に示すように、ウインドウ602、604が消去され、ウインドウ606が最上位ウインドウとなる。図7(b)では、このように消去状態にあるウインドウ602、604は、破線で表示している。
さらに図7(a)で、ユーザが、マウスカーソル620で、ウインドウ610をクリックするとする。この操作は、ウインドウ610のZオーダーを最上位にもってくることを意味する。こうして、図6に説明したのと同様の処理で、ウインドウ606、608に、消去が要求される。その状態を、図8に示す。
この状態で、「前面」キー+上向きカーソル・キーを押し下げると、このキー入力が、状態監視部208によって検出されて、図5に示すGUI500が、画面116に現れる。そこで、コンボボックス502で、レベル2を選ぶと、領域504には、レベル2で且つ現在非表示状態にあるウインドウ606、608の最小化アイコンが表示される。そこで、「すべて復元」のボタン506をクリックすると、図4のステップ406に従い、より具体的には図3のステップ314により、ウインドウ606、608が元のZオーダーで、復元される。その状態は、図7に示すとおりである。
さらに、コンボボックス502で、レベル3を選ぶと、領域504には、レベル3で且つ現在非表示状態にあるウインドウ602、604の最小化アイコンが表示される。そこで、「すべて復元」のボタン506をクリックすると、図4のステップ406に従い、より具体的には図3のステップ314により、ウインドウ602、604が元のZオーダーで、復元される。その状態は、図6に示すとおりである。
なお、上記の復元操作では、レベル2→レベル3、とウインドウを復元したが、この復元順序は任意であって、レベル3→レベル2の順であっても、問題はない。その場合は、ウインドウ610の上に、レベル3のウインドウ602、604がまず復元され、次に、ウインドウ610の上に、レベル2のウインドウ606、608が復元されることになるが、図3のステップ310で、ウインドウのZオーダーを記憶してウインドウが消去されているので、復元時に、記憶されているZオーダーが使用され、以って正しいZ位置にウインドウが復元されることになる。
図9は、本発明の別の実施例を示す図である。すなわち、図7では、セキュリティ・レベル2のウインドウ606を選ぶと、その上にあった高いセキュリティ・レベルのウインドウ602、604は、ディスプレイ画面から完全に消去されたが、図9では、消去する代わりに単に、ウインドウ602、604の属性を変更して、点線で示すように、消去する代わりに、単に半透明化する。こうして、ウインドウ602、604は、仮に表示されているが、アクティブではなく、下位のウインドウ606などに対して、半透明化されたウインドウ602、604に関係なく、操作を行うことができる。この場合、図5のようなGUIで復元させてもよいし、Ctrl+Rのような特定のホットキーの組み合わせを押しながら、半透明化されたウインドウをマウスボタンでクリックすることによって、半透明化されたウインドウをもとのアクティブな機能に復元させてもよい。
ところで、今まで説明してきた実施例では、個々のウインドウが、異なるアプリケーションによって管理される場合であったが、単一プロセス内で複数の文書を異なるウインドウで開くことができる、いわゆるMDI(multiple document interface)にも、本発明を適用することができる。この場合、例えば、2007年5月31日に出願の、本出願人に係る米国特許出願第11/755769号に記載されている技術によって、各文書のウインドウに異なるセキュリティ・レベルを付与することができる。この場合は、MDIアプリケーションの内部の子ウィンドウ同士の位置関係を制御することで、同様の効果を実現できる。例えば、状態監視部は、親ウィンドウの位置関係に関するWM_ACTIVATE、WM_WINDOWPOSCHANGINGなどのメッセージに加えて、子ウィンドウの位置関係に関するWM_MDIACTIVATE、WM_MDIMAXIMIZEなどのMDI専用メッセージを監視することにより、子ウィンドウの位置関係を監視することができる。同様に、状態制御部は、MDI制御メッセージを送信することにより、子ウィンドウ間の位置関係を制御できる。
また、上記実施例では、高いセキュリティ・レベルのウインドウを、相対的に上のZオーダーに配置するようにしたが、目的に応じて、全く逆に、低いセキュリティ・レベルのウインドウを、相対的に上のZオーダーに配置するようにしてもよい。この場合は、高いセキュリティ・レベルのウインドウのZオーダーが、低いセキュリティ・レベルのウインドウのZオーダーより高くなったとき、低いセキュリティ・レベルのウインドウを消去または、半透明化する。それ以外の処理は、復元表示を含めて、上記実施例の場合と基本的に同じである。
さらに、上記実施例では、オペレーティング・システム上で走る監視プログラムより描画命令を監視することによって、ラベルマップを操作し、以って所望の画面のセキュリティ管理機能を達成しているが、オペレーティング・システムのソースコードを作成・編集できる権限を有し、またはその立場にある場合は、本発明の機能を、オペレーティング・システムのネイティブな機能として、実装するようにしてもよい。
本発明を実施するためのコンピュータのハードウェアのブロック図である。 本発明の実施例に係るウインドウ監視の仕組みの機能ブロック図である。 本発明の実施例に係るウインドウ監視処理のフローチャートである。 本発明の実施例に係るウインドウ復元表示処理のフローチャートである。 セキュリティ・レベル復元GUI表示のウインドウを示す図である。 ウインドウの表示状態と、セキュリティ・レベルの対応を示す図である。 ウインドウの表示状態と、セキュリティ・レベルの対応を示す図である。 ウインドウの表示状態と、セキュリティ・レベルの対応を示す図である。 ウインドウの表示状態と、セキュリティ・レベルの対応を示す図である。

Claims (15)

  1. コンピュータによって、各々にセキュリティ・レベルを関連付けられた複数のウインドウを重ねて表示するマルチウインドウ・システムであって、
    前記表示されるウインドウのZオーダーの変化を監視し、相対的に低いセキュリティ・レベルのウインドウが、相対的に高いセキュリティ・レベルのウインドウよりも高いZオーダーをもつようになったことに応答して、該相対的に高いセキュリティ・レベルのウインドウを消去または半透明化する手段を有する、
    マルチウインドウ・システム。
  2. ユーザー操作に応答して、前記消去または半透明化されたウインドウを復元する手段を更に有する、請求項1のマルチウインドウ・システム。
  3. 前記ウインドウを復元する手段は、消去または半透明化状態にある複数の同一レベルにあるウインドウを、一度に復元させる、請求項2のマルチウインドウ・システム。
  4. コンピュータによって、各々にセキュリティ・レベルを関連付けられた複数のウインドウを重ねて表示するマルチウインドウ・システムの制御方法であって、
    前記表示されるウインドウのZオーダーの変化を監視し、相対的に低いセキュリティ・レベルのウインドウが、相対的に高いセキュリティ・レベルのウインドウよりも高いZオーダーをもつようになったことに応答して、該相対的に高いセキュリティ・レベルのウインドウを消去または半透明化するステップを有する、
    マルチウインドウ・システムの制御方法。
  5. ユーザー操作に応答して、前記消去または半透明化されたウインドウを復元するステップを更に有する、請求項4のマルチウインドウ・システムの制御方法。
  6. 前記ウインドウを復元するステップは、消去または半透明化状態にある複数の同一レベルにあるウインドウを、一度に復元させる、請求項5のマルチウインドウ・システムの制御方法。
  7. コンピュータによって、各々にセキュリティ・レベルを関連付けられた複数のウインドウを重ねて表示するマルチウインドウ・システムの制御プログラムであって、
    前記コンピュータに、
    前記表示されるウインドウのZオーダーの変化を監視し、相対的に低いセキュリティ・レベルのウインドウが、相対的に高いセキュリティ・レベルのウインドウよりも高いZオーダーをもつようになったことに応答して、該相対的に高いセキュリティ・レベルのウインドウを消去または半透明化するステップを実行させる、
    マルチウインドウ・システムの制御プログラム。
  8. ユーザー操作に応答して、前記消去または半透明化されたウインドウを復元するステップを更に有する、請求項7のマルチウインドウ・システムの制御プログラム。
  9. 前記ウインドウを復元するステップは、消去または半透明化状態にある複数の同一レベルにあるウインドウを、一度に復元させる、請求項8のマルチウインドウ・システムの制御プログラム。
  10. コンピュータによって、各々にセキュリティ・レベルを関連付けられた複数のウインドウを重ねて表示するマルチウインドウ・システムであって、
    前記表示されるウインドウのZオーダーの変化を監視し、相対的に高いセキュリティ・レベルのウインドウが、相対的に低いセキュリティ・レベルのウインドウよりも高いZオーダーをもつようになったことに応答して、該相対的に低いセキュリティ・レベルのウインドウを消去または半透明化する手段を有する、
    マルチウインドウ・システム。
  11. ユーザー操作に応答して、前記消去されたウインドウを復元する手段を更に有する、請求項10のマルチウインドウ・システム。
  12. 前記ウインドウを復元する手段は、消去または半透明化状態にある複数の同一レベルにあるウインドウを、一度に復元させる、請求項11のマルチウインドウ・システム。
  13. コンピュータによって、各々にセキュリティ・レベルを関連付けられた複数のウインドウを重ねて表示するマルチウインドウ・システムの制御プログラムであって、
    前記コンピュータに、
    前記表示されるウインドウのZオーダーの変化を監視し、相対的に高いセキュリティ・レベルのウインドウが、相対的に低いセキュリティ・レベルのウインドウよりも高いZオーダーをもつようになったことに応答して、該相対的に低いセキュリティ・レベルのウインドウを消去または半透明するステップを実行させる、
    マルチウインドウ・システムの制御プログラム。
  14. ユーザー操作に応答して、前記消去または半透明されたウインドウを復元するステップを更に有する、請求項13のマルチウインドウ・システムの制御プログラム。
  15. 前記ウインドウを復元するステップは、消去または半透明状態にある複数の同一レベルにあるウインドウを、一度に復元させる、請求項14のマルチウインドウ・システムの制御プログラム。
JP2007320232A 2007-12-11 2007-12-11 マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム Expired - Fee Related JP5004779B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007320232A JP5004779B2 (ja) 2007-12-11 2007-12-11 マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム
US12/331,762 US20090150824A1 (en) 2007-12-11 2008-12-10 Multiwindow system, security protection method, and security protection program for multiwindow system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007320232A JP5004779B2 (ja) 2007-12-11 2007-12-11 マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム

Publications (2)

Publication Number Publication Date
JP2009146009A JP2009146009A (ja) 2009-07-02
JP5004779B2 true JP5004779B2 (ja) 2012-08-22

Family

ID=40722991

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007320232A Expired - Fee Related JP5004779B2 (ja) 2007-12-11 2007-12-11 マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム

Country Status (2)

Country Link
US (1) US20090150824A1 (ja)
JP (1) JP5004779B2 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8698751B2 (en) * 2010-10-01 2014-04-15 Z124 Gravity drop rules and keyboard display on a multiple screen device
US7595810B2 (en) * 2006-03-22 2009-09-29 Apple Inc. Methods of manipulating a screen space of a display device
US9965067B2 (en) * 2007-09-19 2018-05-08 T1V, Inc. Multimedia, multiuser system and associated methods
US9953392B2 (en) 2007-09-19 2018-04-24 T1V, Inc. Multimedia system and associated methods
US20130342489A1 (en) * 2008-08-13 2013-12-26 Michael R. Feldman Multimedia, multiuser system and associated methods
US20100162410A1 (en) * 2008-12-24 2010-06-24 International Business Machines Corporation Digital rights management (drm) content protection by proxy transparency control
CN101996072B (zh) * 2009-08-21 2013-12-25 联想(北京)有限公司 一种操作系统的窗口管理方法及计算机
US9454652B2 (en) * 2009-10-23 2016-09-27 Secure Vector, Llc Computer security system and method
US10242182B2 (en) * 2009-10-23 2019-03-26 Secure Vector, Llc Computer security system and method
JP4886063B2 (ja) * 2009-12-04 2012-02-29 株式会社エヌ・ティ・ティ・ドコモ 状態報知装置、状態報知方法及びプログラム
US8464319B2 (en) 2010-01-08 2013-06-11 Microsoft Corporation Resource access based on multiple scope levels
US9513980B2 (en) * 2010-10-19 2016-12-06 Sap Se Transparent distribution and decoupling of modules using asynchronous communication and scopes
US9021055B2 (en) 2010-11-24 2015-04-28 Oracle International Corporation Nonconforming web service policy functions
US8635682B2 (en) * 2010-11-24 2014-01-21 Oracle International Corporation Propagating security identity information to components of a composite application
US8650250B2 (en) 2010-11-24 2014-02-11 Oracle International Corporation Identifying compatible web service policies
US9589145B2 (en) 2010-11-24 2017-03-07 Oracle International Corporation Attaching web service policies to a group of policy subjects
US20120159363A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Z-order bands
JP2012215994A (ja) * 2011-03-31 2012-11-08 Hitachi Ltd セキュリティレベル可視化装置
US8560819B2 (en) 2011-05-31 2013-10-15 Oracle International Corporation Software execution using multiple initialization modes
US8914843B2 (en) 2011-09-30 2014-12-16 Oracle International Corporation Conflict resolution when identical policies are attached to a single policy subject
GB201117329D0 (en) * 2011-10-07 2011-11-23 Waterleaf Ltd Gaming systems, apparatus and method with dual game play
KR20130101632A (ko) * 2012-02-16 2013-09-16 삼성전자주식회사 콘텐츠 보안 장치 및 방법
US8875226B1 (en) * 2012-06-14 2014-10-28 Rockwell Collins, Inc. High assurance classification level disambiguation for displays
US8875268B2 (en) 2012-08-09 2014-10-28 Google Inc. Browser session privacy lock
CN104571797B (zh) * 2013-10-28 2018-08-31 联想(北京)有限公司 一种信息处理方法及电子设备
KR102348217B1 (ko) * 2014-04-11 2022-01-10 삼성전자 주식회사 전자장치에서 보안화면을 제어하는 방법 및 장치
US10002255B2 (en) 2014-04-11 2018-06-19 Samsung Electronics Co., Ltd. Method and device for controlling security screen in electronic device
CN105224295A (zh) * 2014-06-16 2016-01-06 北大方正集团有限公司 软件运行方法和装置
CN104408344B (zh) * 2014-11-14 2018-02-13 南京酷派软件技术有限公司 系统切换方法、系统切换装置和终端
CN111344675B (zh) * 2017-09-13 2023-10-13 深圳传音通讯有限公司 一种基于智能终端的虚拟系统运行方法及虚拟系统
JP6525094B2 (ja) * 2018-07-17 2019-06-05 横河電機株式会社 画面表示装置および画面表示方法
CN111782113B (zh) * 2019-12-18 2022-06-07 北京沃东天骏信息技术有限公司 显示方法、装置和计算机可读存储介质
CN114416252A (zh) * 2022-01-14 2022-04-29 统信软件技术有限公司 一种窗口显示方法、装置、计算设备和存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2095448C (en) * 1993-05-04 1998-05-05 Phillip J. Beaudet Window management system utilizing icons and miniature windows
JPH076012A (ja) * 1993-06-16 1995-01-10 Toshiba Corp プラント監視装置
JP2000322600A (ja) * 1999-05-07 2000-11-24 Nec Software Chugoku Ltd インターネット3次元マルチウィンドウ制御表示システムおよびインターネット3次元マルチウィンドウ制御表示方法
JP2001350619A (ja) * 2000-06-05 2001-12-21 Seiko Epson Corp 複数のウィンドウを表示するための方法
US8122361B2 (en) * 2003-10-23 2012-02-21 Microsoft Corporation Providing a graphical user interface in a system with a high-assurance execution environment
US20060129948A1 (en) * 2004-12-14 2006-06-15 Hamzy Mark J Method, system and program product for a window level security screen-saver
US7818672B2 (en) * 2004-12-30 2010-10-19 Microsoft Corporation Floating action buttons
US7581192B2 (en) * 2005-03-31 2009-08-25 Microsoft Corporation Method and apparatus for application window grouping and management
US7478339B2 (en) * 2005-04-01 2009-01-13 Microsoft Corporation Method and apparatus for application window grouping and management
US7779475B2 (en) * 2006-07-31 2010-08-17 Petnote Llc Software-based method for gaining privacy by affecting the screen of a computing device

Also Published As

Publication number Publication date
US20090150824A1 (en) 2009-06-11
JP2009146009A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
JP5004779B2 (ja) マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム
US7603628B2 (en) User interface for and method of managing icons on group-by-group basis using skin image
US5140677A (en) Computer user interface with window title bar mini-icons
US7698706B2 (en) Methods and apparatus for implementing an integrated user interface for managing multiple virtual machines operative in a computing system
JP5483884B2 (ja) 複数のコンピューティング環境のシームレスな統合
KR101099317B1 (ko) 윈도우 관리 모드를 제공하는 시스템 및 방법
JP5798623B2 (ja) 動的入力装置のコンテキスト制御
US5745112A (en) Device and method for a window responding to a drag operation
US7861171B2 (en) Pointright based point-of-presence system and architecture
US9335886B2 (en) Facilitating user interaction with multiple domains while preventing cross-domain transfer of data
EP2339466B1 (en) Data control device, data control method, and program
US10528252B2 (en) Key combinations toolbar
US7996787B2 (en) Plug-in architecture for window management and desktop compositing effects
AU2014296339B2 (en) Multi-monitor full screen mode in a windowing environment
TWI515646B (zh) 擴展螢幕模式下之應用程式運作方法以及使用該方法的平板電腦
US20090091547A1 (en) Information display device
US20100146431A1 (en) Object picker with window splitter
KR20040032071A (ko) 그래픽 사용자 인터페이스에서의 소프트웨어애플리케이션을 관리하기 위한 시스템 및 방법
MX2008001616A (es) Lupa amplificadora virtual con funcionalidades de control sobre la marcha.
US8683199B2 (en) System, method and program for protecting information on computer screen
JP2013161407A (ja) 情報表示装置
JP3950937B2 (ja) インターフェースの方法、複合文書生成方法、及び複合文書表示方法
US9417780B2 (en) Information processing apparatus
JP2004259297A (ja) ウィンドウ表示制御装置
JPH08234953A (ja) マルチウィンドウ表示制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120314

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120522

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150601

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees