WO2006114878A1 - コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム - Google Patents

コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム Download PDF

Info

Publication number
WO2006114878A1
WO2006114878A1 PCT/JP2005/007622 JP2005007622W WO2006114878A1 WO 2006114878 A1 WO2006114878 A1 WO 2006114878A1 JP 2005007622 W JP2005007622 W JP 2005007622W WO 2006114878 A1 WO2006114878 A1 WO 2006114878A1
Authority
WO
WIPO (PCT)
Prior art keywords
access
access authority
access control
java
registered trademark
Prior art date
Application number
PCT/JP2005/007622
Other languages
English (en)
French (fr)
Inventor
Nori Matsuda
Takeshi Yoneda
Takehiko Koyasu
Atsushi Kohno
Original Assignee
Mitsubishi Electric Corporation
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 Mitsubishi Electric Corporation filed Critical Mitsubishi Electric Corporation
Priority to JP2007514387A priority Critical patent/JP4755181B2/ja
Priority to PCT/JP2005/007622 priority patent/WO2006114878A1/ja
Priority to EP05734643A priority patent/EP1873650A4/en
Priority to CNA2005800495395A priority patent/CN101167062A/zh
Priority to US11/918,789 priority patent/US20090031418A1/en
Publication of WO2006114878A1 publication Critical patent/WO2006114878A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1483Protection against unauthorised use of memory or access to memory by checking the subject access rights using an access-table, e.g. matrix or list
    • 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

Abstract

 実行環境の状況に基づいてアクセス権限の有効状態を判定する有効状態判定手段と、前記有効状態判定手段による有効状態に基づいて、コンピュータリソースへのアクセス権限を指定するアクセス権限管理テーブルと、前記アクセス権限管理テーブルに基づいてアクセス制御を行うアクセス制御実行環境とを備える。  また、前記有効状態判定手段を有し、前記有効状態を含むアクセス権限の検証を行う外部アクセス制御手段と、前記アクセス制御実行環境が前記アクセス権限管理テーブルを用いて前記アクセス権限の認証を行う際、内部的に前記外部アクセス制御手段を呼び出すよう登録する外部アクセス制御手段登録手段とを備える。

Description

