(57)【要約】【課題】  各プログラムの各命令コードに対して異なったデータアクセス制御を行えることを目的とする。【解決手段】  携帯電話機１００は、データとデータ属性とを対応付けたデータオブジェクト１９５を記憶するデータ記憶部１９４と、Ｊｖプログラム１９２を記憶するプログラム記憶部１９１と、データにアクセスするＡＰＩのような命令コードとデータへのアクセス条件であるデータ属性とを対応付けたアクセス制御表１９６を記憶するアクセス制御情報記憶部１９３とを備える。Ｊｖ環境実行部１１０の実行するＪｖ実行環境において、データオブジェクト利用部１１１は、Ｊｖプログラム１９２を実行する。この際、データオブジェクトアクセス制御部１１２を起動して、アクセスされるデータのデータ属性をデータオブジェクト１９５から取得し、アクセス制御表１９６に基づいてデータにアクセス可能であるかを判定するデータアクセス制御を行う。【選択図】        図２
2006092296.tif 000002
【特許請求の範囲】
【請求項１】
データとデータの持つデータ属性とを対応付けて記憶するデータ記憶部と、
命令コードを含むプログラムを記憶するプログラム記憶部と、
データにアクセスする命令コードとデータへのアクセス条件であるデータ属性とを対応付けて記憶するアクセス制御情報記憶部と、
プログラム記憶部に記憶されたプログラムを実行するプログラム実行部と、
プログラム実行部の実行するプログラムに含まれる命令コードによりアクセスされるデータの持つデータ属性をデータ記憶部から取得し、アクセス制御情報記憶部に記憶された命令コードとデータ属性との対応付けに基づいて命令コードがデータにアクセス可能であるかを判定するアクセス判定部と
を備えたことを特徴とする情報処理装置。
【請求項２】
上記プログラム記憶部は、
プログラムにプログラムの持つプログラム属性を対応付けて記憶し、
上記アクセス制御情報記憶部は、
命令コードとデータ属性とにデータへのアクセス条件であるプログラム属性を対応付けて記憶し、
上記アクセス判定部は、
上記プログラム実行部の実行するプログラムの持つプログラム属性を上記プログラム記憶部から取得し、上記プログラム実行部の実行するプログラムに含まれる命令コードによりアクセスされるデータの持つデータ属性を上記データ記憶部から取得し、上記アクセス制御情報記憶部に記憶された命令コードとデータ属性とプログラム属性との対応付けに基づいて命令コードがデータにアクセス可能であるかを判定する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
上記情報処理装置は、さらに、
データ属性を記憶する外部機器と接続する装置内接続部と
装置内接続部を介して外部機器からデータ属性を取得し、取得したデータ属性をデータ属性に関するデータに対応付けて上記データ記憶部に記憶する記憶情報取得部と
を備えたことを特徴とする請求項１または請求項２記載の情報処理装置。
【請求項４】
上記記憶情報取得部は、
装置内接続部を介して外部機器からデータとデータの持つデータ属性とを取得し、取得したデータとデータ属性とを対応付けて上記データ記憶部に記憶する
ことを特徴とする請求項３記載の情報処理装置。
【請求項５】
上記情報処理装置は、さらに、
データを記憶する外部機器とデータ属性を記憶する外部機器とプログラムを記憶する外部機器とプログラム属性を記憶する外部機器と通信する装置内接続部と
データを記憶する外部機器の識別情報である外部機器識別子を含むデータ属性とプログラムを記憶する外部機器の識別情報である外部機器識別子を含むプログラム属性とデータとプログラムとを装置内接続部を介して外部機器から取得し、取得したデータとデータ属性とを対応付けて上記データ記憶部に記憶し、取得したプログラムとプログラム属性とを対応付けて上記プログラム記憶部に記憶する記憶情報取得部とを備え、
上記アクセス判定部は、
上記プログラム実行部の実行するプログラムの持つプログラム属性を上記プログラム記憶部から取得し、上記プログラム実行部の実行するプログラムに含まれる命令コードによりアクセスされるデータの持つデータ属性を上記データ記憶部から取得し、プログラム属性に含まれる外部機器識別子とデータ属性に含まれる外部機器識別子とを比較し、比較結果に基づいて命令コードがデータにアクセス可能であるかを判定する
ことを特徴とする請求項２記載の情報処理装置。
【請求項６】
上記データ記憶部は、
上記情報処理装置とプログラムとの少なくともいずれかのセキュリティレベルの違いにより異なるデータ属性を持つデータを記憶する
ことを特徴とする請求項３〜請求項５いずれかに記載の情報処理装置。
【請求項７】
上記データ記憶部は、
データ属性の変更可否を示す変更可能情報を含むデータ属性を記憶し、
上記情報処理装置は、さらに、
データ属性変更要求情報を入力し、入力したデータ属性変更要求情報の示すデータ属性を上記データ記憶部から取得し、取得したデータ属性に含まれる変更可能情報を判定し、変更可能情報が変更可能を示す場合にデータ属性変更要求情報に基づいてデータ属性を変更するデータ属性変更部
を備えたことを特徴とする請求項１〜請求項６いずれかに記載の情報処理装置。
【請求項８】
上記情報処理装置は、さらに、
アクセス条件変更要求情報を入力し、入力したアクセス条件変更要求情報に基づいて上記アクセス制御情報記憶部に記憶されたアクセス条件を変更するアクセス条件変更部
を備えたことを特徴とする請求項１〜請求項７いずれかに記載の情報処理装置。
【請求項９】
上記情報処理装置は携帯電話機であることを特徴とする請求項１〜請求項８いずれかに記載の情報処理装置。
【請求項１０】
上記プログラム記憶部はＪａｖａ（登録商標）プログラミング言語で記述されたプログラムを記憶することを特徴とする請求項１〜請求項９いずれかに記載の情報処理装置。
【請求項１１】
データとデータの持つデータ属性とを対応付けて記憶部に記憶するデータ記憶工程と、
命令コードを含むプログラムを記憶部に記憶するプログラム記憶工程と、
データにアクセスする命令コードとデータへのアクセス条件であるデータ属性とを対応付けて記憶部に記憶するアクセス制御情報記憶工程と、
プログラム記憶工程で記憶されたプログラムを実行するプログラム実行工程と、
プログラム実行工程で実行するプログラムに含まれる命令コードによりアクセスされるデータの持つデータ属性を記憶部から取得し、アクセス制御情報記憶工程で記憶された命令コードとデータ属性との対応付けに基づいて命令コードがデータにアクセス可能であるかを判定し、判定結果を記憶部に記憶するアクセス判定工程と
を備えたことを特徴とする情報処理装置の情報処理方法。
【請求項１２】
請求項１１記載の情報処理方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データアクセス制御を行う情報処理装置、情報処理方法およびプログラムに関するものである。
【背景技術】
【０００２】
近年、携帯電話機メーカや携帯電話キャリア以外が作成したプログラムを携帯電話機ユーザが携帯電話機にダウンロード、インストールし、実行できる携帯電話機が普及している。
このようなプログラムには、オブジェクトコードのプログラム（以下、ネイティブプログラム）形態をとるものもあれば、Ｊａｖａ（登録商標）（以下、Ｊｖ）プログラミング言語で記述されたプログラム（以下、Ｊｖプログラム）の形態をとるものもある。
ここで、Ｊｖプログラムが利用されるのは、Ｊｖプログラムが携帯電話機上で直接実行できるプログラムではなく、Ｊｖ実行環境という携帯電話機上のソフトウェアにより実行されるものであり、かつ、Ｊｖ言語がメモリ破壊などを行うプログラムを作成できないことを理由としている。すなわち、第三者が開発したプログラムのダウンロード、実行をすることにより不正な動作が行われることに対する安全性の対策を行っていることを理由としている。
一方、そのような機能を持たないネイティブプログラムでは、人手によるソースコードのチェックなどによる対策を行っている場合もある。
【０００３】
しかし、Ｊｖプログラムを利用することにより、メモリ破壊を行うようなプログラムを携帯電話機上で実行する危険性を避けることができたとしても、別の危険性が存在する。
例えば、Ｊｖ実行環境により、Ｊｖプログラムから携帯電話機内の電話帳のデータにアクセスできる機能が提供されているとする。携帯電話機ユーザは、携帯電話組み込みの電話帳よりも優れた機能を提供する電話帳Ｊｖプログラムやユーザインタフェースデザインのよい電話帳Ｊｖプログラムのダウンロード、実行をするかもしれない。しかし、電話帳のデータにアクセスした電話帳Ｊｖプログラムは、ユーザの知らないうちに、その電話帳内の名前や電話番号などのデータをネットワーク上のサーバなどにメールなどの形で漏洩させてしまうかもしれない。
【０００４】
特許文献１では、上のような課題に対し、完全カプセル化オブジェクトというデータオブジェクトを導入している。
これにより、実行するＪｖプログラムの信頼度に従い、通常のデータオブジェクトと上記例の電話帳データのようなセキュリティ性を高めたいデータとを区別し、信頼度の低いＪｖプログラムに使用される電話帳データのようなデータを完全カプセル化オブジェクトとする。完全カプセル化オブジェクトは、その利用、例えばネットワークへの送信が制限されているため、データの漏洩を防止することができる。
【特許文献１】特開２００４−１５２０２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
現在の携帯電話機には記憶装置などをのぞいて外部機器がほとんど接続されない。
しかし、携帯電話機はパーソナルコンピュータの後を追うように高機能化しており、パーソナルコンピュータ、特にノート型のパーソナルコンピュータがＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）カード、カードバスカード、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などにより様々な機器と接続可能であり、その利用範囲は広がっている。このことを考えると、今後、様々な機器が接続され、その機器の制御、あるいはその機器からのデータ取得とその表示、あるいは取得したデータの管理や編集を行う利用が広まっていくことが期待される。
したがって、携帯電話機内でのデータの利用可否判断のみならず、外部機器やその制御プログラム、あるいはユーザによる利用可否判断などに対応できる必要がある。
本発明は、上記の課題を踏まえ、例えば携帯電話機内でのデータの利用可否判断のみならず、外部機器やその制御プログラム、あるいはユーザによる利用可否判断などに対応してデータアクセス制御をできるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、データとデータの持つデータ属性とを対応付けて記憶するデータ記憶部と、命令コードを含むプログラムを記憶するプログラム記憶部と、データにアクセスする命令コードとデータへのアクセス条件であるデータ属性とを対応付けて記憶するアクセス制御情報記憶部と、プログラム記憶部に記憶されたプログラムを実行するプログラム実行部と、プログラム実行部の実行するプログラムに含まれる命令コードによりアクセスされるデータの持つデータ属性をデータ記憶部から取得し、アクセス制御情報記憶部に記憶された命令コードとデータ属性との対応付けに基づいて命令コードがデータにアクセス可能であるかを判定するアクセス判定部とを備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、データ属性に基づいてデータアクセス制御を行うことができる。例えば、各プログラムの各命令コードに対して異なったデータアクセス制御を行うことができ、プログラムの作成やデータ管理などのユーザの利便性を向上する。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
【０００９】
図１は、実施の形態１における情報処理装置のハードウェア構成図である。
図１において、情報処理装置は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信ボード９１５、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）や液晶画面などの表示装置９０１、キーボード（Ｋ／Ｂ）やタッチパネル、プッシュボタン、マウスなどの入力装置９０２、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置（ＣＤＤ）、ＰＣカード接続装置、メモリカード接続装置などの媒体接続装置９０４、磁気ディスク装置９２０と接続されている。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ、ＣＤＤ、磁気ディスク装置９２０、光ディスク装置、メモリカードは、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５は、ＬＡＮ、インターネット等に接続されている。
例えば、通信ボード９１５、入力装置９０２、媒体接続装置９０４などは、情報入力部の一例である。
また、例えば、通信ボード９１５、表示装置９０１などは、出力部の一例である。
【００１０】
磁気ディスク装置９２０には、オペレーティングシステム（ＯＳ）９２１、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３は、ＣＰＵ９１１、ＯＳ９２１により実行される。
【００１１】
上記プログラム群９２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の判断結果」、「〜の計算結果」、「〜の処理結果」として説明するものが、「〜ファイル」として記憶されている。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータの入出力を示し、そのデータの入出力のためにデータは、磁気ディスク装置９２０、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  ｃａｒｔｒｉｄｇｅ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のその他の記録媒体に記録される。あるいは、信号線やその他の伝送媒体により伝送される。
【００１２】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、ハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
【００１３】
また、以下に述べる実施の形態を実施するプログラムは、磁気ディスク装置９２０、ＦＤ、光ディスク、ＣＤ、ＭＤ、ＤＶＤ等のその他の記録媒体による記録装置を用いて記憶されても構わない。
【００１４】
以下の各実施の形態において携帯電話機を情報処理装置とする形態を説明する。但し、情報処理装置は携帯電話機に限らない。例えば、デスクトップＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ノートＰＣ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｃｅ）などの情報処理装置でも構わない。
【００１５】
図２は、実施の形態１におけるシステム構成図である。
図２を用いて実施の形態１のシステム構成について説明する。
携帯電話機１００は、外部機器２００と装置内接続部１２０を介して接続、通信することができる。ここで、外部機器２００との接続方法としては、シリアル接続やＵＳＢ、ＳＤカード、メモリスティック、ｂｌｕｅｔｏｏｔｈなどのインタフェースを利用することが考えられる。
外部機器２００は、携帯電話機１００の装置内接続部１２０と同じインタフェースを持つ機器内接続部２１０を備え、携帯電話機１００と接続し、外部機器記憶部２９０に記憶するデータ、プログラムを通信する。
【００１６】
携帯電話機１００は、Ｊｖ環境実行部１１０を備え、Ｊｖ環境実行部１１０が実行するＪｖ実行環境の上で、プログラム記憶部１９１に記憶されるＪｖプログラム１９２を動作する。
Ｊｖ環境実行部１１０は、データオブジェクト生成部１１３を備え、外部機器２００から取得したデータあるいは携帯電話機１００のデータ記憶部１９４にあらかじめ記憶されたデータについて、Ｊｖプログラムが扱うことのできるデータオブジェクト１９５を生成し、データ記憶部１９４に記憶する。
データオブジェクト１９５は、データとそのデータの持つデータ属性とを内包するオブジェクトであってもよいし、データオブジェクト１９５はデータとそのＩＤのみを含み、データ属性はデータオブジェクト１９５のＩＤとデータ属性の対応を記録する一覧表により管理されていてもよい。また、データオブジェクト１９５は、特許文献１における完全カプセル化オブジェクトであるという実施の形態も存在しえる。
携帯電話機１００は、データオブジェクトの生成に必要な情報であるデータ、データ属性を取得する記憶情報取得部１３０を備える。
Ｊｖ環境実行部１１０は、さらに、Ｊｖプログラム１９２を実行し、データオブジェクト１９５の画面への表示、各記憶部への保存、ネットワークへの送信などのデータオブジェクトの利用を行うデータオブジェクト利用部１１１を備える。
また、Ｊｖ環境実行部１１０はデータへのアクセス判定によりアクセス制御を行うデータオブジェクトアクセス制御部１１２を備える。データオブジェクトアクセス制御部１１２はアクセス制御情報記憶部１９３に記憶されるアクセス制御表１９６に基づいてアクセス制御を行う。
【００１７】
図３は、実施の形態１におけるデータ属性を示す図である。
また、図４は実施の形態１におけるアクセス制御表１９６を示す図である。
データ属性とアクセス制御表１９６とについて図３、図４に基づいて説明する。
図３に示すデータ属性では、印刷可能（ｐｒｉｎｔａｂｌｅ）、画面表示可能（ｄｉｓｐｌａｙａｂｌｅ）、保存可能（ｓｔｏｒａｂｌｅ）、インターネットへの送信可能（ＩｎｔｅｒｎｅｔＥｘｐｏｒｔａｂｌｅ）など、それぞれ利用可能なことを「１」、不可能なことを「０」で示している。
図４に示すアクセス制御表１９６は、データオブジェクトアクセス制御部１１２がその制御に用いる制御表の例であり、Ｊｖ  ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）と、データオブジェクトに対して、そのＡＰＩを利用するために必要な属性とを対応付けて示している。ＡＰＩは、指定することで命令が実行される命令コードである。
図４の例では、オブジェクトの内容を文字列に変換するＯｂｊｅｃｔ＃ｔｏＳｔｒｉｎｇ（）ＡＰＩは、印刷可能、画面表示可能、保存可能、インターネット送信可能のすべての属性が有効の「１」になっていないと利用できないことを表している。
【００１８】
データ属性は、図３に示すような各機能の実行可否を示す形式とは別の形式でも構わない。例えば、数値で表されるセキュリティレベルであっても構わない。ここで、セキュリティレベルとは例えば、数値が大きいほどデータの漏洩に注意する必要があることを示す。
このセキュリティレベルをデータ属性とする場合のアクセス制御表１９６を図５に示す。
図４に示すアクセス制御表１９６の例と同様に、ＡＰＩと、それを利用可能にするためのセキュリティレベルとを対応付けて記している。
以下、図３に示すのデータ属性および図４に示すアクセス制御表１９６の例を用いて説明する。
【００１９】
図６にデータおよびデータ属性の例を示す。
この例では、データとデータ属性とを一体化した情報として示している。このように一体化した場合も含め、データ、データ属性は記憶情報取得部１３０により取得される。
この一体化された情報の例では、ＨＴＭＬライクな表現方法により表現している。情報全体を＜ＤＡＴＡ＞と＜／ＤＡＴＡ＞で囲み、データ本体を＜ＢＯＤＹ＞と＜／ＢＯＤＹ＞で囲み、データ属性を＜ＡＴＴＲＩＢＵＴＥ＞と＜／ＡＴＴＲＩＢＵＴＥ＞で囲んでいる。
すなわち、この情報は、データが０１−２３４５−６７８９であり、そのデータ属性が印刷可能、画面表示可能、保存不可、インターネットへの送信不可であることを示している。
但し、データおよびデータ属性は、一体化している、一体化していないに関わらず、ＨＴＭＬライクなものでなくてもよい。
【００２０】
図６に示すようにデータとデータ属性とを一体化することにより、携帯電話機１００はかならずデータと共にデータ属性を取得することができる。
また、データ属性の別の取得方法として、外部機器２００に対して、データを取得するコマンドとデータ属性を取得するコマンドが定義されており、それぞれ別々に実行するという方法がある。しかし、この場合には、データを取得してもデータ属性を取得しない場合がある。そこで、取得したいデータを指定した上で、先にデータ属性を取得し、次にデータを取得し、かつ、データ属性を取得していないデータを取得できないように、携帯電話機１００や外部機器２００で制御することなどにより、間違いなくデータ属性を取得するこができる。
【００２１】
但し、データとデータ属性とは別々のタイミングで取得してもよいし、別々の外部機器２００から取得してもよいし、データ記憶部１９４にあらかじめ記憶されたデータに対するデータ属性だけを取得するようにしてもよい。
【００２２】
次に、実施の形態１におけるデータオブジェクト１９５の生成方法について説明する。
ここでは、データとデータ属性とは外部機器２００から取得するものとする。
外部機器２００の例としては、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）機器や、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード機器などがある。ＧＰＳ機器の場合には、その位置情報の漏洩にはそれほど注意しないであろうし、ＩＣカード機器は例えば社員証機能を包含しており、情報の漏洩に注意する必要があるなどそれぞれに特徴がある。つまり、各外部機器により各データのデータ属性に違いを設け、そのデータ属性によりデータアクセス制御を行うということはデータの利用方法として有効的である。
【００２３】
以下、図７のフローチャートに基づいて説明する。
Ｊｖプログラム１９２が実行され、外部機器２００からのデータ情報の取得を要求されたＪｖ環境実行部１１０は、まず、記憶情報取得部１３０に外部機器２００から、装置内接続部１２０を介してデータ情報の取得を行うように指示する。
記憶情報取得部１３０は、外部機器２００から図６に示した例のようなデータとデータ属性とが一体化したデータ情報を取得する（Ｓ１０１）。
次に、記憶情報取得部１３０は、取得したデータ情報からデータ本体部分を抽出しデータ記憶部１９４に記憶する（Ｓ１０２）。
次に、記憶情報取得部１３０は、取得したデータ情報からデータ属性部分を抽出しデータ記憶部１９４に記憶する（Ｓ１０３）。
これにより、外部機器２００からデータとデータ属性とを取得できたため、Ｊｖ環境実行部１１０は、データオブジェクト生成部１１３を起動し、データとデータ属性とを内包するデータオブジェクト１９５をＪｖオブジェクトとして生成する（Ｓ１０４）。
【００２４】
上記説明において、携帯電話機１００はデータとデータ属性とを外部機器２００から取得したが、あらかじめ携帯電話機１００の各記憶部に記憶されたデータおよびデータ属性に対してデータオブジェクト生成部１１３がデータオブジェクトを生成してもよい。この場合でも、各データに対してデータ属性に従いデータアクセス制御を行うことができる。
【００２５】
次に、データオブジェクト１９５の利用方法について図８を用いて説明する。
例えばＪｖプログラム１９２は、Ｊｖ環境実行部１１０に対して、データオブジェクト１９５を画面出力機能（Ｇｒａｐｈｉｃｓ＃ｄｒａｗＳｔｒｉｎｇ（）ＡＰＩ）に利用する指示をしたとする。画面出力機能はデータオブジェクト利用部１１１の機能の１つである。
【００２６】
Ｊｖ環境実行部１１０は、データオブジェクト利用部１１１に対して、データオブジェクト１９５と、データの利用方法「画面出力」を指示する。
データオブジェクト利用部１１１は、データオブジェクトアクセス制御部１１２を起動し利用可否の問い合わせを行う（Ｓ２０１）。
データオブジェクトアクセス制御部１１２は、問い合わせを受けたデータオブジェクトのデータ属性とアクセス制御表１９６と、利用可否判断を受けているＡＰＩがＧｒａｐｈｉｃｓ＃ｄｒａｗＳｔｒｉｎｇ（）であることから利用可能か判断する（Ｓ２０２）。
ここでは、図３に示したデータ属性と図４に示したアクセス制御表１９６の例を用いて説明する。
図４において、Ｇｒａｐｈｉｃｓ＃ｄｒａｗＳｔｒｉｎｇ（）ＡＰＩの利用に必要な属性は、画面表示属性（Ｄｉｓｐｌａｙａｂｌｅ）であり、図３において、データは画面表示可能を示すデータ属性を有している。このため、データオブジェクトアクセス制御部１１２は、データ属性とアクセス制御表１９６とに基づいて、Ｇｒａｐｈｉｃｓ＃ｄｒａｗＳｔｒｉｎｇ（）ＡＰＩがデータオブジェクトに含まれるデータを利用することに利用可能の判断を下す（Ｓ２０２）。
データオブジェクトアクセス制御部１１２がデータ利用可能と判定した場合、データオブジェクト利用部１１１はＪｖ環境実行部１１０から指示されたデータ利用を行う。上記の例では、データオブジェクト利用部１１１は画面表示を行う（Ｓ２０４）。
データオブジェクトアクセス制御部１１２がデータ利用不可と判定した場合、データオブジェクト利用部１１１はＪｖ環境実行部１１０にエラーを返し、Ｊｖ環境実行部１１０はＪｖプログラム１９２に対してエラーを返す。上記の例では、図３に示すデータ属性のＤｉｓｐｌａｙａｂｌｅが０、つまり画面表示不可を示し、データオブジェクトアクセス制御部１１２がデータ利用不可と判定した場合である（Ｓ２０５）。
【００２７】
以上の説明により、携帯電話機１００内にあらかじめ記録されているデータ、つまりプレインストールされたデータだけでなく、外部機器２００から新たに取得したデータに対してもデータ漏洩などの危険性を回避することができるデータ処理が可能となる。
【００２８】
また、データだけでなくデータ属性も外部機器２００から取得することにより、携帯電話機メーカやキャリアに縛られることなく様々な外部機器２００に対応することができる。
さらに、外部機器２００から取得するデータの作成者の意図をもデータ取り扱いに反映させることができる。
また、各データに対して必ずデータ属性を取得することが可能になる。
【００２９】
実施の形態２．
上記実施の形態１において、Ｊｖプログラム１９２が電話帳のデータなどを不正に使用あるいは漏洩させない仕組みについて説明したが、これは原則としてＪｖ実行環境およびＪｖ実行環境が組み込まれている携帯電話機を信用しているという前提に立っている。
すなわち、一定のセキュリティ基準を満たす範囲を指すセキュリティドメインとして、携帯電話機とＪｖ実行環境とが同じセキュリティドメイン内にあると考えている。
一方で、Ｊｖプログラムは同じセキュリティドメイン内には存在せず信用できないものとしている。
【００３０】
しかし、ネットワークからダウンロード、インストールしたＪｖプログラムであっても、そのＪｖプログラムが、改ざんされていないことなど検証されたＪｖプログラムあるいは携帯電話機にはじめからインストールされているＪｖプログラムであるとすれば、Ｊｖプログラムをも同じセキュリティドメインに含めることが考えられる。
つまり、Ｊｖプログラムを信頼しデータアクセスする方法も考えられる。このことについて以下、実施の形態２として説明する。
【００３１】
図９は、実施の形態２におけるシステム構成図である。
ここで、上記実施の形態１で説明したシステム構成と異なる構成について説明し、その他の構成については上記実施の形態１のシステム構成と同様であるものとする。
データオブジェクトアクセス制御部１１２はプログラム属性取得部１１４を備える。
プログラム記憶部１９１は、Ｊｖプログラム１９２とＪｖプログラム１９２の持つプログラム属性とを対応付けて記憶する。記憶方法は、例えば、Ｊｖプログラム１９２内にプログラム属性を含んでもよいし、Ｊｖプログラム１９２とプログラム属性とを対応付けた制御表を記憶してもよい。
プログラム属性取得部１１４は、プログラム記憶部１９１からＪｖプログラム１９２のプログラム属性を取得する。
また、アクセス制御情報記憶部１９３は、図１０に示すようにＡＰＩとＡＰＩを実行するプログラムのプログラム属性とＡＰＩを実行するために必要なデータ属性とを対応付けて記憶する。
データオブジェクトアクセス制御部１１２は、ＡＰＩによるデータオブジェクト１９５内のデータ利用可否を、プログラム属性取得部１１４が取得したプログラム属性とアクセス制御表１９６とに基づいて判定する。
携帯電話機１００は各構成により、プログラムの属性に応じたアクセス制御を行うことができる。
【００３２】
図１０に示すアクセス制御表１９６では、プログラム属性として、携帯電話機１００にはじめからインストールされている（ｐｒｅ−ｉｎｓｔａｌｌ）、ネットワークからインストールされている（ｉｎｓｔａｌｌ  ｆｒｏｍ  ｎｅｔｗｏｒｋ）、外部機器からインストールされている（ｉｎｓｔａｌｌ  ｆｒｏｍ  ｄｅｖｉｃｅ）、ネットワークからインストールされている場合のインストール元のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）、外部機器からインストールされている場合のデバイスのＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を示している。
各ＡＰＩは、それぞれのプログラム属性に応じて、必要なデータ属性が異なっている。但し、必要なデータ属性が同じであっても構わない。
【００３３】
データオブジェクトアクセス制御部１１２は、利用可否判断を行う場合に、プログラム属性取得部１１４によりプログラムの属性を取得し、その属性に応じて、図１０のアクセス制御表１９６にしたがって、利用可否の判断を下す。
これにより、データ属性だけでなく、使用するプログラムの属性に応じたデータオブジェクトへのアクセス制御が可能となる。
【００３４】
次に、データオブジェクトアクセス制御部１１２の異なるアクセス制御について説明する。
まず、外部機器２００からＪｖプログラム１９２をインストールすることについて説明する。
例えば、ＵＳＢ機器などでは、その機器のメーカＩＤ，製品ＩＤなどからなる識別子が存在する。外部機器２００が外部機器記憶部２９０を備えＪｖプログラム１９２を記憶しているとする。Ｊｖプログラム１９２を外部機器からダウンロード、インストールした場合、Ｊｖプログラム１９２とＪｖプログラム１９２の使用するデータとが同じＩＤの外部機器からダウンロードされていれば、そのＪｖプログラム１９２は使用するデータに対して信頼できるとみなす、などの処理を行うことができる。また、ＩＤがすべて同じでなくとも、同じメーカＩＤであればよい、などの実施の形態も考えられる。これは、利用する外部機器２００とＪｖプログラム１９２が同じセキュリティドメイン内にあると考えることができるためである。
【００３５】
つまり、記憶情報取得部１３０は、データ、プログラムのそれぞれに対して、ダウンロード元の外部機器２００を示す各ＩＤを含む属性を取得して記憶部に記憶し、データオブジェクトアクセス制御部１１２は、実行するプログラムのプログラム属性に含まれる各ＩＤと、プログラムが使用するデータのデータ属性に含まれる各ＩＤとを比較し、比較した結果、全てのＩＤが一致したこと、メーカＩＤが一致したことなどによりデータアクセス可否を判定してもよい。
これにより、データ属性だけでなく、使用するプログラムの属性に応じたデータオブジェクトへのアクセス制御が可能になる。
【００３６】
実施の形態３．
実施の形態３では、情報処理装置とプログラムのセキュリティレベルの違いによりアクセス制御を行う場合について説明する。
ここで、外部機器にはパスワードを使用した認証処理を行う認証処理部があるとする。
この認証処理部による認証処理の利用方法には、外部機器を携帯電話機に接続したときに認証を行う方法や、その外部機器を使用するＪｖプログラムを起動したときに認証を行う方法、実際にＪｖプログラムが外部機器を使用したときに認証を行う方法などが考えられる。
また、Ｊｖプログラムを起動したときおよびＪｖプログラムが外部機器を使用したときの認証対象について、そのＪｖプログラムによる外部機器の使用に限って認証する方法や、携帯電話機と外部機器との間の認証が成立した為、どのＪｖプログラムからでも外部機器の使用を認証する方法などがある。
このようにして、外部機器と携帯電話機、あるいは外部機器とＪｖプログラムの間で認証処理を行い信頼関係を結ぶことによるセキュリティレベルが考えられる。
【００３７】
また、その他の信頼関係も考えられる。携帯電話機の場合、記憶されるプログラムを携帯電話機ユーザの手で変更することは一般的に困難である。一方、パーソナルコンピュータの場合、プログラムの変更は比較的簡単である。
このように、外部機器と接続される情報処理装置によりプログラムが容易に改変可能か否かというセキュリティレベルが考えられる。
【００３８】
図１１は、実施の形態３におけるシステム構成図である。
ここで、上記実施の形態１で説明したシステム構成と異なる構成について説明し、その他の構成については上記実施の形態１のシステム構成と同様であるものとする。
【００３９】
外部機器２００において、認証処理部２２０は、機器内接続部２１０を介して認証要求情報を受信して認証処理を行い、認証処理結果として認証情報を返信する。
【００４０】
携帯電話機１００において、認証要求部１４０は、装置内接続部１２０を介して外部機器２００に認証要求情報を送信して認証要求を行い、取得した認証情報を認証情報記憶部１９８に記憶する。
認証情報には、例えば、認証処理したタイミングとして、「外部機器２００接続時」と「Ｊｖプログラム起動時」と「外部機器使用時」とのいずれのタイミングで認証処理が行われたかを示す情報などが含まれる。上記認証処理のタイミングはその他のタイミングであっても構わない。
装置属性記憶部１９７は、自情報処理装置の装置属性を記憶する。装置属性には、プログラムの改変容易性として、例えば「携帯電話機」か「パーソナルコンピュータ」かなどの自情報処理装置の種類を記憶する。
プログラム記憶部１９１は、プログラムとプログラムの持つプログラム属性とを対応付けて記憶する。記憶方法は、例えば、プログラム内にプログラム属性を含んでもよいし、プログラムとプログラム属性とを対応付けた制御表を記憶してもよい。プログラム属性には、プログラムの改変容易性として、例えば「Ｊｖプログラム」か「ネイティブプログラム」かなどのプログラムの種類を記憶する。
記憶情報取得部１３０は、プログラム記憶部１９１からプログラム属性を取得するプログラム属性取得部１３１と、装置属性記憶部１９７から装置属性を取得する装置属性取得部１３２と、認証情報記憶部１９８から認証情報を取得する認証情報取得部１３３とを備える。
【００４１】
図１２は、実施の形態３におけるデータオブジェクト１９５の生成方法を示すフローチャートである。
図１２において、まず、記憶情報取得部１３０は、装置属性取得部１３２とプログラム属性取得部１３１と認証情報取得部１３３とを起動し、装置属性、プログラム属性、認証情報を取得する（Ｓ３０１）。
次に、記憶情報取得部１３０は、装置内接続部１２０を介して外部機器２００に、データおよびデータ属性を要求する要求情報を生成し出力する。要求情報には装置属性、プログラム属性、認証情報が含まれる（Ｓ３０２）。
外部機器２００は、要求情報に示されるデータと、そのデータの属性であり、装置属性、プログラム属性、認証情報に対応するデータ属性とを携帯電話機１００に出力する（Ｓ３０３）。
【００４２】
ここで、外部機器２００は、装置属性、プログラム属性、認証情報に対応するデータ属性を出力するために、例えば、各データに対して図１３に示すような制御表を外部機器記憶部２９０に記憶する。
図１３において制御表は、セキュリティレベルとして装置属性とプログラム属性と認証情報の項目を持ち、セキュリティレベルに対して該データの持つデータ属性を設定している。
【００４３】
次に、記憶情報取得部１３０は、外部機器２００から取得したデータおよびデータ属性をデータ記憶部１９４に記憶する（Ｓ３０４）。
データオブジェクト生成部１１３は、データ記憶部１９４に記憶されたデータとデータ属性とを対応付けたデータオブジェクトを生成しデータ記憶部１９４に記憶する（Ｓ３０５）。
【００４４】
以上のように情報処理装置、プログラムや認証処理のセキュリティレベルに合わせて、データ属性を変化させることにより、より必要に応じたデータオブジェクトへのアクセス制御が可能になる。
【００４５】
また、上記説明では、情報処理装置のセキュリティレベルとプログラムのセキュリティレベルと認証処理のセキュリティレベルとに対してデータ属性を変化させたが、いずれかのセキュリティレベルによりデータ属性を変化させてもよい。
【００４６】
実施の形態４．
通常、携帯電話機１００や外部機器２００の設計者の意図（設定）により、データ属性やその取り扱いが定められていた。しかし、携帯電話機１００を所有、使用しているのは携帯電話機ユーザであり、自己責任でその取り扱いに縛られないデータの取り扱いをしたいユーザも存在しうる。あるいは逆に、企業での使用などにおいて、携帯電話機１００や外部機器２００が想定しているデータの取り扱いよりも、より厳しい取り扱いを必要とすることも考えられる。
【００４７】
そこで、データ属性に対して変更可能属性を追加し、変更可能属性のあるデータについては、利用可否の属性を変更できるようにすることについて以下に説明する。
【００４８】
図１４は、実施の形態４におけるシステム構成図である。
ここで、上記実施の形態１で説明したシステム構成と異なる構成について説明し、その他の構成については上記実施の形態１のシステム構成と同様であるものとする。
Ｊｖ環境実行部１１０は、データ記憶部１９４に記憶されたデータオブジェクトに含まれるデータ属性を変更するデータ属性変更部１１５を備える。
【００４９】
図１５は、実施の形態４におけるデータ属性を示す図である。
図１５において、データ属性には変更可能（Ｃｈａｎｇｅａｂｌｅ）についての属性が含まれている。
【００５０】
ユーザからデータ属性の変更要求を示す変更要求データを入力された場合、Ｊｖ環境実行部１１０はデータ属性変更部１１５を起動する。データ属性変更部１１５は、変更要求されたデータの変更可能（Ｃｈａｎｇｅａｂｌｅ）属性を参照し、データ属性を変更可能か判定する。判定した結果、データ属性が変更可能であった場合、データ属性変更部１１５は、変更要求データに従いデータ属性を変更する。
【００５１】
上記では、Ｊｖ環境実行部１１０が制御するデータ属性変更部１１５によりデータ属性の変更を行った。但し、変更方法は、Ｊｖ実行環境上で変更する方法、Ｊｖ実行環境以外で任意のユーザプログラムにより変更する方法などいずれの方法でも構わない。また、変更可能属性についても、変更可能か否か以外に、任意に変更可能か、より厳しい取り扱いにのみ変更可能かなどの属性を持ち、この変更可能属性に基づいてデータ属性の変更が可能か判定しても構わない。
【００５２】
これにより、データのセキュリティ性を損なわずに、ユーザがデータ属性の変更を行うことができ、ユーザの利便性が向上する。
【００５３】
実施の形態５．
ユーザがデータの取り扱いの変更を行う場合について、上記実施の形態４と異なる形態を以下に説明する。
実施の形態５では、アクセス制御表１９６を変更することによりデータの取り扱いの変更を行う。
この場合、図１６に示すように、Ｊｖ環境実行部１１０はアクセス条件変更部１１６を備える。アクセス条件変更部１１６は、アクセス制御情報記憶部１９３に記憶されたアクセス制御表１９６が示すＡＰＩの実行に必要なデータ属性の変更を行う。
アクセス制御表１９６の変更方法は、上記実施の形態４と同様に、Ｊｖ実行環境上で変更する方法、Ｊｖ実行環境以外で任意のユーザプログラムにより変更する方法などいずれの方法でも構わない。
【００５４】
アクセス制御表１９６の変更とは、例えば図４においてＯｂｊｅｃｔ＃ｔｏＳｔｒｉｎｇ（）の実行に必要なデータ属性からＩｎｔｅｒｎｅｔＥｘｐｏｒｔａｂｌｅを削除したり、Ｇｒａｐｈｉｃｓ＃ＤｒａｗＳｔｒｉｎｇ（）の実行に必要なデータ属性にＰｒｉｎｔａｂｌｅを追加するなどのことである。
【００５５】
アクセス制御表１９６を変更できることでユーザの利便性が向上する。
【００５６】
上記の各実施の形態において、Ｊａｖａ（登録商標）プログラムを実行する情報処理装置について説明した。
但し、情報処理装置は、Ｊａｖａ（登録商標）に限らず、その他のオブジェクト指向プログラムを実行しても構わない。
また、オブジェクト指向に限らず、Ｃ言語やＰｅｒｌ（Ｐｒａｃｔｉｃａｌ  Ｅｘｔｒａｃｔｉｏｎ  ａｎｄ  Ｒｅｐｏｒｔ  Ｌａｎｇｕａｇｅ）などいずれの言語で記述されたプログラムでも構わず、それに合わせ、データとデータ属性とはデータオブジェクトとして記憶しなくてもよく、データとデータ属性とが対応付けばよい。この場合は例えば、データとデータ属性とを対応付けた制御表を記憶する記憶部を備えればよい。
【００５７】
また、各実施の形態で説明した各構成要素、各処理は組み合わせて使用しても構わない。
【図面の簡単な説明】
【００５８】
【図１】実施の形態１における情報処理装置のハードウェア構成図。
【図２】実施の形態１におけるシステム構成図。
【図３】実施の形態１におけるデータ属性を示す図。
【図４】実施の形態１におけるアクセス制御表１９６を示す図。
【図５】実施の形態１におけるアクセス制御表１９６を示す図。
【図６】実施の形態１におけるデータおよびデータ属性を示す図。
【図７】実施の形態１におけるデータオブジェクト１９５の生成方法を示すフローチャート。
【図８】実施の形態１におけるデータオブジェクト１９５の利用方法を示すフローチャート。
【図９】実施の形態２におけるシステム構成図。
【図１０】実施の形態２におけるアクセス制御表１９６を示す図。
【図１１】実施の形態３におけるシステム構成図。
【図１２】実施の形態３におけるデータオブジェクト１９５の生成方法を示すフローチャート。
【図１３】実施の形態３におけるセキュリティレベルとデータ属性とを対応付ける制御表を示す図。
【図１４】実施の形態４におけるシステム構成図。
【図１５】実施の形態４におけるデータ属性を示す図。
【図１６】実施の形態５におけるシステム構成図。
【符号の説明】
【００５９】
１００  携帯電話機、１１０  Ｊｖ環境実行部、１１１  データオブジェクト利用部、１１２  データオブジェクトアクセス制御部、１１３  データオブジェクト生成部、１１４  プログラム属性取得部、１１５  データ属性変更部、１１６  アクセス条件変更部、１２０  装置内接続部、１３０  記憶情報取得部、１３１  プログラム属性取得部、１３２  装置属性取得部、１３３  認証情報取得部、１４０  認証要求部、１９１  プログラム記憶部、１９２  Ｊｖプログラム、１９３  アクセス制御情報記憶部、１９４  データ記憶部、１９５  データオブジェクト、１９６  アクセス制御表、１９７  装置属性記憶部、１９８  認証情報記憶部、２００  外部機器、２１０  機器内接続部、２２０  認証処理部、２９０  外部機器記憶部、９０１  表示装置、９０２  入力装置、９０４  媒体接続装置、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  ＯＳ、９２３  プログラム群、９２４  ファイル群。
【図１】
2006092296.tif 000003
【図２】
2006092296.tif 000004
【図３】
2006092296.tif 000005
【図４】
2006092296.tif 000006
【図５】
2006092296.tif 000007
【図６】
2006092296.tif 000008
【図７】
2006092296.tif 000009
【図８】
2006092296.tif 000010
【図９】
2006092296.tif 000011
【図１０】
2006092296.tif 000012
【図１１】
2006092296.tif 000013
【図１２】
2006092296.tif 000014
【図１３】
2006092296.tif 000015
【図１４】
2006092296.tif 000016
【図１５】
2006092296.tif 000017
【図１６】
2006092296.tif 000018