明 細 書
コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス 制御プログラム
技術分野
[0001] 本発明は、コンピュータリソースへのアクセス制御機能を備えたコンピュータ及びコ ンピュータリソースへのアクセス制御方法及びコンピュータに実行させるアクセス制御 プログラムに関するものである。 背景技術
[0002] 従来のアクセス制御方法では、ユーザ IDZグループ IDZロール (役割) Zリソース 名 Z操作内容等の情報を条件として、事前にアクセス権限管理テーブル(
ACL:Access Control List)に付与アクセス権限を定義していた(例えば、非特許文献 1: David F.Ferraiolo, D.Richard Kuhn, Ramaswamy Chandramouli著「Role- Based Access ControljARTECH HOUSE,INC.,2003年、 P6〜16)。
[0003] そして、アプリケーションがリソースへのアクセスを試みた際に、リソースアクセスのた めにコールされた API力 API実行に必要な利用アクセス権限をアプリケーションが保 持しているかどうかの判定を、アクセス権限認証機構を利用して行う。アクセス権限認 証機構では、具体的には、 APIをコールしたアプリケーションの属性情報として、起動 者のユーザ IDZグループ IDZロール等の属性情報、操作対象のリソース名、操作内 容等の操作属性情報を取得する。次に、利用アクセス権限に関する情報が、ァクセ ス権限管理テーブルに許可する付与アクセス権限として記載されているかどうかの判 定を行う事により、アクセス権限の認証を行う。
[0004] このアクセス権限認証の結果にてアクセス権限があると判定された場合にのみ、リソ ースアクセスのためにコールされた APIは、コンピュータリソースへのアクセスを行って いた。これにより、アプリケーションが処理を行う際にアクセス権限の認証を行い、リソ ースへのアクセスを制御する事ができた。
[0005] また、アプリケーションが OSの APIをコールするのを補足し、補足した際に独自のァ クセス権限認証を行う事によって、 OSがサポートして!/ヽな 、アクセス権限の認証を行 う方法も提案されている(例えば、特許文献 1 :特開 2003-44297号公報 第 12頁〜 21 頁、第 2図)。
[0006] この方法では、事前にアクセス権限管理テーブルに対して、 OSがサポートしてない 独自の付与アクセス権限を定義する。そして、アプリケーションがリソースへのァクセ スを試みた際に、その APIコールを補足して、独自に用意したアクセス権限認証機構 (図中アクセス制御 CTRL)を用いて、アクセス権限認証を行う。このアクセス権限認証 は、非特許文献 1に記載された従来の技術と同様に行う。そのアクセス権限認証の結 果、アクセス権限があると判断された場合は、本来呼ばれるべき APIコールを実行し て、リソースへのアクセスを行う。
[0007] これにより、様々なリソースへのアクセス (APIのコール)に対して、 OSが提供してい な!、独自のアクセス権限を与え、独自のアクセス制御を行う事ができた。
[0008] また、アクセスの可否を、ユーザ IDZグループ IDZロール等のアクセス者の属性、 操作対象となるリソース名、実行しょうとしている操作内容以外のノ メータで判断す る方法も開示されている(例えば、非特許文献 2 :ACM Transactions on Information and System Security, Vol.7, No.3, August 2004, Pages 392-427 「An Integrated Approach to Engineer and Enforce Context Constraints in RBAC Environments] )。
[0009] この方法では、独自の構成の中で、アクセスの可否を判断するパラメータとして、ュ 一ザ IDZグループ IDZロール等のアクセス者の属性、操作対象となるリソース名、実 行しょうとして ヽる操作内容 (非特許文献 2中の Permission)以外のパラメータ (非特許 文献 2中の Context Condition)を設けることを提案しており、より汎用的なアクセス制 御を行っている。
[0010] 非特千文献 1: David F.Ferraiolo, D.Richard Kuhn, Ramaswamy Cnandramouli著「 Role-Based Access ControlJ ARTECH HOUSE,INC.,2003年
非特許文献 2 : ACM Transactions on Information and System Security, Vol.7, No.3, August 2004, Pages 392-427「An Integrated Approach to Engineer and Enforce Context Constraints in RBAC EnvironmentsJ
特許文献 1:特開 2003-44297号公報
発明の開示 発明が解決しょうとする課題
[0011] 非特許文献 1及び特許文献 1に示される従来のアクセス制御方法では、アクセスの 可否を、ユーザ IDZグループ IDZロール等のアクセス者の属性、操作対象となるリソ ース名、実行しょうとしている操作内容のみで判断しており、そのリソースが置かれて V、る PC等のプログラム実行環境の状況を考慮して 、な 、と 、う問題点があった。
[0012] 例えば、 Java (登録商標)搭載カーナビでは、運転者が自由に Java (登録商標)プログ ラムをダウンロードして実行する事ができる。更にプログラムから、車のドアロックの解 除等の操作を行う方式も検討されつつある。しかし、安全運転の観点から、車が停車 中はドアロックの解除を許可する力 車が走行中にはドアロックが解除されてはならな いケースがある。また同様に、停車中は多くの画面描画を伴うゲームの実行を許可す る力 走行中はゲームの実行等を許可したくないケースがあり得る。
[0013] また、たとえ車が停車中であっても、カーナビ本来の処理を円滑に行うために、新 たに他の処理を受け付けたくはないケースも考えられる。
[0014] この様な要件に対しては、非特許文献 1及び特許文献 1で示したようなアクセス者 の属性、リソース名、操作内容のみでアクセスの可否を判断するアクセス制御方法で は、リソースが置かれている PC等のプログラム実行環境の状態を考慮しないため、十 分なアクセス制御ができな 、と 、う問題点があった。
[0015] このような問題点を解決するものとして、非特許文献 2のようなアクセス制御方法が 存在するが、非特許文献 2に開示されたアクセス制御方法では、独自の構成の中で アクセス者の属性、リソース名、操作内容以外のパラメータを定義しているため、例え ば Java (登録商標)搭載カーナビに適用しょうとした場合、非特許文献 2の構成となる よう Java (登録商標)本体のプログラムを修正必要がある。このような修正作業は非常 に困難で、もし修正可能であったとしても、多くの手間と費用を要することとなる。
[0016] この発明は上記のような問題点を解決するためになされたもので、プログラムが動 作する PCの状態や、それに接続されたデバイスの状態も考慮に入れて、かつ Java (登 録商標)等の本体のプログラムを修正することなぐメンテナンスが容易で、コスト的に 有利なアクセス制御を実現する事を目的とする。
課題を解決するための手段 [0017] 本発明にかかわるコンピュータは、実行環境の状況に基づいてアクセス権限の有 効状態を判定する有効状態判定手段と、前記有効状態判定手段による有効状態に 基づいて、コンピュータリソースへのアクセス権限を指定するアクセス権限管理テー ブルと、前記アクセス権限管理テーブルに基づ 、てアクセス制御を行うアクセス制御 実行環境とを備えるものである。
発明の効果
[0018] 実行環境の状況に基づいてアクセス権限の有効状態を判定する有効状態判定手 段と、前記有効状態判定手段による有効状態に基づいて、コンピュータリソースへの アクセス権限を指定するアクセス権限管理テーブルと、前記アクセス権限管理テープ ルに基づいてアクセス制御を行うアクセス制御実行環境とを備えることにより、メンテ ナンスが容易で、コスト的に有利で、細かいアクセス制御を行うことができる。
図面の簡単な説明
[0019] [図 1]本発明のアクセス制御方法を適用したシステム全体の構成を示す説明図である [図 2]監視 ·制御の処理の流れを示す説明図である。
[図 3]監視サーバ 105が車両システム 101を監視する場合の処理の流れを示す説明図 である。
[図 4]スマートキー 103を用いてドアのロック解除を行う場合の処理の流れを示す説明 図である。
[図 5]車載 PC111に搭載された本発明のアクセス制御方法を適用した Java (登録商標) 実行環境の構成を示す説明図である。
[図 6]アクセス権限管理テーブル 506の構成を示した説明図である。
[図 7]セキュリティプロパティファイル 505の構成を示す説明図である。
[図 8]JaVa (登録商標)実行環境 502の初期化と、アクセス権限管理テーブル 506の読 み込み処理における処理の流れを示したシーケンス図である。
[図 9]アプリケーション 501を構成するクラスが読み込まれた時に、アプリケーションに 与える付与アクセス権限一式を決定する時の処理の流れを示したシーケンス図であ る。 [図 10]アプリケーション 501が Java (登録商標)提供各種 API503もしくは各種車載 API507をコールした時に、どの様にして Java (登録商標)提供アクセス制御コントローラ 504が呼ばれるかを示した説明図である。
[図 11]アクセス権限認証実施である図 10の S1004の詳細を示す処理フローである。
[図 12]アクセス権限一覧保持手段 [C]に格納されているアクセス権限を用いてァクセ ス権限認証を行う図 11の S1105の詳細を示す処理フローである。
[図 13]車載 PC111に搭載された本発明のアクセス制御方法を適用した Java (登録商 標)実行環境の別の構成を示す説明図である。
[図 14]図 13の場合の、 Java (登録商標)実行環境 502の初期化と、アクセス権限管理テ 一ブル 506の読み込み処理における処理の流れを示したシーケンス図である。
[図 15]図 13の場合の、アプリケーション 501を構成するクラスが読み込まれた時に、ァ プリケーシヨンに与える付与アクセス権限一式を決定する時の処理の流れを示したシ 一ケンス図である。
圆 16]Java (登録商標)実行環境 502の初期化と、アクセス権限管理テーブル 506の読 み込み処理における別の処理の流れを示したシーケンス図である。
[図 17]アプリケーション 501を構成するクラスが読み込まれた時に、アプリケーションに 与える付与アクセス権限一式を決定する時の別の処理の流れを示したシーケンス図 である。
圆 18]実施例 2における Java (登録商標)実行環境 502の機能構成を示した説明図で ある。
圆 19]状態検証手段管理テーブル 1604の構成を示した説明図である。
[図 20]Java (登録商標)提供アクセス制御コントローラ 504から呼び出された外部ァクセ ス制御手段 508の処理フローである。
圆 21]付与アクセス権限が有効となる有効状態 605を元に、その有効状態 605が成り 立つかどうかを検証するための状態検証手段 1605—式を読み込む場合の処理フロ 一である。
[図 22]状態検証手段 1605—式を用いて、車載 PCI 11や車両システム 101にお 、て付 与アクセス権限が有効となる状態にあるかどうかを検証するための処理フローである [図 23]状態検証手段 1605にお 、て、状態確認メソッドがコールされた時に行われる 処理フローである。
[図 24]本実施例 3における Java (登録商標)実行環境 502の構成を示した説明図である 圆 25]アクセス権限行使状況管理テーブル 2202の構成を示す説明図である。
[図 26]Java (登録商標)提供アクセス制御コントローラ 504の処理フローである。
[図 27]有効状態にあるかどうかの検証を行う状態検証手段 1605において、付与ァク セス権限の行使回数もしくは行使間隔の検証を行う場合の処理フローである。
圆 28]アクセス権限行使状況管理手段 2201にお 、て、付与アクセス権限の最終行使 時刻 2303もしくは行使回数 2304を取得する際の処理フローである。
圆 29]ある付与アクセス権限が有効と判定された場合に、その付与アクセス権限を行 使する履歴を、権限行使状況管理テーブル 2202に格納する際の処理フローである。 符号の説明
101 車両システム
102 携帯電話 C
103 スマートキー
104 配信サーバ
105 監視サーバ
106 携帯電話 B
107 インターネット
111 車載 PC
112 記憶装置
113 ディスプレイ
114 入力装置
115 携帯電話 A
116 無線デバイス
117 情報系 LAN 118 エンジン
119 ドアロック
120 ィモビライザ
121 速度メータ
122 ヘッドライト
123 制御系 LAN
124 車載 GW
501 アプリケーション
502 Java (登録商標)実行環境
503 Java (登録商標)提供各種 API
504 Java (登録商標)提供アクセス制御コントローラ 505 セキュリティプロパティファイル
506 アクセス権限管理テーブル
507 各種車載 API
508 外部アクセス制御手段
509 アクセス権限判定手段
510 有効状態判定手段
511 アクセス権限一覧保持手段
512 外部アクセス制御手段登録手段
513 各種車両システムリソース
601 権限付与対象
602 付与アクセス権限情報
603 リソース指定情報
604 操作内容情報
605 有効状態
701 暗号プロバイダ設定値
702 ポリシープロバイダ設定値
1801 状態検証手段呼出手段 1802 状態検証手段管理手段
1803 状態検証手段読込み手段
1804 状態検証手段管理テーブル
1805 状態検証手段
1901 有効状態名
1902 状態検証手段名
1903 パラメータ
2401 アクセス権限行使状況管理手段
2402 権限行使状況管理テーブル
2501 コードソース
2502 アクセス権限情報
2503 最終行使時刻
2504 行使回数
発明を実施するための最良の形態
[0021] 実施例 1.
図 1は、この発明のアクセス制御方法を適用した Java (登録商標)実行環境 (アクセス 制御実行環境に相当)を、車の監視,制御を実現するために車載 PCに搭載して、監 視 ·制御システムを構成した場合のシステム構成図である。
[0022] 図 1において、車両システム 101は車であって、車載 PC111やエンジン 118や速度メ ータ 121などの各種車載機器によって構成される。
[0023] 車載 PC111は、車両システム 101に搭載された車載機器であって、本発明のァクセ ス制御機能、及び車両システム 101に搭載された各種車載機器を制御するための API (Application Programming Interface)を備えた Java (登録商標)実行環境を備える 。更に、各種 Java (登録商標)プログラムやアクセス権限管理テーブルを記憶する記憶 装置 112を備える。
[0024] ディスプレイ 113は、車両システム 101に搭載された車載機器であって、車載 PC111 等の車載機器力ゝらの要求により、運転者や同乗者 (以降、まとめて運転者と呼ぶ)に 対して、道路情報や各種車載機器の監視情報を提示するための表示装置である。 [0025] 入力装置 114は、キーボードや操作パネル等、運転者から制御コマンド等の指示を 入力するための機器である。物理的には、タツチパネル型ディスプレイとして、デイス プレイと統合されて 、るケースもある。
[0026] 携帯電話 A115は、車両システム 101に搭載もしくは接続された車載機器であって、 車載 PC111が接続された情報系 LAN (Local Area Network) 117とインターネット 107を 接続するための無線通信機器である。
[0027] 無線デバイス 116は、車両システム 101に搭載された車載機器であって、 Bluetooth( 登録商標)や IrDA(InfraRed Data Association)や無線 LAN等の、狭域の無線通信を 行うための通信機器である。
[0028] 情報系 LAN117は、上記で述べた様な、車の走行には直接的に影響しない各種車 載機器を接続するためのネットワークである。
[0029] エンジン 118は、車両システム 101に搭載された車載機器であって、車を動かすため の動力を発生させる機器である。
[0030] ドアロック 119は、車両システム 101に搭載された車載機器であって、車のドアの鍵の 施錠 Z解錠を制御する機器である。
[0031] ィモビライザ 120は、車両システム 101に搭載された車載機器であって、運転者が保 持するスマートキー 103等の鍵を何らかの手段で認証して、エンジン 118をスタートさ せるための機器である。
[0032] 速度メータ 121は、車両システム 101に搭載された車載機器であって、エンジン 118 の回転数や、車の走行速度を計測するための機器である。
[0033] ヘッドライト 122は、車両システム 101に搭載された車載機器であって、夜間やトンネ ル内を走行中に、車の前方を照らすための機器である。
[0034] 制御系 LAN123は、上記で述べた様な、車の走行に必須となる各種車載機器を接 続するためのネットワークである。
[0035] 車載 GW124は、車両システム 101に搭載された車載機器であって、情報系 LAN117 と制御系 LAN123を接続する GW (ゲートウェイ)としての役割を果たし、通信プロトコ ルの変換等を行うための機器である。
[0036] 携帯電話 C102は、運転者が保持する機器であって、車両システム 101に搭載され た無線デバイス 116を通して車載 PCI 11と通信する機能と、監視 ·制御コマンドの送受 信を行う機能を持つ機器である。
[0037] スマートキー 103は、運転者が保持する鍵に相当する機器であって、車両システム
101の無線デバイス 116を通して車載 PC111と通信する機能と、ドアの開閉コマンドを 送信するための機能を持つ機器である。
[0038] 配信サーバ 104は、インターネット 107に接続された機器であって、車載 PC111で動 作する Java (登録商標)プログラムや、動画や音楽などの各種コンテンツを配信するた めのサーバである。
[0039] 監視サーバ 105は、インターネット 107に接続された機器であって、車載 PC111で動 作する Java (登録商標)プログラムを提供すると共に、車両システム 101上の各種機器 の遠隔監視 ·制御を行うためのサーバである。
[0040] 携帯電話 B106は、インターネット 107に接続された機器であって、車の遠隔監視 · 制御を行うための機器である。通常は車の保有者が保持して ヽる。
[0041] インターネット 107は、上記で述べた車両システム 101や各種サーバや携帯電話 B 106を接続するための汎用ネットワークである。
[0042] なお、情報系 LAN117や制御系 LAN123に接続される各種車載機器は、上記で述 ベた機器に限定されるものではなぐ車の構成要素に応じて様々な車載機器を接続 する事ができる。更に、車両システム 101のネットワーク構成も、上記構成に限定され るものではなぐ単一ネットワークや、さらに分割したネットワークを構成しても良い。
[0043] また、インターネット 107上に設置されるサーノも、配信サーバ 104や監視サーバ 105 や携帯電話 B106に限定されるものではなぐ車に提供するサービスに応じて、様々 なサーバやクライアントを設置しても良い。同様に、無線デバイスに接続する機器とし て携帯電話 C102やスマートキー 103を示したが、提供するサービスに応じて様々な デバイスを接続出来るようにしても良 、。
[0044] 次に、この車の監視.制御システムの利用形態について、代表的なものを説明する
[0045] 始めの利用形態は、車載 PC上で動作する監視 ·制御プログラムによる監視 ·制御で ある。図 2は、監視 '制御の処理の流れを示す説明図である。図 2を用いて以下に処 理の流れを説明する。
[0046] 車載 PC111が起動した時、もしくは、運転者の指示に応じて、監視'制御を行う監視 •制御プログラムを車載 PC111上で起動する(ステップ S201力もステップ S203)。ここで 起動する監視 ·制御プログラムは、事前に車載 PCI 11の記憶装置 112に搭載されて ヽ る場合もあれば、インターネット 107を経由して、配信サーバ 104や監視サーバ 105か ら入手したプログラムの場合もある。
[0047] 監視 ·制御プログラムが起動されると、プログラムは自動で、もしくは運転者の指示 によって、各種車載機器に対して監視情報を取得するための監視コマンドを送信す る (ステップ S204からステップ S206)。その結果、車載機器より監視情報を取得し (ステ ップ S207)、ディスプレイに対して表示の指示をする(ステップ S208)。そして、この動 作を繰り返す事により、運転者は各種車載機器の監視を行う事ができる。
[0048] 更に、運転者が入力装置 114を操作する事により、車載機器の制御を指示したとす る (ステップ S209)。その運転者の指示を受け取った監視 ·制御プログラムは (ステップ S210)、運転者の指示を元に制御コマンドを作成し、制御対象となる車載機器に制御 コマンドを送信し (ステップ S211)、制御が完了した事を確認する (ステップ S212)。そ して、その制御結果をディスプレイに表示する (ステップ S213)。これによつて、運転者 は各種車載機器の制御を行う事ができる。
[0049] 他の利用形態として、監視サーバ 105や携帯電話 B106による遠隔監視 *制御がある 。図 3は、監視サーノ 105が車両システム 101を監視する場合の処理の流れを示す説 明図である。図 3を用いて以下に処理の流れを説明する。
[0050] 車載 PC111が起動した時、もしくは、運転者の指示に応じて、遠隔操作を受け付け る遠隔監視'制御プログラムを車載 PC111上で起動する (ステップ S301)。ここで起動 する遠隔監視 ·制御プログラムは、事前に車載 PC 111の記憶装置 112に搭載されて ヽ る場合もあれば、インターネット 107を経由して、監視サーバ 105から入手したプロダラ ムの場合もある。また、起動のタイミングは、監視サーバ 105からの監視コマンドを受 信した時でも良い。
[0051] 監視サーバ 105がインターネット 107と携帯電話 A115を通じて、車載 PC111に対して 監視コマンドを送信すると (ステップ S302)、遠隔監視'制御プログラムは、監視サー ノ 105の監視コマンドを解釈して、車載機器に対して制御コマンドを送付して (ステツ プ S303)、車載機器の情報を取得して (ステップ S304)、その情報を監視サーバに送 信する(ステップ S305)。これにより、監視サーバ 105は、車両システム 111の遠隔監視 を行う事ができる。
[0052] さらに監視サーノ 105が制御を行う場合、車載 PC111に対して制御コマンドを送信 する (ステップ S306)。その制御コマンドを受信した遠隔監視 ·制御プログラムは、監視 サーノ 105の制御コマンドを解釈して、車載機器に対して送信する制御コマンドに変 換して、その制御コマンドを車載機器に送信し (ステップ S307)、制御が完了した事を 確認する (ステップ S308)。車載機器に制御コマンドを送った結果は、別途監視サー バに送信する (ステップ S309)。これにより、監視サーバ 105は、車両システム 101の遠 隔制御を行う事ができる。
[0053] その他の利用形態として、携帯電話 C102やスマートキー 103を用いた狭域監視 '制 御がある。図 4は、スマートキー 103を用いてドアのロック解除を行う場合の処理の流 れを示す説明図である。図 4を用いて以下に処理の流れを説明する。
[0054] 車載 PC111が起動した時、もしくは、運転者の指示に応じて、狭域操作を受け付け る狭域監視 ·制御プログラムを車載 PCI 11上で起動する (ステップ S401)。ここで起動 する狭域監視 ·制御プログラムは、事前に車載 PCI 11の記憶装置 112に搭載されて ヽ る場合もあれば、インターネット 107を経由して、監視サーバ 105や配信サーバ 104か ら入手したプログラムの場合もある。また、起動のタイミングは、スマートキー 103から の制御コマンドを受信した時でも良 、。
[0055] 運転者がスマートキー 103を操作する事によって (ステップ S403)、もしくは車に近づ く事によって自動的に、ドアロック解除コマンドが無線デバイス 116経由で車載 PC111 に送信されると (ステップ S404)、狭域監視'制御プログラムは、ドアロック解除コマンド を解釈して、車載機器の一つであるドアロック 119に対して送信する制御コマンドに変 換して、その制御コマンドをドアロック 119に送信する(ステップ S405)。ドアロック 119は 、その制御コマンドを解釈して、ロアのロックを解除する。これによつて、運転者は、ド アロックの解除を行う事ができる。
[0056] 以上、車載 PC111が搭載された車両システム 101において、どの様に遠隔監視'制 御が利用されるかについて説明した。
[0057] 次に、図 5は車載 PC111に搭載された Java (登録商標)実行環境であって、この発明 のアクセス制御方式を適用した Java (登録商標)実行環境における機能構成を示した 説明図である。
[0058] アプリケーション 501は、車載機器の監視 ·制御を行うための Java (登録商標)プログ ラムであったり、ゲームを行うための Java (登録商標)プログラムであったり、それぞれの 用途に応じた Java (登録商標)プログラムである。これは、あら力じめ車載 PC111の記憶 装置 112に格納されている Java (登録商標)プログラムや、インターネット 107等のネット ワークを経由して配信サーバ 104や監視サーノ 105等力らダウンロードした Java (登録 商標)プログラムであって、車載 PCI 11上のアクセス制御実行環境に相当する Java (登 録商標)実行環境 502上で動作させる。その提供形態としては、 Java (登録商標)仕様 で定められた通常の Java (登録商標)アプリケーションの場合もあれば、同じく Java (登 録商標)仕様で定めれられた Java (登録商標)ァプレットや MIDletや Xletや、 OSGi (The Open Services Gateway Initiative)で定められたフレームワークやバンドルやサービ スの形態を取る事もある。
[0059] Java (登録商標)実行環境 502は、車載 PC111に搭載されており、各種アプリケーショ ン 501を実行するために用いるアプリケーション実行環境である。この Java (登録商標) 実行環境 502には、 Java (登録商標)提供各種 API503と Java (登録商標)提供アクセス制 御コントローラ 504とセキュリティプロパティファイル 505とアクセス権限管理テーブル 506が含まれる。
[0060] Java (登録商標)提供各種 API503は、 Java (登録商標)標準仕様にて API仕様が定め られ、 Java (登録商標)実行環境 502に事前に組み込まれた複数のクラスカゝら構成され る。例えば、ファイルを読み込むためのクラス java.io.FilelnputStreamや、ソケット通信 を行うためのクラス java.net.Socket等から構成される。
[0061] Java (登録商標)提供アクセス制御コントローラ 504は、 Java (登録商標)標準仕様にて 仕様が定められ、 Java (登録商標)実行環境 502に事前に組み込まれたアクセス制御 を行うための複数のクラス力 構成される。例えば、アクセス権限を表すクラス java.security.Permissionや、アクセス権限の認証を? Tうクラス java.security.AccessController等から構成される。この Java (登録商標)提供アクセス 制御コントローラ 504は、アクセス権限管理テーブル 506に記述された付与アクセス権 限を元に、アプリケーションが利用する利用アクセス権限の認証を行う。
[0062] セキュリティプロパティファイル 505は、 Java (登録商標)実行環境 502が保有する設定 ファイルの一つであって、アクセス権限管理テーブル 506を読み込むための機能が実 装されたクラス名を指定するため等に用いる。
[0063] アクセス権限管理テーブル 506は、 Java (登録商標) Development Kitにて標準で提 供されるポリシーファイルに相当する情報で、アプリケーション 501やユーザに対して 与える付与アクセス権限を指定するためのテーブルである。
[0064] 各種車載 API507は、車両システム 101に搭載された各種車載機器に対して、制御 コマンドの送受信や監視情報の送受信などを行うための機能を提供するクラスの集 合である。これは、あらかじめ車載 PC111の記憶装置 112に格納されている Java (登録 商標)プログラムや、ネットワークを経由して配信サーバ 104や監視サーノ 105等から ダウンロードした java (登録商標)プログラムであって、車載 PCI 11上の Java (登録商標) 実行環境 502上でアプリケーション 501と組み合わせて動作させる。これは、 Java (登録 商標)で記述されたプログラムをコンパイルした複数のクラスの集合であって、通常の クラスのままで提供される場合もあるが、 Java (登録商標)仕様で定められた Jarファイル として提供される場合や、 OSGiで定められたフレームワークやバンドルやサービスの 形態として提供される事もある。
[0065] 更に、各種車載 API507は、車載 PC111の組立後に、追加 Z削除 Z変更される場合 がある。例えば、車両システム 101に新しい車載機器を接続した場合、その車載機器 に対応した車載 API力 各種車載 API507に対して追加される事もある。逆に、車両シ ステム 101から車載機器が外された場合、その車載機器に対応した車載 APIが、各種 車載 API507から削除される事もある。また、車載機器の追加'削除がない場合でも、 新 ヽ機能を付加するために各種車載 API507が変更される場合もある。そのため、 車両システム 101の状態によっては、各種車載 API507が存在しないケースもある。
[0066] 外部アクセス制御手段 508は、車載 PC 111や車両システム 101に搭載された各種車 載機器の状態に応じて有効となる付与アクセス権限の検証を行う機能である。これは 、あら力じめ車載 PC111の記憶装置 112に格納されている Java (登録商標)プログラム であって、車載 PC111上の Java (登録商標)実行環境 502と組み合わせて動作させる。 この外部アクセス制御手段 508の構成要素として、アクセス権限判定手段 509と有効 状態判定手段 510とアクセス権限一覧保持手段 511がある。
[0067] アクセス権限判定手段 509は、アクセス権限管理テーブル 506に記載された付与ァ クセス権限の情報を元に、アプリケーション 501が Java (登録商標)提供各種 API503や 各種車載 API507を実行する利用アクセス権限を保持しているかどうかを判定するた めの機能である。
[0068] 有効状態判定手段 510は、アクセス権限管理テーブル 506に記載された有効状態( 詳細は後述)を元に、アクセス権限判定手段 509にて有効と判定された付与アクセス 権限に対して、車載 PC111や各種車載機器の状態が、付与アクセス権限が有効とな る状態にあるかどうかを判定するための手段である。
[0069] アクセス権限一覧保持手段 511は、 Java (登録商標)提供アクセス制御コントローラ
504がアクセス権限管理テーブル 506から読み込んだ付与アクセス権限を保持するた めの機能、及び、アプリケーション 501に与える付与アクセス権限一覧を抽出した時に 、その付与アクセス権限一覧を保持する機能である。さらに、外部から利用アクセス 権限を受け取り、その利用アクセス権限が内部で保持している付与アクセス権限一 覧に含まれるかどうかを、外部アクセス制御手段 508に含まれるアクセス権限判定手 段 509と有効状態判定手段 510を用いて検証する機能も持つ。
[0070] 外部アクセス制御手段登録手段 512は、 Java (登録商標)実行環境 502の Java (登録 商標)提供アクセス制御コントローラ 504が利用アクセス権限の認証を行う際に、内部 的に外部アクセス制御手段 508を呼び出すように、 Java (登録商標)提供アクセス制御 コントローラ 504に対して外部アクセス制御手段 508を登録する機能である。
[0071] 各種車両システムリソース 513は、車両システム 101に搭載もしくは接続された各種 車載機器などのリソースであって、例えば、車載 PC111上のファイルやソケットだけで なぐディスプレイ 113や携帯電話 A115やエンジン 118や車載 GW124等の情報系 LAN117Z制御系 LAN123に接続された全ての車載機器を指す。この各種車両シス テムリソース 513は、 Java (登録商標)提供各種 API503や各種車載 API507を用いて監 視 ·制御する事が可能である。
[0072] 図 6は、アクセス権限管理テーブル 506の構成を示した説明図である。
権限付与対象 601は、付与アクセス権限を付与する対象となるアプリケーション 501 や各種車載 API507等の条件を、一つ、もしくは複数の条件の組合せで指定する。例 えば、クラス名や Jarファイル名、クラスや Jarファイルが格納された記憶装置 112内や ネットワーク上の場所、プログラム作成者や運転者や利用者 (監視サーノ 105や携帯 電話 C102の操作者を含む)のユーザ IDZグループ IDZロール ID等を指定する。
[0073] 付与アクセス権限情報 602は、権限付与対象 601に対して、どの様な付与アクセス 権限を与えるかを指定するための情報の一つである。例えば、ファイルのアクセス権 限情報(Java (登録商標)の場合は java.io.FilePermission)や、ソケットのアクセス権限 情報(同じく java.net.SocketPermission)等を指定する。また、ユーザが定義した独自 のアクセス権限情報を指定する事もできる。
[0074] リソース指定情報 603は、付与アクセス権限情報 602にて指定した付与アクセス権限 の対象となるリソース名を指定する。例えば、ファイル名やディレクトリ名や IPアドレス 名等の一般的なコンピュータ上で提供されるリソース名や、ディスプレイ 113やドアロッ ク 119や速度メータ 121などの車両システム 101特有のリソースを指定する。
[0075] 操作内容情報 604は、リソース指定情報 603で指定したリソースに対して、どの様な 操作を許可もしくは禁止するかを指定する。(現在の Java (登録商標)標準仕様では、 許可する操作名のみが指定可能である)。例えば、リソースがファイルの場合は読み 込み (read) Z書き込み (write) Z削除 (delete)等の操作名、 IPアドレスの場合は接続 (connect) /待ち受け (accept)等の操作名、ドアロック 119の場合は施錠 (lock) /解 錠 (unlock)等の操作名を指定する。
[0076] 有効状態 605は、車載 PC111や車両システム 101に搭載された各種車載機器がどの 様な状態にあった時に、付与アクセス権限情報 602Zリソース指定情報 603Z操作内 容情報 604で指定した付与アクセス権限が有効となる力、の条件が格納される。例え ば、「ALWAYS (状態に依存せずに常に)」や、「LoacLLessThan50 (CPU負荷率が 50% 以下)」や、「Door.lock (ドアロックが施錠中)」や、「Meter.0 (車が停車中)」等の、車 載 PC111や各種車載機器の状態を条件として指定する。また、省略する事も可能で あり、この場合は従来のアクセス制御方式と同様に、車載 PC 111や車両システム 101 に接続された各種車載機器の状態に依存しない付与アクセス権限を定義したものと して扱う。
[0077] なお、アクセス権限管理テーブル 506の 1行に記載された情報のうち、付与アクセス 権限情報 602とリソース指定情報 603と操作内容情報 604と有効状態 605を併せて付 与アクセス権限と呼ぶ。この付与アクセス権限が、同一行に記載された権限付与対 象 601に対して与えられる。
[0078] 図 7は、 Java (登録商標)実行環境 502に含まれるセキュリティプロパティファイル 505 の構成を示す説明図である。
[0079] セキュリティプロパティファイル 505は、暗号プロバイダ設定値 701やポリシープロバ イダ設定値 702を含む様々な情報カゝら構成される。
[0080] 暗号プロバイダ設定値 701は、暗号アルゴリズムが実装されているプロバイダのマス タクラス名一式を指定する。本設定値は、本発明の利用には無関係である。
[0081] ポリシープロバイダ設定値 702は、アクセス権限管理テーブル 506が保存されたファ ィルを読み込み、更に、 Java (登録商標)のクラスに対して与える付与アクセス権限を 抽出する機能を持つクラス名を指定する設定値である。
[0082] 次に、図 8と図 9を用いて、 Java (登録商標)実行環境 502が起動された時に、外部ァ クセス制御手段 508を Java (登録商標)実行環境 502に対して登録する場合の動作に ついて説明する。 Java (登録商標)実行環境が起動された場合、始めに Java (登録商標 )実行環境の初期化とアクセス権限管理テーブルの読み込み処理が行われ、その後 、アプリケーションがロードされた時にアプリケーションに与える付与アクセス権限一 式が決定される。
[0083] 図 8は、 Java (登録商標)実行環境 502の初期化と、アクセス権限管理テーブル 506の 読み込み処理における処理の流れを示したシーケンス図である。
[0084] まず、ステップ S801にて車載 PC111は、車載 PC111が起動した際に自動的に、もしく は、ユーザの指示によりアプリケーション 502の起動を行う場合に、 Java (登録商標)実 行環境 502の起動を行う。
[0085] ステップ S802にて Java (登録商標)実行環境 502は、保有する各種設定ファイルの読 み込みを行い、その内容に応じて初期化作業を行う。
[0086] 本実装の形態では、本発明の外部アクセス制御手段登録手段 512をポリシープロ ノイダクラスの仕様を満たすように実装して、このポリシープロバイダ設定値 702に対 して、その実装したクラス名を記述する事とする。ここで設定した外部アクセス制御手 段登録手段 512の初期化処理は、次のステップ S803以降で述べる。
[0087] ステップ S803にて Java (登録商標)実行環境 502は、セキュリティプロパティファイル 505のポリシープロバイダ設定値 702に記載された外部アクセス制御手段登録手段 512の読み込みを行 、、初期化 (クラスのインスタンス化)を開始する。
[0088] ステップ S804にて外部アクセス制御手段登録手段 512は、初期化の一環として、 Java (登録商標)実行環境 502に対してアクセス権限管理テーブル 506の読み込みを 要求する。例えば、ステップ S802にてポリシープロノイダ設定値 702を外部アクセス制 御手段登録手段 512に置き換えたが、置き換える前に設定されていたポリシープロバ イダクラスをインスタンス化する事等で実現する。
[0089] ステップ S805にて Java (登録商標)実行環境 502は、アクセス権限管理テーブル 506 の読み込みを行う。
[0090] ステップ S806にて Java (登録商標)実行環境 502は、アクセス権限管理テーブル 506 の読み込みを完了した事を通知する。実際は、ステップ S804にて外部アクセス制御 手段登録手段 512が実施した、 Java (登録商標)実行環境 502が提供するポリシープロ バイダクラスのインスタンス化が終了した事により通知する。
[0091] ステップ S807にて外部アクセス制御手段登録手段 512は、初期化処理を終えた事を Java (登録商標)実行環境 502に通知する。これは、ステップ S803にて Java (登録商標) 実行環境 502によって開始された、外部アクセス制御手段登録手段 512が提供するク ラスのインスタンス化が完了した事によって通知する。
[0092] 図 9は、アプリケーション 501を構成するクラスが読み込まれた時に、アプリケーショ ンに与える付与アクセス権限一式を決定する時の処理の流れを示したシーケンス図 である。
[0093] まず、ステップ S901にて Java (登録商標)実行環境 502は、アプリケーション 501を実行 する際に必要なクラスの中から、読み込み処理を行うクラスを決定する。 [0094] ステップ S902にて Java (登録商標)実行環境 502は、読み込み可能なクラスおよび Jar ファイルの中から、ステップ S901で決定したクラスを検索し、そのファイルを読み込む 。そして、読み込んだクラスの属性であるコードソースとして、読み込んだクラスフアイ ルもしくはクラスファイルを含む Jarファイルの URI (Uniform Resource Identifiers)や、 Jarファイルの署名者を取得する。もし読み込むクラスのファイルが見つからない場合 は、この時点で読み込みエラーとなって終了する。
[0095] ステップ S903にて Java (登録商標)実行環境 502は、外部アクセス制御手段登録手段 512に対して、ステップ S902で求めたコードソースを指定して、そのコードソースに割り 当てるべき付与アクセス権限一覧の取得要求を行う。
[0096] ステップ S904にて外部アクセス制御手段登録手段 512は、ステップ S804にて生成し た Java (登録商標)実行環境 502が提供するポリシープロバイダクラスに対して、ステツ プ S903にて受け取ったコードソースに対応する付与アクセス権限一覧の取得要求を 行う。
[0097] ステップ S905にて Java (登録商標)実行環境 502のポリシープロバイダクラスは、ァク セス権限管理テーブル 506から読み込んだ情報を元に、アクセス権限管理テーブル 506の権限付与対象 601と、ステップ S904にて受け取ったコードソースの比較を行う事 によって、指定されたコードソースに対応する付与アクセス権限一覧を抽出する。
[0098] ステップ S906にて Java (登録商標)実行環境 502のポリシープロバイダクラスは、ステ ップ S905にて生成した付与アクセス権限一覧を、外部アクセス制御手段登録手段 512に対して送付する。
[0099] ステップ S907にて外部アクセス制御手段登録手段 512は、ステップ S906にて受け取 つた付与アクセス権限一覧をパラメータとして、外部アクセス制御手段 508に対してァ クセス権限一覧保持手段 511の作成を要求する。これは、アクセス権限一覧保持手 段 511が提供するクラスのインスタンス化を要求する事により実現する事ができる。
[0100] ステップ S908にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ステップ S907で受け取った付与アクセス権限一覧を保持するアクセス権限一覧保持 手段 511を内部に保存する。
[0101] ステップ S909にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 外部アクセス制御手段登録手段 512に対して、ステップ S908にて生成したアクセス権 限一覧保持手段 511を送付する。これは、ステップ S908にて生成したアクセス権限一 覧保持手段 511が提供するクラスのインスタンスを返す事にて実現する事ができる。
[0102] ステップ S910にて外部アクセス制御手段登録手段 512は、ステップ S909にて外部ァ クセス制御手段 508から受け取ったアクセス権限一覧保持手段 511を、 Java (登録商標 )実行環境 502に対して送付する。
[0103] ステップ S911にて Java (登録商標)実行環境 502は、ステップ S910にて受領したァクセ ス権限一覧保持手段 511を用いて、ドメインを生成する。このドメインとは、 Java (登録 商標)標準仕様にて規定された ProtectionDomainに対応する概念で、コードソースと 付与アクセス権限一覧力 構成される情報である。 Java (登録商標)実行環境 502上で 利用される全てのクラスは、いずれか一つのドメインに属しており、そのドメインに割り 当てられた付与アクセス権限一覧の範囲内でのみ処理を行う事が可能となるように、 Java (登録商標)提供アクセス制御コントローラ 504によってアクセス制御が行われる。
[0104] ステップ S912にて Java (登録商標)実行環境 502は、ステップ S902にて読み込んだク ラスのファイルと、ステップ S911にて生成したドメインとから、アプリケーション 501を実 行する際に必要となるクラスを生成する。
[0105] ステップ S913にてアプリケーション 501の実行に必要なクラスは、クラスの初期化処 理を実行する。
[0106] ステップ S914にてアプリケーション 501の実行に必要なクラスは、読み込んだクラスを 返却する。
[0107] 以上のステップ S901〜S914にて示した手順によって、アプリケーション 501の実行に 必要なクラスが一つだけロードされる。一般に、一つのアプリケーション 501の実行に は数多くのクラスが必要となるため、全てのクラスに対して以上の処理を行う事によつ て、クラスのロードを行う。
[0108] 以上の様に、図 8と図 9に示した手順を実行する事によって、 Java (登録商標)実行 環境 502の起動、及び、アプリケーション 501を実行するために必要なクラスのロード が完了して、 Java (登録商標)実行環境 502によってアプリケーション 501の実行が開始 される。 [0109] 次に、図 10、図 11、図 12を用いて、 Java (登録商標)実行環境 502上で動作するァ プリケーシヨン 501が、 Java (登録商標)提供各種 API503や各種車載 API507をコールし た時に、車の状態に応じてアクセス制御を行う場合の動作について説明する。
[0110] 図 10は、アプリケーション 501が Java (登録商標)提供各種 API503もしくは各種車載
API507をコールした時に、どの様にして Java (登録商標)提供アクセス制御コントローラ
504が呼ばれるかを示した説明図である。
[0111] 始めに、ステップ S1001にてアプリケーション 501は、 Java (登録商標)提供各種
API503もしくは各種車載 API507をコールする。
[0112] ステップ S1002にて Java (登録商標)提供各種 API503もしくは各種車載 API507は、処 理を行うためにアプリケーション 501に付与されておくべき利用アクセス権限を特定す る。
[0113] ステップ S1003にて Java (登録商標)提供各種 API503もしくは各種車載 API507は、明 示的に Java (登録商標)提供アクセス制御コントローラ 504を呼び出して、アプリケーシ ヨン 501が利用アクセス権限を付与アクセス権限として保有しているかどうかの認証を 行うためにアクセス権限認証を要求する。
[0114] ステップ S1004にて Java (登録商標)提供アクセス制御コントローラ 504は、ステップ
S1003にて受け取った利用アクセス権限力 アプリケーション 501が保有している付与 アクセス権限一覧に含まれているかどうかのアクセス権限認証を行う。なお、この処理 の詳細な流れに関しては後述する。
[0115] ステップ S1005にて Java (登録商標)提供アクセス制御コントローラ 504は、 Java (登録 商標)提供各種 API503もしくは各種車載 API507に対して、アクセス権限認証の結果 を送付する。
[0116] ステップ S1006にて Java (登録商標)提供各種 API503もしくは各種車載 API507は、ス テツプ S1005の結果としてアクセス権限有と判定された場合は、アプリケーション 501が 要求した処理を行う。アクセス権限無と判定された場合は、処理は行わない。
[0117] ステップ S1007にて Java (登録商標)提供各種 API503もしくは各種車載 API507は、ス テツプ S1005にてアクセス権限有と判定された場合は、処理を行った結果を返却する 。アクセス権限無と判定され、ステップ S1006にて処理を行わな力つた場合は、処理結 果として、アクセス権限がな 、ため処理は無効である事を通知する。
[0118] 以上の手順により、アプリケーション 501が Java (登録商標)提供各種 API503もしくは 各種車載 API507をコールした際に、 Java (登録商標)提供アクセス制御コントローラ 504が呼び出され、アクセス権限認証が行われる事を示す処理の流れを示した。
[0119] 次に、図 11及び図 12を用いて、図 10のステップ S1004の処理の詳細な流れを説明 する。図 11はアクセス権限認証実施である図 10の S1004の詳細を示す説明図であり 、図 12はアクセス権限一覧保持手段 [C]に格納されて 、るアクセス権限を用いてァク セス権限認証を行う図 11の S1105の詳細を示す説明図である。
[0120] 始めに、図 10のステップ S1004の処理が開始されると、図 11のステップ S1101が呼 び出される。ステップ S1101で Java (登録商標)提供アクセス制御コントローラ 504は、 Java (登録商標)提供各種 API503もしくは各種車載 API507から、アプリケーション 501 に付与されている付与アクセス権限一覧に含まれているかどうかを調べる利用ァクセ ス権限を受け取る。
[0121] ステップ S1102にて Java (登録商標)提供アクセス制御コントローラ 504は、利用ァクセ ス権限が含まれているかどうかの検索対象ドメインの一覧を抽出する。この時、抽出し た検索対象ドメインの個数を Nとし、各検証対象ドメインには 0から N-1までの番号を付 加する。なお、検索対象ドメインとは、図 9のステップ S911で作成したドメインと同一で あって、利用アクセス権限が含まれているかどうかを検索する対象となるドメインの事 を指す。このステップ S1102では、アプリケーション 501から Java (登録商標)提供ァクセ ス制御コントローラ 504が呼ばれるまでに通った全てのクラスに対して、各クラスが属 するドメインを抽出する。ただし、 Java (登録商標)仕様で定められた特権ブロックが利 用されている場合は、その特権ブロック力もアプリケーション寄りのクラスに関して、ド メインを抽出する処理は行わない。
[0122] ステップ S1103にて Java (登録商標)提供アクセス制御コントローラ 504は、ループ処 理を行うためのループカウンタ Cを 0に設定する。
[0123] ステップ S1104にて Java (登録商標)提供アクセス制御コントローラ 504は、ステップ S1102で抽出した検証対象ドメイン一覧の中カゝら C番目の検証対象ドメインを取得し、 その検証対象ドメインに割り当てられたアクセス権限一覧保持手段 511を取得する。 ここで取得したアクセス権限一覧保持手段 511は、図 9のステップ S908にて作成した アクセス権限一覧保持手段 511であって、外部アクセス制御手段 508のアクセス権限 判定手段 509と有効状態判定手段 510を用いてアクセス権限認証を行う機能も持って いる事がポイントである。
[0124] ステップ S1105にて Java (登録商標)提供アクセス制御コントローラ 504は、ステップ
S1104にて取得したアクセス権限一覧保持手段 511に対して利用アクセス権限を送付 し、アクセス権限の認証を要求する。
[0125] 次に、図 11の処理の流れの説明を一時中断して、図 12を用いて、上記図 11のス テツプ S1104の処理の詳細を説明する。
[0126] 始めに、ステップ S1201にて外部アクセス制御手段 508のアクセス権限一覧保持手 段 511は、 Java (登録商標)提供アクセス制御コントローラ 504から、アクセス権限一覧保 持手段 511が保持している付与アクセス権限一覧に含まれているかどうかを検証した い利用アクセス権限を受け取り、処理を開始する。
[0127] ステップ S1202にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 アクセス権限一覧保持手段 511の内部に格納されている付与アクセス権限の一覧を 取り出す。ここで、付与アクセス権限の個数を M個とし、各付与アクセス権限に対して
0から M-1までの番号を付与する。
[0128] ステップ S1203にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ループカウンタ Dを 0に設定する。
[0129] ステップ S1204にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ステップ S1202にて取得した付与アクセス権限の一覧から、 D番目の付与アクセス権 限を取得する。
[0130] ステップ S1205にて外部アクセス制御手段 508のアクセス権限判定手段 509は、付与 アクセス権限が保持する付与アクセス権限情報 602とリソース指定情報 603と操作内 容情報 604に、利用アクセス権限の付与アクセス権限情報 602とリソース指定情報 603 と操作内容情報 604が含まれるかどうかを比較する。なお、付与アクセス権限を表す クラスはアクセス権限一覧保持手段 511に属しており、比較を行う処理メソッドが実装 されているため、そのメソッドに処理を依頼する事によって実現する。 [0131] ステップ S1206にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ステップ S1205の結果として、利用アクセス権限が付与アクセス権限に含まれていた 力どうかを判定する。含まれる場合は、付与アクセス権限に割り当てられた有効状態 605の検証を行うため、ステップ S1207に進む。含まれない場合は、次の付与アクセス 権限との比較処理に進むため、ステップ S1211に進む。
[0132] ステップ S1207にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 付与アクセス権限に有効状態 605の条件が設定されて 、るかどうかを判定する。設定 されている場合は、有効状態の判定を行うためにステップ S1208に進む。設定されて いない場合は、ステップ S1213に進み、アクセス権限有として処理を終了する。なお、 有効状態 605として「ALWAYS (常に有効)」と設定されて!ヽる場合も、有効状態 605が 設定されていない場合と同様に、ステップ S1213に進み、アクセス権限有として処理を 終了する。
[0133] ステップ S1208にて外部アクセス制御手段 508の有効状態判定手段 510は、有効状 態 605を判断するために必要な車両システム 101や車載 PC111の状態を取得する。こ の状態は、 Java (登録商標)提供各種 API503や各種車載 API507をコールする事によ つて実現する。
[0134] ステップ S1209にて外部アクセス制御手段 508の有効状態判定手段 510は、ステップ S1208で取得した状態を元に、付与アクセス権限にて指定されている有効状態 605が 満たされて 、るかどうかの検証を行う。
[0135] ステップ S1210にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ステップ S1209にて有効状態 605が満たされているかどうかを判定した結果から、有効 な状態と判断された場合は、ステップ S1213に進み、アクセス権限有として処理を終 了する。無効な状態と判断された場合は、次の付与アクセス権限との比較処理に進 むため、ステップ S1211に進む。
[0136] ステップ S1211にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ループカウンタ Dの値を 1だけインクリメントする。
[0137] ステップ S1212にて外部アクセス制御手段 508のアクセス権限一覧保持手段 511は、 ループカウンタ Dと付与アクセス権限の個数 Mを比較する。もし、 D<Mの場合は、未 検証の付与アクセス権限があるため、ステップ S1204の処理に戻る。 D≥Mの場合は、 全ての付与アクセス権限の検証が終了し、かつ、有効となる付与アクセス権限が見つ 力もな力つた事になるため、ステップ S1214に進み、アクセス権限無として処理を終了 する。
[0138] 次に、図 11のステップ S1105の処理の続きに関して、説明を再開する。
[0139] ステップ S1116にて Java (登録商標)提供アクセス制御コントローラ 504は、ステップ
S1105の結果としてアクセス権限有と判定された力どうかを検証する。もし、アクセス権 限有と判定された場合は、ステップ S1107の処理に進む。アクセス権限無と判定され た場合は、ステップ S1110に進み、アクセス権限無として処理を終了する。
[0140] ステップ S1107にて Java (登録商標)提供アクセス制御コントローラ 504は、ループカウ ンタ Cを 1だけインクリメントする。
[0141] ステップ S1108にて Java (登録商標)提供アクセス制御コントローラ 504は、ループカウ ンタ Cと検証対象ドメイン一覧の個数 Nを比較する。もし、 C< Nの場合は、未検証の 検証対象ドメインがあるため、ステップ S1104の処理に戻る。 C≥Nの場合は、全ての 検証対象ドメインの検証が終了し、かつ、全ての検証対象ドメインでアクセス権限有と 判定された事になるので、ステップ S1109に進み、アクセス権限有として処理を終了 する。
[0142] 以上の図 11と図 12に示した手順により、 Java (登録商標)アクセス制御コントローラ 504と外部アクセス制御手段 508が連携して、アクセス権限の認証を行う。
[0143] また、外部アクセス制御手段登録手段 512を起動するためには、図 7に示すような Java (登録商標)実行環境 502にて標準で用意されているセキュリティプロパティフアイ ル 505のポリシープロバイダ設定値 702を変更するだけで良い。そのため、既存の Java (登録商標)実行環境 502のプログラム改修を行うことなぐ外部アクセス制御手段 登録手段 512を起動して、独自のアクセス権限認証処理を行う外部アクセス制御手段 508の処理を追加する事が可能となる。
[0144] また、アクセス権限管理テーブル 506では、標準的な Java (登録商標)実行環境 502 で提供されるアクセス権限管理テーブル 506で指定可能な権限付与対象 601と付与 アクセス権限情報 602とリソース指定情報 603と操作内容情報 604に加え、車両システ ム 101の状態がどの様な状態にある時に、その付与アクセス権限が有効となるかを示 す有効状態 605を記述する事ができる。そのため、車の状態に応じて有効となるァク セス権限を指定する事ができる。
[0145] また、アクセス権限管理テーブル 506には、有効状態 605として「常に有効」を指定 する事が可能であるため、車の状態に依存せずに有効となるアクセス権限を利用す る事ちでさる。
[0146] また、アクセス権限一覧保持手段 511では、 Java (登録商標)アクセス制御コントロー ラ 504がアクセス権限認証を行う際に処理の委譲を受けるが、そこでアクセス権限判 定手段 509と有効状態判定手段 510を用いる事により、付与アクセス権限情報 602とリ ソース指定情報 603と操作内容情報 604に基づくアクセス権限判定に加え、車の状態 を取得して有効状態 605を満たすかどうかの判定も行う。これにより、アプリケーション 501に対して車の状態に応じて有効となるアクセス権限を付与した場合においても、 その付与アクセス権限が有効な状態にあるかどうかを正しく判断する事ができ、アプリ ケーシヨン 501のアクセス権限を正しく認証する事ができる。
[0147] また、 Java (登録商標)仕様では、アプリケーション開発者が自由にアクセス権限を追 加出来るという特徴がある。本発明では、 Java (登録商標)標準で用意されているァク セス権限管理テーブル 506を拡張して有効状態 605を追加できるように実現したため 、 OSが提供するアクセス権限だけでなぐアプリケーション開発者が追加したアクセス 権限に対しても、車の状態に応じて有効となるアクセス権限として指定する事ができ る。
[0148] また、車両システム 101にお ヽては、車に新 ヽ車載機器を追加で接続した場合な ど、製品出荷後に各種車載 API507を追加 Z削除 Z変更するケースが考えられる。そ して、この各種車載 API507を利用するための付与アクセス権限情報 602やリソース指 定情報 603や操作内容情報 604が、アクセス権限管理テーブル 506に追加される場合 がある。外部アクセス制御手段 508では、それらの付与アクセス権限情報 602やリソー ス指定情報 603や操作内容情報 604の比較処理を、付与アクセス権限に備え付けら れた比較処理に委譲する。そのため、製品出荷後に新しい付与アクセス権限情報 602が追加された場合にも、外部アクセス制御手段 508を修正することなぐ新しいァ クセス権限に対応する事ができる。
[0149] なお、本実施例では、アクセス権限認証の際に外部アクセス制御手段 508が実行さ れる様にするために、外部アクセス制御手段登録手段 512を提供する形態を示した。 しかし、 Java (登録商標)提供アクセス制御コントローラ 504のソースが改修可能なケー スにおいては、アクセス権限一覧保持手段 511を呼び出す処理を、直接に Java (登録 商標)提供アクセス制御コントローラ 504のソースに追記する事も可能である。
[0150] この場合、図 5で示した機能構成は、図 13に示したようになる。具体的には、外部 アクセス制御手段登録手段 512が不要となる。
[0151] また、アプリケーション 501起動の処理に関しても、外部アクセス制御手段登録手段 512の介在が不要となる。具体的には、図 12で示したポリシープロバイダ設定値 702 は Java (登録商標)実行環境 502の初期設定値のままとする。さらに、図 8で示した処理 フローは図 14に示したように、 Java (登録商標)実行環境 502が外部アクセス制御手段 登録手段 512を呼び出すことなぐ直接にアクセス権限管理テーブル 506を読み込む 。さらに、図 9で示した処理フローは図 15に示したように、 Java (登録商標)実行環境 502が直接に外部アクセス制御手段 508のアクセス権限一覧保持手段 511を生成して 、ドメインが生成される。
また、図 10、図 11、図 12に示した処理の流れは基本的に同一である。
[0152] また、図 8で示した処理フローは、図 16に示したように、外部アクセス制御手段登録 手段 512からアクセス権限管理テーブル 506へ直接アクセス権限管理テーブル読込 み要求を送ってもよい。この場合、図 9で示した処理フローは、図 17に示したように、 Java (登録商標)実行環境 502における付与アクセス権限一覧取得の動作が不要とな る。
また、図 10、図 11、図 12に示した処理の流れは基本的に同一である。
[0153] また、外部アクセス制御手段 508のアクセス権限一覧保持手段 511の処理を、 Java( 登録商標)実行環境 502が提供する Java (登録商標)提供アクセス制御コントローラ 504 へ完全に統合してしまっても構わな 、。
[0154] また、本実施例では、外部アクセス制御手段登録手段 512をポリシープロバイダクラ スの仕様を満たす形で実装して、 Java (登録商標)提供アクセス制御コントローラ 504に 対して外部アクセス制御手段 508を登録する方法を示した。しかし、外部アクセス制 御手段登録手段 512の実装例はポリシープロバイダクラスに限定されるものではなぐ セキュリティマネージャ等、他の実装例として提供しても良い。
[0155] また、本実施例では、アプリケーションプログラムの実行環境として Java (登録商標) 実行環境 502を利用する事を想定し、その Java (登録商標)実行環境 502で最適となる 実施の形態を示した。しかし、本発明は、 Java (登録商標)実行環境 502への適用に限 定されるものではなぐ例えば Windows (登録商標)や MacOS (登録商標)や Linux (登録 商標)や Symbian (登録商標)等、他のアプリケーション実行環境に対しても適用する事 が可能である。
[0156] また、本実施例では、外部アクセス制御手段 508がアクセス制御のために用いる外 部アクセス権限管理テーブルを、 Java (登録商標)実行環境が提供するアクセス権限 管理テーブル 506に統合した場合に関して説明を行った。しかし、外部アクセス制御 手段 508が用いる外部アクセス権限管理テーブルは、 Java (登録商標)実行環境 502が 提供するアクセス権限管理テーブル 506と同一ファイルにする必要はなぐ個別にフ アイルを保持して管理しても良 、。
[0157] また、本実施例では、本発明のアクセス制御の適用機器を車載 PC111にして説明 を行った力 適用先は車載 PC111に限定されるものではなぐ例えばホームサーバや 携帯電話等、有線や無線を通して様々なデバイスと接続するような機器に適用する 事ができる。
[0158] また、図 12で示した処理フローのステップ S1202では、アクセス権限管理テーブル 506に有効状態が指定されて 、るかどうかにかかわらず、全ての付与アクセス権限を 取得して、ステップ S1203からステップ S1212にて処理を行っていた。これを、始めに 有効状態 605が設定されてない付与アクセス権限の取得と検証を行い、次に有効状 態 605が設定されて 、る付与アクセス権限の取得と検証を行うなど、 2ステップに分け て行っても構わない。
[0159] 実施例 2.
上記実施例 1では、外部アクセス制御手段 508に実装した有効状態判定手段 510に て、車載 PC111や車両システム 101の状態が有効な状態にあるかどうかの検証を行う 場合について説明した。
[0160] 本実施例 2では、さらに加えて、外部アクセス制御手段 508の有効状態判定手段
510のプログラムをカスタマイズすることなぐ簡単に有効状態 605として設定出来る条 件を追カ卩出来る仕組みを提供する場合について説明する。図 18は、本実施例 2〖こ おける Java (登録商標)実行環境 502の機能構成を示した説明図である。
[0161] アプリケーション 501、 Java (登録商標)実行環境 502、 Java (登録商標)提供各種
API503、 Java (登録商標)提供アクセス制御コントローラ 504、セキュリティプロパティフ アイル 505、アクセス権限管理テーブル 506、各種車載 API507、外部アクセス制御手 段登録手段 512、各種車両システムリソース 513に関しては、実施例 1で示したものと 同一であるので、説明は省略する。
[0162] 外部アクセス制御手段 508は、車載 PC 111や車両システム 101に搭載された各種車 載機器の状態に応じて有効となる付与アクセス権限の判定を行う機能である。これは 、あら力じめ車載 PC111の記憶装置 112に格納されている Java (登録商標)プログラム であって、車載 PC111上の Java (登録商標)実行環境 502と組み合わせて動作させる。 この外部アクセス制御手段 508の構成要素として、アクセス権限判定手段 509とァクセ ス権限一覧保持手段 511と状態検証手段呼出手段 1801がある。
[0163] アクセス権限判定手段 509は、実施例 1で示したものと同様であって、アクセス権限 管理テーブル 509に記載された付与アクセス権限の情報を元に、アプリケーション 501 力 ^ava (登録商標)提供各種 API503や各種車載 API507を実行する利用アクセス権限 を保持しているかどうかを判定するための機能である。
[0164] アクセス権限一覧保持手段 511は、実施例 1で示したものと同様であって、 Java (登 録商標)提供アクセス制御コントローラ 504がアクセス権限管理テーブル 506から読み 込んだ付与アクセス権限を保持するための機能、及び、アプリケーション 501に与える 付与アクセス権限一覧を抽出した時に、その付与アクセス権限一覧を保持する機能 である。さらに、外部力も利用アクセス権限を受け取り、その利用アクセス権限が内部 で保持して ヽる付与アクセス権限一覧に含まれるかどうかを認証する機能も持つ。た だし、外部アクセス制御手段 508に含まれるアクセス権限判定手段 509と状態検証手 段呼出手段 1801を用いる点が、実施例 1とは異なる。 [0165] 状態検証手段呼出手段 1801は、アクセス権限管理テーブル 506に記載された有効 状態 605を元に、状態検証手段管理手段 1802から状態検証手段 1805の一式を取得 する。そして、取得した状態検証手段 1805の一式を利用して、アクセス権限判定手段 509にて有効と判定された付与アクセス権限に対して、車載 PC111や車両システム 101に搭載された各種車載機器の状態が、付与アクセス権限に割り当てられた有効 状態 605にあるかどうかを判定するための手段である。
[0166] 状態検証手段管理手段 1802は、実施例 2にて新しく導入した手段で、アクセス権限 管理テーブル 506に設定された有効状態 605が成り立つ力どうかを検証するための状 態検証手段 1805を管理し、外部アクセス制御手段 508からの要求に応じて動的に状 態検証手段 1805を読み込むための機能である。これは、あら力じめ車載 PC111の記 憶装置 112に格納されて 、る Java (登録商標)プログラムであって、車載 PCI 11上の Java (登録商標)実行環境 502と、外部アクセス制御手段 508と組み合わせて動作させ る。この状態検証手段管理手段 1802の構成要素として、状態検証手段読込み手段 1803と状態検証手段管理テーブル 1804がある。
[0167] 状態検証手段読込み手段 1803は、外部アクセス制御手段 508からの要求に応じて 、状態検証手段 1805を 1個以上、動的に読み込むための機能を提供する。また、状 態検証手段 1805が備えるべき抽象メソッドを定めたクラスもしくはインターフェースも 提供する。
[0168] 状態検証手段管理テーブル 1804は、アクセス権限管理テーブル 506に記載された 有効状態 605と、その有効状態 605が成り立つかどうかを検証するための状態検証手 段 1805の対応を管理するためのテーブルである。
[0169] 状態検証手段 1805は、車載 PC111および車両システム 101の状態力 付与アクセス 権限が有効となる状態にあるかどうかを検証するための手段の集合である。これは、 あら力じめ車載 PC111の記憶装置 112に格納されている Java (登録商標)プログラムや 、ネットワークを経由して保守サーバ 104や監視サーノ 105等力 ダウンロードした Java (登録商標)プログラムであって、車載 PCI 11上の Java (登録商標)実行環境 502上 で外部アクセス制御手段 508と状態検証手段管理手段 1802と組み合わせて動作させ る。これは、 Java (登録商標)で記述されたプログラムをコンパイルした複数のクラスの 集合であって、通常のクラスのままで提供される場合もあるが、 Java (登録商標)仕様で 定められた Jarファイルとして提供される場合や、 OSGiで定められたフレームワークや バンドルやサービスの形態で提供される事もある。
[0170] 更に、状態検証手段 1805は、車載 PC111の組立後に、追加 Z削除 Z変更される場 合がある。例えば、車載 PC111に新しい Java (登録商標)プログラムを追加 Z削除 Z変 更した際に、そのプログラムを動作させるために新 、有効状態 605も合わせて追カロ する必要がある場合、状態検証手段 1805が追加 Z削除 Z変更される事がある。
[0171] また、 Java (登録商標)プログラムの追加インストールを行わな 、時でも、法改正など に伴ってアクセス権限を有効とする条件が変更される場合は、状態検証手段 1805が 追加 Z削除 Z変更される場合がある。そのため、車載 PC111によっては、状態検証 手段 1805が存在しな!ヽケースもある。
[0172] 図 19は、状態検証手段管理テーブル 1804の構成を示した説明図である。
[0173] 有効状態名 1901は、アクセス権限管理テーブル 506に記載された有効状態 605と対 応が取れる値を記載するもので、最も簡単なケースでは、有効状態 605と同一の値を 指定する。本要素は、有効状態 605にあるかどうかを検証するための状態検証手段 1805—式との対応を取るために用いる。例えば、「ALWAYS (状態に依存せずに常に )」や、「Load丄 essThan50 (CPU負荷率力 0%以下)」や、「Door.lock (ドアロックが施錠 中)」や、「Meter.0 (車が停車中)」等の、車載 PC 111や各種車載機器がどの様な状態 にある事をチェックするかが分かりやす 、値を指定する事が好まし 、。
[0174] 状態検証手段名 1902は、有効状態 605にあるかどうかを検証するための状態検証 手段 1805を特定するために用いる値である。例えば、状態検証手段名 1902として、 状態検証手段 1805を実装したクラス名を記載する等である。この状態検証手段名 1902は、有効状態名 1901毎に複数個併記する事ができる。例えば、停車中かどうか を検証するための状態検証手段名 1902として「jp.co.melco.Stop」を指定したり、昼間 かどうかを検証するための状態検証手段名 1902として「jp.co.melco.Daytime」を同時 に指定する事ができる。
[0175] パラメータ 1903は、状態検証手段名 1902に記載された状態検証手段 1805の初期 化の時、もしくは、初期化の後に設定するパラメータである。このパラメータ 1903は、 状態検証手段名 1902に記載した状態検証手段 1805毎に異なる値を指定する事がで き、省略する事も可能である。例えば、状態検証手段名 1902に CPU負荷率が一定値 以下にある事を検証するための状態検証手段名 1902として「
jp.co.melco.CPULoadAverageJを指定した場合、このパラメータとして「0.5」を指定す る事がでさる。
[0176] 次に、本実施例におけるアクセス制御の流れについて説明する。
[0177] 始めに、 Java (登録商標)実行環境 502が起動された時に、本発明のアクセス制御方 式が外部アクセス制御手段 508を Java (登録商標)実行環境 502に対して登録する場 合の動作に関しては、上記実施例 1で示した図 8、図 9と同様であるため、説明を省 略する。
[0178] 次に、 Java (登録商標)実行環境 502上で動作するアプリケーション 501が、 Java (登録 商標)提供各種 API503や各種車載 API507をコールした時に、車の状態に応じてァク セス制御を行う場合の動作のうち、アプリケーション 501から Java (登録商標)提供ァク セス制御コントローラ 504の処理に関しては、上記実施例 1で示した図 10、図 11の処 理の流れと同様であるので、説明は省略する。
[0179] なお、図 20で示した処理フローは、 Java (登録商標)提供アクセス制御コントローラ 504から呼び出された外部アクセス制御手段 508の処理である。この処理フロー以降 は、実施例 1で示した図 12の処理フローから若干の変更がなされるため、以下で相 違点を中心に説明する。
[0180] 始めに、ステップ S2001からステップ S2007までの処理は、実施例 1の図 12で示した ステップ S1201から S1207までの処理と同一であるため、説明は省略する。
[0181] ステップ S2008にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、付 与アクセス権限に設定された有効状態 605を取り出し、状態検証手段管理手段 1802 の状態検証手段読み込み手段 1803に対して状態検証手段 1805—式の読み込みを 依頼する。この処理の詳細に関しては、図 21を用いて後述する。
[0182] ステップ S2009にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ス テツプ S2008にて取得した状態検証手段 1805—式を用いて、車載 PC111や車両シス テム 101の状態力 付与アクセス権限が有効となる状態にあるかどうかの検証を行う。 この処理の詳細に関しては、図 22と図 23を用いて後述する。
[0183] ステップ S2010からステップ S2014までの処理に関しては、実施例 1で示した図 12の ステップ S 1210からステップ S 1214までと同様であるため、説明は省略する。
[0184] 図 21は、付与アクセス権限が有効となる有効状態 605を元に、その有効状態 605が 成り立つかどうかを検証するための状態検証手段 1805—式を読み込む場合の処理 フローである。
[0185] 始めに、ステップ S2101にて状態検証手段読込み手段 1803は、どの状態検証手段 1805—式を生成するかと 、う情報として、外部アクセス制御手段 508の状態検証手段 呼出手段 1801から有効状態 605を受け取って処理を開始する。
[0186] ステップ S2102にて状態検証手段読込み手段 2003は、状態検証手段管理テーブル 1804をファイル力も読み込んだかどうかを確認する。もし、既に読み込んでいる場合 は、ステップ S2104の処理にジャンプする。読み込んでいない場合は、ステップ S2103 の処理に進む。
[0187] ステップ S2103にて状態検証手段読込み手段 1803は、状態検証手段管理テーブル 1804を読み込み、中に記載された情報を解釈し、状態検証手段読み込み手段 1803 の内部に保存する。
[0188] ステップ S2104にて状態検証手段読込み手段 1803は、状態検証手段読み込み手 段 1803の内部に格納されている状態検証手段管理テーブル 1804のコピーから、状 態検証手段管理テーブル 1804の有効状態名 1901と、ステップ S2101にて受け取った 有効状態 605が合致するエントリを検索して取得する。
[0189] ステップ S2105にて状態検証手段読込み手段 1803は、ステップ S2104の処理にて該 当するエントリが見つけられたかどうかを判定する。該当エントリが見つ力つた場合は
、ステップ S2106の処理に進む。該当エントリが見つ力もなかった場合は、ステップ
S2114に進み、処理失敗として処理を終了する。
[0190] ステップ S2106にて状態検証手段読込み手段 1803は、ステップ S2104で取得したェ ントリの中から、設定されている状態検証手段名 1902の数を取得する。なお、状態検 証手段名 1902とパラメータ 1903には、 0から L-1までの番号を割り振る。
[0191] ステップ S2107にて状態検証手段読込み手段 1803は、ループカウンタ Eを 0に設定 する。
[0192] ステップ S2108にて状態検証手段読込み手段 1803は、ステップ S2106で番号付けし た状態検証手段名 1902の中から、 E番目の状態検証手段名 1902を取得する。また、 その状態検証手段名 1902に対応する E番目のパラメータ 1903も取得する。
[0193] ステップ S2109にて状態検証手段読込み手段 1803は、 Java (登録商標)実行環境 502 にて読み込み可能なクラスの中から、ステップ S2108で取得した状態検証手段名 1902 に対応する状態検証手段 1805を検索して読み込みを行う。この時、読み込んだ状態 検証手段 1805に対して、ステップ S2108にて取得したパラメータ 1903を設定する。
[0194] ステップ S2110にて状態検証手段読込み手段 1803は、ステップ S2109にて状態検証 手段 1805の読み込みに成功した力どうかを判定する。読み込みに成功した場合は、 ステップ S2111の処理に進む。読み込みに失敗した場合は、ステップ S2114の処理に 進み、処理失敗として処理を終了する。
[0195] ステップ S2111にて状態検証手段読込み手段 1803は、ループカウンタ Eを 1だけイン クリメン卜する。
[0196] ステップ S2112にて状態検証手段読込み手段 1803は、ループカウンタ Eと状態検証 手段名 1902の個数 Lを比較する。もし、 E< Lの場合は、読み込みが完了していない 状態検証手段 1805があるため、ステップ S2108の処理に戻る。 E≥Lの場合は、全て の状態検証手段 1805の読み込みが終了した事になるので、ステップ S2113に進み、 状態検証手段 1805—式を返却して処理を終了する。
[0197] 以上の流れにて、付与アクセス権限が有効となる有効状態 605を元に、車載 PC111 や車両システム 101において付与アクセス権限が有効となる状態にあるかどうかを検 証するための状態検証手段 1805—式を読み込む事ができる。
[0198] 次に、図 22と図 23を用いて、状態検証手段 1805—式を用いて、車載 PC111や車 両システム 101において付与アクセス権限が有効となる状態にあるかどうかを検証す るための処理フローについて説明する。
[0199] 始めに、ステップ S2201にて外部アクセス制御手段 508の状態検証手段呼出手段
1801は、図 21で示した処理を実行した結果として受け取った状態検証手段 1805— 式を入力として、処理を開始する。 [0200] ステップ S2202にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ス テツプ S2201にて受け取った状態検証手段 1805—式に含まれる状態検証手段 1805 の個数 Lを算出する。同時に、状態検証手段 1805に 0から L-1までの番号を割り振る。
[0201] ステップ S2203にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ル ープカウンタ Fの値を 0に設定する。
[0202] ステップ S2204にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ス テツプ S2202にて番号を割り当てた状態検証手段 1805から、 F番目の状態検証手段 1805を取得する。
[0203] ステップ S2205にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ス テツプ S2204にて取得した状態検証手段 1805の状態確認メソッドを呼び出して、車載 PC111や車両システム 101において付与アクセス権限が有効となる状態にあるかどう かを検証する。
[0204] ここで、図 22の処理の流れに関して一時説明を中断して、図 23を用いてステップ
S2205にて行われる処理の詳細に関して説明する。
[0205] 図 23の処理は、状態検証手段 1805において、状態確認メソッドがコールされた時 に行われる処理の流れである。
[0206] 始めに、ステップ S2301にて状態検証手段 1805は、外部アクセス制御手段 508の状 態検証手段呼出手段 1801からのメソッドコールによって、処理を開始する。
[0207] ステップ S2302にて状態検証手段 1805は、車載 PC 111や車両システム 101の状態情 報のうち、付与アクセス権限が有効となる状態にあるかどうかを検証するために必要 な状態情報を取得する。この状態情報は、 Java (登録商標)実行環境 502に実装され た Java (登録商標)提供各種 API503や、各種車載 API507をコールする事によって取得 する。
[0208] ステップ S2303にて状態検証手段 1805は、図 21のステップ S2119にて状態検証手 段 1805に設定されたパラメータと、ステップ S2302にて取得した状態情報を元に、車 載 PC111や車両システム 101において付与アクセス権限が有効となる状態にあるかど うかを検証する。
[0209] ステップ S2304にて状態検証手段 1805は、ステップ S2303を実行した結果、アクセス 権限が有効となる状態にあるかどうかをチェックする。アクセス権限が有効となる状態 にある場合、ステップ S2305に進み、有効な状態として処理を終了する。アクセス権限 が有効とならない状態にある場合、ステップ S2306に進み、無効な状態として処理を 終了する。
[0210] 次に、図 22のステップ S2205の処理の続きに関して、説明を再開する。
[0211] ステップ S2206にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ス テツプ S2205にて状態検証手段 1805を呼び出した結果をチェックする。処理の結果が 有効な状態となった場合は、有効状態 605で指定された条件の一つを満たして 、る ため、ステップ S2207に進んで別の状態検証手段 1805を利用した検証に進む。無効 な状態と判断された場合は、ステップ S2210に進んで、無効な状態として処理を終了 する。
[0212] ステップ S2207にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ル ープカウンタ Fの値を 1だけインクリメントする。
[0213] ステップ S2208にて外部アクセス制御手段 508の状態検証手段呼出手段 1801は、ル ープカウンタ Fと状態検証手段 1805の個数 Lを比較する。もし、 F< Lの場合は、検証 が完了していない状態検証手段 1805があるため、ステップ S2204の処理に戻る。 F≥ Lの場合は、全ての状態検証手段 1805を用いた状態確認処理が終了した事になるの で、ステップ S2209に進み、有効状態の確認結果として有効な状態という処理結果に て処理を終了する。
[0214] 以上のように、アクセス権限が有効状態にあるかどうかを検証するための状態検証 手段 1805を外部アクセス制御手段 508と独立に実装し、状態検証手段管理手段 1802 を用いて必要に応じて動的に読み込みできるような仕^ aみとする事により、外部ァク セス制御手段 508を有効状態 605の判定処理とは独立に実装する事ができる。そのた め、外部アクセス制御手段 508のプログラムを改修することなぐ監視会社やサービス 会社のサービスの要件に応じて、独自の有効状態 605を設定する事が可能となる。例 えば、車載 PC 111に事前にインストールされて ヽる Java (登録商標)実行環境 502と本 発明のアクセス制御方式では「車が停車中」という条件のみ設定可能であった時、車 載 PC111のソフトウェアを改修することなぐ新たに「一般道走行中」や「ドアロック中」 等の条件を、サービス会社やユーザ自身によって容易に追加可能となる。
[0215] なお、本実施例では、アクセス権限認証の際に外部アクセス制御手段 508が実行さ れる様にするために、外部アクセス制御手段登録手段 512を提供する形態を示した。 しかし、 Java (登録商標)提供アクセス制御コントローラ 504のソースが改修可能なケー スにおいては、アクセス権限一覧保持手段 511を呼び出す処理を、直接に Java (登録 商標)提供アクセス制御コントローラ 504のソースに追記する事も可能である。機能構 成や処理の流れの修正は、実施例 1で示した場合と同様のため、ここでは省略する。
[0216] また、本実施例では、外部アクセス制御手段登録手段 512をポリシープロバイダクラ スの仕様を満たす形で実装して、 Java (登録商標)提供アクセス制御コントローラ 504に 対して外部アクセス制御手段 508を登録する方法を示した。しかし、外部アクセス制 御手段登録手段 512の実装形態はポリシープロバイダクラスに限定されるものではな ぐセキュリティマネージャ等、他の実装形態として提供しても良い。
[0217] また、本実施例では、アプリケーションプログラムの実行環境として Java (登録商標) 実行環境 502を利用する事を想定し、その Java (登録商標)実行環境 502で最適となる 実施例を示した。しかし、本発明は、 Java (登録商標)実行環境 502への適用に限定さ れるものではなく、例えば Windows (登録商標)や MacOS (登録商標)や Linux (登録商標 )や Symbian (登録商標)等、他のアプリケーション実行環境に対しても適用する事が可 能である。
[0218] また、本実施例では、外部アクセス制御手段 508がアクセス制御のために用いる外 部アクセス権限管理テーブルを、 Java (登録商標)実行環境 502が提供するアクセス権 限管理テーブル 506に統合した場合に関して説明を行った。しかし、外部アクセス制 御手段 508が用いる外部アクセス権限管理テーブルは、 Java (登録商標)実行環境 502 が提供するアクセス権限管理テーブル 506と同一ファイルにする必要はなぐ個別に ファイルを保持して管理しても良 、。
[0219] また、本実施例では、本発明のアクセス制御の適用機器を車載 PC111にして説明 を行った力 適用先は車載 PC111に限定されるものではなぐ例えばホームサーバや 携帯電話等、有線や無線を通して様々なデバイスと接続するような機器に適用する 事ができる。 [0220] また、図 20で示した処理フローのステップ S2002では、アクセス権限管理テーブル 506に有効状態 605が指定されて 、るかどうかにかかわらず、全ての付与アクセス権 限を取得して、ステップ S2003からステップ S2012にて処理を行っていた。これを、始め に有効状態 605が設定されてな 、付与アクセス権限の取得と検証を行!、、次に有効 状態 605が設定されて 、る付与アクセス権限の取得と検証を行うなど、 2ステップに分 けて行っても構わない。
[0221] また、本実施例では、状態検証手段 1805に関する情報を、状態検証手段管理テー ブル 1804に有効状態名 1901を関連づけて格納する方式とした。しかし、状態検証手 段 1805に関する情報を、直接にアクセス権限管理テーブル 506の有効状態 605に記 述しても良い。
[0222] また、本実施例では、図 21に示したように、状態検証手段管理テーブル 1804の読 み込み処理を、初めて状態検証手段管理手段 1803が利用される時とした。しかし、こ の処理は、初めて状態検証手段管理手段 1803が利用されるより前であればいつでも 良ぐ例えば、 Java (登録商標)実行環境 502が起動した時に実施しても良い。
[0223] また、本実施例では、状態検証手段呼出手段 1801は、状態検証手段読込み手段 1803を用いて状態検証手段 1805の読み込みを行う様にした力 あら力じめ状態検証 手段 1805が分力つているものに関しては、状態検証手段読込み手段 1803を用いず に状態検証手段 1805を取得しても構わな 、。
[0224] 実施例 3.
上記実施例では、車載 PC111や車両システム 101の状態に応じてアクセス制御を行 う場合について説明したが、本実施例ではアプリケーションが何回もしくは何秒間隔 でアクセス権限を利用しょうとしたかに応じてアクセス制御を行う場合について説明 する。
[0225] 本実施例 3では、実施例 2に加えて、 Java (登録商標)提供各種 API503や各種車載 API507を実行する際にアクセス権限を行使するが、その行使回数や行使間隔に応じ てアクセス制御を行う場合について説明する。図 24は、本実施例 3における Java (登 録商標)実行環境 502の構成を示した説明図である。
[0226] アプリケーション 501、 Java (登録商標)実行環境 502、 Java (登録商標)提供各種 API503、 Java (登録商標)提供アクセス制御コントローラ 504、セキュリティプロパティフ アイル 505、アクセス権限管理テーブル 506、各種車載 API507、外部アクセス制御手 段 508、アクセス権限判定手段 509、アクセス権限一覧保持手段 511、外部アクセス制 御手段登録手段 512、各種車両システムリソース 513、状態検証手段呼出手段 1801、 状態検証手段管理手段 1802、状態検証手段読込み手段 1803、状態検証手段管理 テーブル 1804、状態検証手段 1805に関しては、実施例 1及び実施例 2で示したもの と同一であるので、説明は省略する。
[0227] アクセス権限行使状況管理手段 2401は、 Java (登録商標)提供各種 API503や各種 車載 API507をコールした時に行使した付与アクセス権限に関して記憶する手段であ る。内部に、記憶するテーブルとして権限行使状況管理テーブル 2402を持つ。
[0228] 権限行使状況管理テーブル 2402は、 Java (登録商標)提供各種 API503や各種車載 API507をコールした時に行使した付与アクセス権限に関して、最後に行使した時刻 と、今まで行使した回数等の情報を格納するテーブルである。
[0229] 次に、図 25を用いて、アクセス権限行使状況管理テーブル 2402の構成について説 明する。
[0230] コードソース 2501は、付与アクセス権限を行使した Java (登録商標)プログラムに関す る情報を格納するエントリである。実施例 1の図 9のステップ S902にて生成した、実行 している Java (登録商標)プログラムの属性であるコードソースを格納する。
[0231] アクセス権限情報 2502は、コードソース 2501にて表される Java (登録商標)プログラム が行使した付与アクセス権限に関する情報を格納するエントリである。実施例 1の図 6 のアクセス権限管理テーブル 506に格納されている付与アクセス権限情報 602を格納 する。
[0232] 最終行使時刻 2503は、コードソース 2501で表される Java (登録商標)プログラムが、ァ クセス権限情報 2502で表される付与アクセス権限を、最後に行使した時刻を管理す るエントリである。
[0233] 行使回数は、コードソース 2501で表される Java (登録商標)プログラム力 アクセス権 限情報情報 2502で表される付与アクセス権限を、今までに何回行使したかを管理す るエントリである。 [0234] 次に、本実施例におけるアクセス制御の流れについて説明する。
[0235] 始めに、 Java (登録商標)実行環境 502が起動された時に、本発明のアクセス制御方 法が外部アクセス制御手段 508を Java (登録商標)実行環境 502に対して登録する場 合の動作に関しては、実施例 1で示した図 8、図 9と同様であるため、説明を省略する 。ただし、図 9のステップ S907にてアクセス権限一覧保持手段 511作成のために、パラ メータとして付与アクセス権限一覧にカ卩えてコードソースも与える点が異なる。
[0236] 次に、 Java (登録商標)実行環境 502上で動作するアプリケーション 501が、 Java (登録 商標)提供各種 API503や各種車載 API507をコールした時に、車の状態に応じてァク セス制御を行う場合の動作のうち、アプリケーション 501から Java (登録商標)提供ァク セス制御コントローラ 504までの処理に関しては、実施例 1で示した図 10の処理の流 れと同様であるので、説明は省略する。
[0237] 図 26で示した処理フローは、 Java (登録商標)提供アクセス制御コントローラ 504の処 理である。この処理フロー以降は、実施例 1で示した図 11の処理フロー力 若干の 変更がなされるため、以下で相違点を中心に説明する。
[0238] 始めに、図 10のステップ S1004の処理が開始されると、図 26のステップ S2601が呼 び出される。
[0239] ステップ S2601からステップ S2608までの処理は、図 11のステップ S1101から S1108ま での処理と同様であるため、説明は省略する。ただし、ステップ S2605の内部で図 20 の処理が呼ばれ、さらに図 20のステップ S2009の中で図 22の処理が呼ばれる力 こ の図 22のステップ S2205にて、状態検証手段 1805が付与アクセス権限の行使回数や 間隔の確認を行うクラスであった場合に、状態検証手段 1805にパラメータとして付与 アクセス権限とコードソースを与える点が異なる。
[0240] ステップ S2609にて Java (登録商標)提供アクセス制御コントローラ 504は、ステップ
S2605で処理を行った全てのドメインに関して、アクセス権限行使状況管理手段 2401 に対して権限行使状況管理テーブル 2402の更新を要求する。
[0241] ステップ S2610にて Java (登録商標)提供アクセス制御コントローラ 504は、アクセス権 限認証処理の結果、アクセス権限有として処理を終了する。
[0242] 以上により、 Java (登録商標)提供アクセス制御コントローラ 504において、アクセス権 限認証の処理が完了する。
[0243] 次に、図 27は、有効状態にあるかどうかの検証を行う状態検証手段 1805において 、付与アクセス権限の行使回数もしくは行使間隔の検証を行う場合の処理フローで ある。
[0244] 始めに、ステップ S2701にて状態検証手段 1805は、外部アクセス制御手段 508の状 態検証手段呼出手段 1801からの要求により、有効状態の確認処理を開始する。この 時、入力としてコードソースと付与アクセス権限を受け取る。
[0245] ステップ S2702にて状態検証手段 1805は、アクセス権限行使状況管理手段 2401に 対して、付与アクセス権限の最終行使時刻 2503もしくは行使回数 2504の取得を要求 する。
[0246] ここで、図 27の処理の流れに関して一時説明を中断して、図 28を用いてステップ
S2502にて行われる処理の詳細に関して説明する。
[0247] 図 28の処理は、アクセス権限行使状況管理手段 2401にお 、て、付与アクセス権限 の最終行使時刻 2503もしくは行使回数 2504を取得する際の処理の流れである。
[0248] 始めに、ステップ S2801にてアクセス権限行使状況管理手段 2401は、状態検証手 段 1805から入力としてコードソースと付与アクセス権限の対を受け取り、処理を開始 する。
[0249] ステップ S2802にてアクセス権限行使状況管理手段 2401は、権限行使状況管理テ 一ブル 2402からコードソース 2501がー致する行エレメントの検索を行う。
[0250] ステップ S2803にてアクセス権限行使状況管理手段 2401は、ステップ S2802の処理 の結果、コードソースが一致する行エレメントが見つ力つたかどうかの判定を行う。判 定の結果、見つ力つた場合はステップ S2804の処理に進む。見つからなかった場合 は S2808に進み、未行使として処理を終了する。
[0251] ステップ S2804にてアクセス権限行使状況管理手段 2401は、ステップ S2802にて検 索したコードソース 2501がー致する行エレメントから、更に、行エレメントのアクセス権 限情報 2502力 付与アクセス権限の付与アクセス権限情報 602と一致する行エレメン トの検索を行う。
[0252] ステップ S2805にてアクセス権限行使状況管理手段 2401は、ステップ S2804の処理 の結果、コードソース 2501とアクセス権限情報 2502がー致する行エレメントが見つか つたかどうかの判定を行う。判定の結果、見つ力つた場合はステップ S2806の処理に 進む。見つ力もな力つた場合は S2808に進み、未行使として処理を終了する。
[0253] ステップ S2806にてアクセス権限行使状況管理手段 2401は、ステップ S2805で検索 した行エレメントから、付与アクセス権限の最終行使時刻 2503と行使回数 2504を取得 する。
[0254] ステップ S2807にてアクセス権限行使状況管理手段 2401は、ステップ S2806にて取 得した最終行使時刻 2503と行使回数 2504を出力として処理を終了する。
[0255] 次に、図 27のステップ S2702の処理の続きに関して、説明を再開する。
[0256] ステップ S2703にて状態検証手段 1805は、ステップ S2702の結果として、未行使が返 つてきたかどうかの検証を行う。もし未行使であった場合はステップ S2707に進み、有 効な状態として処理を終了する。もし未行使でな力つた場合は、ステップ S2704に進 む。
[0257] ステップ S2704にて状態検証手段 1805は、現在時刻を取得する。なお、付与ァクセ ス権限の行使間隔の検証を行わな!/、状態検証手段 1805の場合は、本ステップはス キップして良い。
[0258] ステップ S2705にて状態検証手段 1805は、ステップ S2702で取得した付与アクセス 権限の最終行使時刻 2503と行使回数 2504、及び、ステップ S2704にて取得した現在 時刻、及び、状態検証手段 1805の生成時に受け取ったパラメータから、付与アクセス 権限が有効となる条件を満たしているかどうかの検証を行う。
[0259] ステップ S2706にて状態検証手段 1805は、ステップ S2705の検証の結果、付与ァク セス権限が有効となる条件を満たしている場合は、ステップ S2706に進み、有効な状 態として処理を終了する。付与アクセス権限が有効となる条件を満たしてな 、場合は 、ステップ S2707に進み、無効な状態として処理を終了する。
[0260] 以上の図 27と図 28に示した処理により、付与アクセス権限が有効となる有効状態と して、付与アクセス権限の行使回数や行使間隔といった条件が指定された場合に、 状態検証手段 1805において、有効状態にあるかどうかの確認を行う事が可能となる。
[0261] 次に、図 29では、ある付与アクセス権限が有効と判定された場合に、その付与ァク セス権限を行使する履歴を、権限行使状況管理テーブル 2402に格納する際の処理 を示す。これは、図 26のステップ S2609の処理の詳細である。
[0262] 始めに、ステップ S2901にてアクセス権限行使状況管理手段 2401は、図 26のステツ プ S2609から入力としてドメイン一式と付与アクセス権限を受け取る事により、処理を 開始する。
[0263] ステップ S2902にてアクセス権限行使状況管理手段 2401は、ステップ S2901にて受 け取ったドメインの個数 Nを算出する。そして、そのドメインに対して、 0から N-1までの 番号を割り振る。以降の処理では、このドメインに割り当てられた付与アクセス権限を 行使した履歴を残す処理となる。
[0264] ステップ S2903にてアクセス権限行使状況管理手段 2401は、現在時刻を取得する。
[0265] ステップ S2904にてアクセス権限行使状況管理手段 2401は、ループカウンタ Gを 0に 初期化する。
[0266] ステップ S2905にてアクセス権限行使状況管理手段 2401は、ステップ S2902にて番 号を割り当てたドメイン力も G番目のドメインを取り出し、さらにドメインのコードソース を取得する。
[0267] ステップ S2906にてアクセス権限行使状況管理手段 2401は、権限行使状況管理テ 一ブル 2402からコードソース 2501がー致する行エレメントの検索を行う。
[0268] ステップ S2907にてアクセス権限行使状況管理手段 2401は、ステップ S2906の処理 の結果、コードソース 2501がー致する行エレメントが見つかったかどうかの判定を行う 。判定の結果、見つかった場合はステップ S2908の処理に進む。見つからなかった場 合は S2911に進む。
[0269] ステップ S2908にてアクセス権限行使状況管理手段 2401は、ステップ S2906にて検 索したコードソース 2501がー致する行エレメントから、更に、アクセス権限情報 2502が 付与アクセス権限と一致する行エレメントの検索を行う。
[0270] ステップ S2909にてアクセス権限行使状況管理手段 2401は、ステップ S2908の処理 の結果、コードソース 2501とアクセス権限情報 2502がー致する行エレメントが見つか つたかどうかの判定を行う。判定の結果、見つ力つた場合はステップ S2910の処理に 進む。見つ力 なかった場合は S2911に進む。 [0271] ステップ S2910にてアクセス権限行使状況管理手段 2401は、ステップ S2908にて見 つ力つた行エレメントに対して、行使回数 2504の要素を 1だけインクリメントする。更に 、最終行使時刻 2503に対して、ステップ S2903にて取得した現在時刻を格納し、ステ ップ S2912の処理に進む。
[0272] ステップ S2911にてアクセス権限行使状況管理手段 2401は、ステップ S2905にて取 得したコードソース、ステップ S2901にて受け取った付与アクセス権限のアクセス権限 情報、行使回数として 1、最終行使時刻としてステップ S2903にて取得した現在時刻 を設定して、権限行使状況管理テーブル 2402に対して行エレメントの追加を行う。そ して、ステップ S2912の処理に進む。
[0273] ステップ S2912にてアクセス権限行使状況管理手段 2401は、ループカウンタ Gを 1だ けインクリメントする。
[0274] ステップ S2913にてアクセス権限行使状況管理手段 2401は、ループカウンタ Gとステ ップ S2902で算出したドメインの個数 Nを比較する。もし、 Gく Nの場合は、権限行使状 況管理テーブル 2401の中に、更新が完了していない行エレメントがあるため、ステツ プ S2905の処理に戻る。 G≥Nの場合は、全ての行エレメントの更新が終了した事にな るので、ステップ S2914に進み、処理を終了する。
[0275] 以上により、付与アクセス権限が行使される時に、その行使の履歴を権限行使状況 管理テーブル 2202に格納する事ができる。
[0276] 以上のように、付与アクセス権限を行使する直前に、 Java (登録商標)アクセス制御コ ントローラ 504から付与アクセス権限を行使した履歴をアクセス権限行使状況管理手 段 2401の権限行使状況管理テーブル 2402に格納する処理を呼び出す。そして、付 与アクセス権限の検証の際に、その権限行使状況管理テーブル 2402に格納された 情報を元に、権限行使回数や間隔を検証する事により、付与アクセス権限の行使回 数や行使間隔に応じて有効となるアクセス権限を利用する事が可能となる。
[0277] なお、本実施例では、アクセス権限認証の際に外部アクセス制御手段 508が実行さ れる様にするために、外部アクセス制御手段登録手段 512を提供する形態を示した。 しかし、 Java (登録商標)提供アクセス制御コントローラ 504のソースが改修可能なケー スにおいては、アクセス権限一覧保持手段 511を呼び出す処理を、直接に Java (登録 商標)提供アクセス制御コントローラ 504のソースに追記する事も可能である。機能構 成や処理の流れの修正は、実施例 1で示した場合と同様のため、ここでは省略する。
[0278] また、本実施例では、外部アクセス制御手段登録手段 512をポリシープロバイダクラ スの仕様を満たす形で実装して、 Java (登録商標)提供アクセス制御コントローラ 504に 対して外部アクセス制御手段 508を登録する方法を示した。しかし、外部アクセス制 御手段登録手段 512の実装形態はポリシープロバイダクラスに限定されるものではな ぐセキュリティマネージャ等、他の実装形態として提供しても良い。
[0279] また、本実施例では、アプリケーションプログラムの実行環境として Java (登録商標) 実行環境 502を利用する事を想定し、その Java (登録商標)実行環境 502で最適となる 実施例を示した。しかし、本発明は、 Java (登録商標)実行環境 502への適用に限定さ れるものではなく、例えば Windows (登録商標)や MacOS (登録商標)や Linux (登録商標 )や Symbian (登録商標)等、他のアプリケーション実行環境に対しても適用する事が可 能である。
[0280] また、本実施例では、外部アクセス制御手段 508がアクセス制御のために用いる外 部アクセス権限管理テーブルを、 Java (登録商標)実行環境 502が提供するアクセス権 限管理テーブル 506に統合した場合に関して説明を行った。しかし、外部アクセス制 御手段 508が用いる外部アクセス権限管理テーブルは、 Java (登録商標)実行環境 502 が提供するアクセス権限管理テーブル 506と同一ファイルにする必要はなぐ個別に ファイルを保持して管理しても良 、。
[0281] また、本実施例では、本発明のアクセス制御の適用機器を車載 PC111にして説明 を行った力 適用先は車載 PC111に限定されるものではなぐ例えばホームサーバや 携帯電話等、有線や無線を通して様々なデバイスと接続するような機器に適用する 事ができる。
[0282] また、図 20で示した処理フローのステップ S2002では、アクセス権限管理テーブル 506に有効状態 605が指定されて 、るかどうかにかかわらず、全ての付与アクセス権 限を取得して、ステップ S2003からステップ S2012にて処理を行っていた。これを、始め に有効状態 605が設定されてな 、付与アクセス権限の取得と検証を行!、、次に有効 状態 605が設定されて 、る付与アクセス権限の取得と検証を行うなど、 2ステップに分 けて行っても構わない。
[0283] また、本実施例では、状態検証手段 1805に関する情報を、状態検証手段管理テー ブル 1804に有効状態名 1901を関連づけて格納する方式とした。しかし、状態検証手 段 1805に関する情報を、直接にアクセス権限管理テーブル 506の有効状態 605に記 述しても良い。
[0284] また、本実施例では、図 21に示したように、状態検証手段管理テーブル 1804の読 み込み処理を、初めて状態検証手段管理手段 1803が利用される時とした。しかし、こ の処理は、初めて状態検証手段管理手段 1803が利用されるより前であればいつでも 良ぐ例えば、 Java (登録商標)実行環境 502が起動した時に実施しても良い。
[0285] また、本実施例では、状態検証手段呼出手段 1801は、状態検証手段読込み手段 1803を用いて状態検証手段 1805の読み込みを行う様にした力 あら力じめ状態検証 手段 1805が分力つているものに関しては、状態検証手段読込み手段 1803を用いず に状態検証手段 1805を取得しても構わな 、。
[0286] また、本実施例では、図 9のステップ S907にてアクセス権限一覧保持手段 511作成 のために、ノ ラメータとして付与アクセス権限一覧に加えてコードソースを与えるよう にした。しかし、ここで設定したコードソースは、実際には図 27で示した利用アクセス 権限の行使回数もしくは行使間隔の検証を行う状態検証手段が利用するため、この 状態検証手段にコードソースが送付されるようであれば、他にどの様なタイミングで通 知されても良い。
[0287] また、本実施例では、図 25に示したように、付与アクセス権限のアクセス権限情報 のみを保存しておき、再度同一のアクセス権限情報を持つ付与アクセス権限が利用 されようとした時に、その最終行使時刻 2503と行使回数 2504を見て付与アクセス権限 が有効となる状態カゝどうかの確認を行っていた。しかし、権限行使状況管理テーブル 2402に保存する情報は、付与アクセス権限のアクセス権限情報だけではなぐそのリ ソース指定情報や操作内容情報も含めて保存して、それらの情報も用いて付与ァク セス権限が有効となるかどうかを判定しても良い。
[0288] また、本実施例では、図 29で示したように、権限行使状況管理テーブル 2402に記 録する付与アクセス権限が一個の言う場合について、その処理の流れを示した。しか し、利用する利用アクセス権限に対して、行使履歴を残す必要がある付与アクセス権 限は、同一ドメイン内においても複数存在する場合も考えられる。この場合、図 29に 示した処理を、行使履歴を残す必要がある全ての付与アクセス権限にっ 、て繰り返 し実行する必要がある。
産業上の利用可能性
この発明は、アクセス制御を行うコンピュータに適用することが可能である。

Claims

請求の範囲
[1] 実行環境の状況に基づ 、てアクセス権限の有効状態を判定する有効状態判定手 段と、
前記有効状態判定手段による有効状態に基づいて、コンピュータリソースへのァク セス権限を指定するアクセス権限管理テーブルと、
前記アクセス権限管理テーブルに基づいてアクセス制御を行うアクセス制御実行環 境とを備えることを特徴とするコンピュータ。
[2] 前記有効状態判定手段を有し、前記有効状態を含むアクセス権限の検証を行う外 部アクセス制御手段と、
前記アクセス制御実行環境が前記アクセス権限管理テーブルを用いて前記ァクセ ス権限の認証を行う際、内部的に前記外部アクセス制御手段を呼び出すよう登録す る外部アクセス制御手段登録手段とを備えることを特徴とする請求項 1記載のコンビ ユータ。
[3] 前記アクセス権限が有効状態にあるか否かを検証する状態検証手段を備えるととも に、
前記有効状態判定手段は、前記状態検証手段による検証結果に基づいて動的に 有効状態の条件を変更することを特徴とする請求項 1記載のコンピュータ。
[4] 前記アクセス権限を行使した履歴を保存するアクセス権限行使状況管理手段を備 えるとともに、
前記有効状態判定手段は、前記アクセス権限行使状況管理手段によるアクセス権 限行使状況に基づいて有効状態を判定することを特徴とする請求項 1記載のコンビ ユータ。
[5] 前記アクセス制御実行環境は、 Java (登録商標)実行環境を用いることを特徴とする 請求項 1記載のコンピュータ。
[6] 実行環境の状況に基づ!、てアクセス権限の有効状態を判定し、
前記判定された有効状態に基づいて、コンピュータリソースへのアクセス権限を指 定し、
前記指定されたアクセス権限に基づいてアクセス制御を行うことを特徴とするコンビ ユータリソースへのアクセス制御方法。
コンピュータを制御して、アクセス制御を行うプログラムであって、
実行環境の状況に基づいてアクセス権限の有効状態を判定する処理と、 前記判定された有効状態に基づいて、コンピュータリソースへのアクセス権限を指 定する処理と、
前記指定されたアクセス権限に基づいてアクセス制御を行う処理とを前記コンビュ ータに実行させることを特徴とするアクセス制御プログラム。
PCT/JP2005/007622 2005-04-21 2005-04-21 コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム WO2006114878A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2007514387A JP4755181B2 (ja) 2005-04-21 2005-04-21 コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム
PCT/JP2005/007622 WO2006114878A1 (ja) 2005-04-21 2005-04-21 コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム
EP05734643A EP1873650A4 (en) 2005-04-21 2005-04-21 COMPUTERS, METHOD OF CONTROLLING ACCESS TO COMPUTER DEVICES AND ACCESS CONTROL PROGRAM
CNA2005800495395A CN101167062A (zh) 2005-04-21 2005-04-21 计算机、对计算机资源的访问控制方法以及访问控制程序
US11/918,789 US20090031418A1 (en) 2005-04-21 2005-04-21 Computer, method for controlling access to computer resource, and access control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2005/007622 WO2006114878A1 (ja) 2005-04-21 2005-04-21 コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム

Publications (1)

Publication Number Publication Date
WO2006114878A1 true WO2006114878A1 (ja) 2006-11-02

Family

ID=37214516

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/007622 WO2006114878A1 (ja) 2005-04-21 2005-04-21 コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム

Country Status (5)

Country Link
US (1) US20090031418A1 (ja)
EP (1) EP1873650A4 (ja)
JP (1) JP4755181B2 (ja)
CN (1) CN101167062A (ja)
WO (1) WO2006114878A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012029117A (ja) * 2010-07-26 2012-02-09 Nec Corp 移動通信システム、加入者制御サーバ、および加入者情報操作方法
JP2016027483A (ja) * 2011-05-24 2016-02-18 日本電気株式会社 情報処理システム、アクセス制御方法、情報処理装置およびその制御方法と制御プログラム
WO2023195468A1 (ja) * 2022-04-07 2023-10-12 株式会社デンソー 車両制御システム、アクセス制御装置、アクセス制御方法
WO2023210290A1 (ja) * 2022-04-28 2023-11-02 株式会社デンソー モビリティサービス提供システム、車載システム、管理サーバ、アクセス制御方法、及びプログラム
WO2024070774A1 (ja) * 2022-09-29 2024-04-04 株式会社デンソー アクセス制御装置、アクセス制御方法

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7461071B2 (en) 2005-04-04 2008-12-02 Younite, Inc. Distributed management framework for personal attributes
US7660558B2 (en) * 2005-12-31 2010-02-09 Adobe Systems Incorporated Interrupting and resuming a media player
US20070155426A1 (en) * 2005-12-31 2007-07-05 Govind Balakrishnan Application access to cellular telephone settings
US20130167024A1 (en) 2006-12-05 2013-06-27 Adobe Systems Incorporated Embedded document within an application
US7743339B1 (en) 2007-02-01 2010-06-22 Adobe Systems Incorporated Rendering text in a brew device
US8589779B2 (en) * 2007-03-08 2013-11-19 Adobe Systems Incorporated Event-sensitive content for mobile devices
CA2682415A1 (en) * 2007-03-30 2008-10-09 Real Enterprise Solutions Development B.V. Method and system for determining entitlements to resources of an organization
US8463813B2 (en) * 2007-04-12 2013-06-11 Younite, Inc. Individualized data sharing
US10229191B2 (en) 2009-09-09 2019-03-12 Varonis Systems Ltd. Enterprise level data management
WO2011030324A1 (en) 2009-09-09 2011-03-17 Varonis Systems, Inc. Enterprise level data management
US8578507B2 (en) 2009-09-09 2013-11-05 Varonis Systems, Inc. Access permissions entitlement review
US20110061093A1 (en) * 2009-09-09 2011-03-10 Ohad Korkus Time dependent access permissions
CN102822793A (zh) * 2010-01-27 2012-12-12 瓦欧尼斯系统有限公司 与时间有关的访问权限
DE102010008816A1 (de) 2010-02-22 2011-08-25 Continental Automotive GmbH, 30165 Verfahren zur Online-Kommunikation
JP2011197903A (ja) * 2010-03-18 2011-10-06 Fujitsu Ltd アクセス制御情報配布装置、アクセス制御情報配布プログラム、アクセス制御システム、及びアクセス制御情報配布方法
WO2011135819A1 (ja) * 2010-04-26 2011-11-03 株式会社ニコン 構造化照明顕微鏡装置
US9741006B2 (en) * 2010-05-14 2017-08-22 Oracle International Corporation System and method for providing complex access control in workflows
US9852382B2 (en) 2010-05-14 2017-12-26 Oracle International Corporation Dynamic human workflow task assignment using business rules
US10296596B2 (en) 2010-05-27 2019-05-21 Varonis Systems, Inc. Data tagging
EP2577444A4 (en) 2010-05-27 2014-04-02 Varonis Systems Inc DATA CLASSIFICATION
CN101902402A (zh) * 2010-07-21 2010-12-01 中兴通讯股份有限公司 一种用户权限管理方法、装置
US9123058B2 (en) * 2011-11-16 2015-09-01 Flextronics Ap, Llc Parking space finder based on parking meter data
US9680839B2 (en) 2011-01-27 2017-06-13 Varonis Systems, Inc. Access permissions management system and method
CN103348316B (zh) 2011-01-27 2016-08-24 瓦欧尼斯系统有限公司 访问权限管理系统和方法
CN103154959B (zh) * 2011-09-12 2016-05-11 丰田自动车株式会社 车辆用电子控制装置
DE102011120249A1 (de) 2011-12-05 2013-06-06 Volkswagen Aktiengesellschaft Verfahren zum Betreiben eines Internetprotokoll-basierten Funktionssystems und dazugehöriges Internetprotokoll-basiertes ...
US9251363B2 (en) 2013-02-20 2016-02-02 Varonis Systems, Inc. Systems and methodologies for controlling access to a file system
TW201537458A (zh) * 2014-03-31 2015-10-01 Quanta Comp Inc 操作多重作業系統之方法及其電子裝置
US10104123B2 (en) * 2015-09-23 2018-10-16 Ca, Inc. Fetching a policy definition library from a policy server at mobile device runtime of an application package to control access to mobile device resources
WO2018195020A1 (en) * 2017-04-18 2018-10-25 Breakthrough Technologies, LLC Sulfur production
US10437786B2 (en) 2017-10-21 2019-10-08 Dropbox, Inc. Interoperability between content management system and collaborative content system
US10586066B2 (en) * 2017-10-21 2020-03-10 Dropbox, Inc. Interoperability between content management system and collaborative content system
DE102018001558A1 (de) * 2018-02-28 2019-08-29 Daimler Ag Fahrberechtigungssystem

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000019326A1 (fr) * 1998-09-29 2000-04-06 Fujitsu Limited Procede et dispositif de traitement de demandes d'acces

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5375244A (en) * 1992-05-29 1994-12-20 At&T Corp. System and method for granting access to a resource
JP3659144B2 (ja) * 2000-08-25 2005-06-15 トヨタ自動車株式会社 入力画面の制御装置
JP2003044297A (ja) * 2000-11-20 2003-02-14 Humming Heads Inc コンピュータリソースの制御を行なう情報処理方法および装置、情報処理システム及びその制御方法並びに記憶媒体、プログラム
KR20040029414A (ko) * 2001-08-10 2004-04-06 마쯔시다덴기산교 가부시키가이샤 전자기기
JP2004021923A (ja) * 2002-06-20 2004-01-22 Matsushita Electric Ind Co Ltd 情報処理装置と情報処理方法
US7565533B2 (en) * 2002-11-05 2009-07-21 Sun Microsystems, Inc. Systems and methods for providing object integrity and dynamic permission grants
US7444668B2 (en) * 2003-05-29 2008-10-28 Freescale Semiconductor, Inc. Method and apparatus for determining access permission
US20060085852A1 (en) * 2004-10-20 2006-04-20 Caleb Sima Enterprise assessment management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000019326A1 (fr) * 1998-09-29 2000-04-06 Fujitsu Limited Procede et dispositif de traitement de demandes d'acces

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012029117A (ja) * 2010-07-26 2012-02-09 Nec Corp 移動通信システム、加入者制御サーバ、および加入者情報操作方法
JP2016027483A (ja) * 2011-05-24 2016-02-18 日本電気株式会社 情報処理システム、アクセス制御方法、情報処理装置およびその制御方法と制御プログラム
WO2023195468A1 (ja) * 2022-04-07 2023-10-12 株式会社デンソー 車両制御システム、アクセス制御装置、アクセス制御方法
WO2023210290A1 (ja) * 2022-04-28 2023-11-02 株式会社デンソー モビリティサービス提供システム、車載システム、管理サーバ、アクセス制御方法、及びプログラム
WO2024070774A1 (ja) * 2022-09-29 2024-04-04 株式会社デンソー アクセス制御装置、アクセス制御方法

Also Published As

Publication number Publication date
CN101167062A (zh) 2008-04-23
EP1873650A4 (en) 2010-11-10
EP1873650A1 (en) 2008-01-02
US20090031418A1 (en) 2009-01-29
JPWO2006114878A1 (ja) 2008-12-11
JP4755181B2 (ja) 2011-08-24

Similar Documents

Publication Publication Date Title
JP4755181B2 (ja) コンピュータ及びコンピュータリソースへのアクセス制御方法及びアクセス制御プログラム
US8074287B2 (en) Renewable and individualizable elements of a protected environment
CN101300583B (zh) 用于可信赖移动电话的简单可伸缩和可配置安全启动
US8719950B2 (en) Access control apparatus and storage medium
KR100803595B1 (ko) 네트워크 내 콘텐츠에 대한 사용자 액세스 제어 시스템 및방법
CA2923740C (en) Software code signing system and method
US7971232B2 (en) Setting group policy by device ownership
US8543997B2 (en) Secure dynamic loading
US20090070853A1 (en) Security Policy Validation For Web Services
US20120090021A1 (en) Platform Specific Application Building
CN101379503A (zh) 鉴认计算机系统的应用程序的方法
EP2766839A1 (en) System and method for creating secure applications
KR20080097230A (ko) 트러스트된 코드 그룹들
CA2951914C (en) Restricted code signing
Deubler et al. Sound development of secure service-based systems
US8132261B1 (en) Distributed dynamic security capabilities with access controls
WO2006114925A1 (ja) プログラム提供装置、記憶媒体および車載情報システム
Gansel et al. An access control concept for novel automotive HMI systems
WO2023113081A1 (ko) 클라우드 환경 내 이벤트 스트림 방식의 컨테이너 워크로드 실행 제어 방법, 장치 및 컴퓨터-판독 가능 기록 매체
Bernardeschi et al. Modeling and generation of secure component communications in AUTOSAR
CN115509556A (zh) 一种应用管理方法、装置、设备及介质
US20090077615A1 (en) Security Policy Validation For Web Services
JP2006079223A (ja) アプリケーションプログラム管理装置及びそれに用いる管理方法並びにそのプログラム
KR101265887B1 (ko) 보호 컴퓨팅 환경을 제공하는 방법 및 장치 내에 보호 환경을 설정하는 방법
CN116991472B (zh) 管理全局资源的方法及计算设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007514387

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 11918789

Country of ref document: US

Ref document number: 2005734643

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 200580049539.5

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Ref document number: RU

WWP Wipo information: published in national office

Ref document number: 2005734643

Country of ref document: EP