JP6247618B2 - アクセス制御システムにおける匿名の決定 - Google Patents

アクセス制御システムにおける匿名の決定 Download PDF

Info

Publication number
JP6247618B2
JP6247618B2 JP2014187512A JP2014187512A JP6247618B2 JP 6247618 B2 JP6247618 B2 JP 6247618B2 JP 2014187512 A JP2014187512 A JP 2014187512A JP 2014187512 A JP2014187512 A JP 2014187512A JP 6247618 B2 JP6247618 B2 JP 6247618B2
Authority
JP
Japan
Prior art keywords
authentication information
local
access rule
global database
controller device
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.)
Active
Application number
JP2014187512A
Other languages
English (en)
Other versions
JP2015057884A (ja
JP2015057884A5 (ja
Inventor
マティアス ブルース
マティアス ブルース
マルクス ヨハンソン
マルクス ヨハンソン
Original Assignee
アクシス アーベー
アクシス アーベー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アクシス アーベー, アクシス アーベー filed Critical アクシス アーベー
Publication of JP2015057884A publication Critical patent/JP2015057884A/ja
Publication of JP2015057884A5 publication Critical patent/JP2015057884A5/ja
Application granted granted Critical
Publication of JP6247618B2 publication Critical patent/JP6247618B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Description

本開示は一般にアクセス制御システムに関し、より具体的には、アクセス制御システムにおける匿名のアクセス制御決定に関する。
施設への物理的アクセスを制御するのにアクセス制御システムが使用される場合がある。アクセス制御システム(ならびに他の種類の制御システム)は、各々システムの異なる部分を制御する多数のコントローラを備えることができる。各コントローラは、構成情報、周辺デバイスの設定などといったデバイス固有の情報を記憶することができる。
一態様によれば、コントローラデバイスによって実行される方法は、コントローラデバイスにより、複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースへのアクセス権を取得するステップと、コントローラデバイスにより、グローバルデータベースからローカルアクセスルールテーブルを取得するステップと、ここで、上記ローカルアクセスルールテーブルは、ユーザをアクセスルールと関連付け、上記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化されており、上記コントローラデバイスにより、グローバルデータベースからローカル認証情報テーブルを取得するステップとを含み、上記ローカル認証情報テーブルは、ハッシュ化された認証情報をユーザと関連付け、上記ローカル認証情報テーブルは、ユーザと関連付けられた非ハッシュ化認証情報で暗号化されたローカルアクセスルール鍵をユーザのために記憶し、上記非ハッシュ化認証情報は、上記コントローラデバイスに記憶されなくてもよい。
加えて、上記方法は、読取デバイスから認証情報値を受信するステップと、受信された認証情報値をハッシュ化するステップと、ローカル認証情報テーブルにハッシュ化された認証情報値についての認証情報エントリが存在するかどうか判定するステップと、ローカル認証情報テーブルにハッシュ化された認証情報値についての認証情報エントリが存在するときに、ローカル認証情報テーブルでハッシュ化された認証情報値と関連付けられたユーザを特定するステップとを含んでもよい。
加えて、上記方法は、受信された認証情報値を用いて、認証情報エントリと関連付けられたローカルアクセスルール鍵を解読するステップと、解読されたローカルアクセスルール鍵を用いてローカルアクセスルールテーブルを解読するステップと、ユーザについて解読されたローカルアクセスルールテーブルにアクセスルールエントリが存在するかどうか判定するステップと、ユーザについて解読されたローカルアクセスルールテーブルにアクセスルールエントリが存在するときに、アクセスルールエントリに基づいてユーザと関連付けられた1もしくは複数のアクセスルールを実行するステップとを含んでもよい。
加えて、コントローラデバイスは複数のコントローラデバイスを含む分散システムに属してもよく、グローバルデータベースは、分散システム内の分散データセットに該当してもよい。
加えて、上記方法は、管理デバイスからグローバルデータベースへの更新を受信するステップと、更新を複数のデバイスのうちの他のデバイスに配布するステップと、受信された更新を用いてグローバルデータベースを更新するステップとを含み、上記グローバルデータベースは複数のデバイスのうちの他のデバイスにおいて更新されてもよい。
加えて、上記方法は、グローバルデータベースを記憶するステップと、複数のコントローラデバイスがグローバルデータベースにアクセスすることを可能にするステップとを含んでもよい。
加えて、コントローラデバイスは、複数のコントローラデバイスを含む分散システムに属してもよく、グローバルデータベースは、複数のコントローラデバイスのうちの別のコントローラデバイスに記憶されてもよく、グローバルデータベースへのアクセス権を取得するステップは、別のコントローラデバイスにおけるグローバルデータベースにアクセスするステップを含んでもよい。
加えて、上記方法は、グローバルデータベースについての更新を取得するステップと、更新がローカルアクセスルールテーブルまたはローカル認証情報テーブルの少なくとも一方に関連したものであると判定するステップと、更新がローカルデータベースに関連したものであると判定したことに基づいて、更新されたグローバルデータベースを用いて、ローカルアクセスルールテーブルまたはローカル認証情報テーブルの少なくとも一方を更新するステップとを含んでもよい。
加えて、ローカル認証情報テーブルはローカル認証情報鍵を用いて暗号化されてもよく、上記方法は、ローカル認証情報鍵を用いてローカル認証情報テーブルを解読するステップと、ローカル認証情報テーブルでハッシュ化された認証情報値を更新するステップと、解読されたグローバルデータベースから暗号化されていないローカルアクセスルール鍵を取得するステップと、ローカルアクセスルール鍵を非ハッシュ化認証情報値で暗号化するステップと、をさらに含み、上記暗号化されたローカルアクセスルール鍵はハッシュ化された認証情報値と関連付けられてもよい。
加えて、上記方法は、解読されたグローバルデータベースから暗号化されていないローカルアクセスルール鍵を取得するステップと、取得した暗号化されていないローカルアクセスルール鍵を用いてローカルアクセスルールテーブルを解読するステップと、ローカルアクセスルールテーブルを更新するステップと、更新されたローカルアクセスルールテーブルを暗号化するステップとを含んでもよい。
加えて、ローカルアクセスルールテーブルは、特定のアクセス位置を、特定のユーザグループおよび特定のアクセスルールセットと関連付けてもよい。
加えて、上記方法は、複数のコントローラデバイスのうちの別のコントローラデバイスのためにグローバルデータベースから遠隔のローカルアクセスルールテーブルを取得するステップと、別のコントローラデバイスのためにグローバルデータベースから遠隔のローカル認証情報テーブルを取得するステップと、別のコントローラデバイスが、遠隔のローカルアクセスルールテーブルおよび遠隔のローカル認証情報テーブルにアクセスすることを可能にするステップとを含んでもよい。
加えて、ユーザはグローバルデータベースでグローバルデータベース行番号と関連付けられてもよく、ユーザは、ローカルアクセスルールテーブルでグローバルデータベース行番号と関連付けられてもよく、ユーザは、ローカル認証情報テーブルでグローバルデータベース行番号と関連付けられてもよい。
加えて、コントローラデバイスは、組み込みシステムに該当してもよい。
加えて、複数のコントローラデバイスは分散型の物理アクセス制御システムに該当してもよく、コントローラデバイスは、物理的アクセス制御ユニットに該当してもよい。
別の態様によれば、コントローラデバイスは、複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースへのアクセス権を取得し、グローバルデータベースからローカルアクセスルールテーブルを取得し、ここで、上記ローカルアクセスルールテーブルは、ユーザをアクセスルールと関連付け、上記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化されており、グローバルデータベースからローカル認証情報テーブルを取得するように構成されたロジックを含み、上記ローカル認証情報テーブルは、ハッシュ化された認証情報をユーザと関連付け、上記ローカル認証情報テーブルは、ユーザと関連付けられた非ハッシュ化認証情報で暗号化されたローカルアクセスルール鍵をユーザのために記憶し、上記非ハッシュ化認証情報は、コントローラデバイスに記憶されなくてもよい。
加えて、ロジックは、読取デバイスから認証情報値を受信し、受信された認証情報値をハッシュ化し、ローカル認証情報テーブルにハッシュ化された認証情報値についての認証情報エントリが存在するかどうか判定し、ローカル認証情報テーブルにハッシュ化された認証情報値についての認証情報エントリが存在するときに、ローカル認証情報テーブルでハッシュ化された認証情報値と関連付けられたユーザを特定するようにさらに構成されてもよい。
加えて、認証情報値は、一連のキーパッド文字列、キーカードから取得された値、虹彩スキャンから取得された特徴ベクトル、音声サンプルから取得された特徴ベクトル、指紋スキャンから取得された特徴ベクトルのうちの1もしくは複数を含んでもよい。
加えて、ロジックは、受信された認証情報値を用いて、認証情報エントリと関連付けられたローカルアクセスルール鍵を解読し、解読されたローカルアクセスルール鍵を用いてローカルアクセスルールテーブルを解読し、ユーザについて解読されたローカルアクセスルールテーブルにアクセスルールエントリが存在するかどうか判定し、ユーザについて解読されたローカルアクセスルールテーブルにアクセスルールエントリが存在するときに、アクセスルールエントリに基づいてユーザと関連付けられた1もしくは複数のアクセスルールを実行するようにさらに構成されてもよい。
加えて、コントローラデバイスは、複数のコントローラデバイスを含む分散システムに属してもよく、グローバルデータベースは、分散システム内の分散データセットに該当してもよい。
加えて、ロジックは、管理デバイスからグローバルデータベースへの更新を受信し、更新を複数のデバイスのうちの他のデバイスに配布し、受信された更新を用いてグローバルデータベースを更新するようにさらに構成され、上記グローバルデータベースは複数のデバイスのうちの他のデバイスにおいて更新されてもよい。
加えて、ロジックは、グローバルデータベースを記憶し、複数の他のコントローラデバイスがグローバルデータベースにアクセスすることを可能にするようにさらに構成されてもよい。
加えて、コントローラデバイスは、複数のコントローラデバイスを含む分散システムに属してもよく、グローバルデータベースは、複数のコントローラデバイスのうちの別のコントローラデバイスに記憶されてもよく、ロジックは、別のコントローラデバイスのところのグローバルデータベースにアクセスするようにさらに構成されてもよい。
加えて、ロジックは、別のコントローラデバイスのためにグローバルデータベースから遠隔のローカルアクセスルールテーブルを取得し、別のコントローラデバイスのためにグローバルデータベースから遠隔のローカル認証情報テーブルを取得し、別のコントローラデバイスに遠隔のローカルアクセスルールテーブルおよび遠隔のローカル認証情報テーブルを提供するようにさらに構成されてもよい。
加えて、複数のコントローラデバイスは分散型の物理アクセス制御システムに該当してもよく、コントローラデバイスは、物理的アクセス制御ユニットに該当してもよい。
さらに別の態様によれば、分散システムは、複数の物理的アクセスコントローラデバイスを含み、上記複数の物理的アクセスコントローラデバイスの個々のコントローラデバイスは、複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースへのアクセス権を取得し、グローバルデータベースからローカルアクセスルールテーブルを取得し、ここで、上記ローカルアクセスルールテーブルは、ユーザをアクセスルールと関連付け、上記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化され、グローバルデータベースからローカル認証情報テーブルを取得するように構成され、上記ローカル認証情報テーブルは、ハッシュ化された認証情報をユーザと関連付け、上記ローカル認証情報テーブルは、ユーザと関連付けられた非ハッシュ化認証情報で暗号化されたローカルアクセスルール鍵をユーザのために記憶し、上記非ハッシュ化認証情報は、上記複数の物理的アクセスコントローラデバイスの個々のコントローラデバイスに記憶されなくてもよい。
本明細書に記載する実施形態による例示的な環境を示すブロック図である。 図1のシステムユニットの例示的な構成要素を示すブロック図である。 図1のシステムユニットの例示的な機能構成要素を示すブロック図である。 図1のシステムユニットの例示的な機能構成要素を示すブロック図である。 図3Bのデータベースに記憶されうる例示的な情報の図である。 図3Bのデータベースに記憶されうる例示的な情報の図である。 図3Bのデータベースに記憶されうる例示的な情報の図である。 1もしくは複数の実施形態によるグローバルデータベースからローカルデータベースを取得するためのフローチャートである。 1もしくは複数の実施形態によるグローバルデータベースを更新するためのフローチャートである。 1もしくは複数の実施形態によるローカルアクセスルールテーブルを更新するためのフローチャートである。 1もしくは複数の実施形態によるローカル認証情報テーブルを更新するためのフローチャートである。 本明細書に記載する1もしくは複数の実施態様によるローカル認証情報テーブルおよびローカルアクセスルールテーブルを使用するためのフローチャートである。 図1のシステムユニットの例示的な物理的レイアウトを示す平面図である。 図1のシステムユニットの例示的な物理的レイアウトを示す平面図である。 1もしくは複数の実施形態によるグローバルデータベースの例示的な実施態様を示す図である。 1もしくは複数の実施形態によるグローバルデータベースの例示的な実施態様を示す図である。 1もしくは複数の実施形態によるグローバルデータベースの例示的な実施態様を示す図である。 1もしくは複数の実施形態によるグローバルデータベースの例示的な実施態様を示す図である。 1もしくは複数の実施形態による例示的なデータベース使用シナリオの図である。 1もしくは複数の実施形態による例示的データベース使用シナリオの図である。 1もしくは複数の実施形態による例示的データベース使用シナリオの図である。
以下の詳細な説明では添付の図面を参照する。異なる図面の同じ参照番号は同じ要素または類似の要素を識別する。
以下で説明する実施形態は制御システムにおける匿名のデータベースに関するものである。制御システムのためにグローバルデータベースが維持され得る。グローバルデータベースは、ユーザの識別情報といったユーザ情報を含んでもよい。ユーザ情報はさらにユーザの認証情報値を含んでもよい。認証情報値は、制御システムの特定のコントローラデバイスと接続しているユーザを認証するのに使用することができる。例えば、認証情報値はユーザのアクセスカードに記憶されてもよく、読取デバイスがアクセスカードをスキャンして、ユーザへアクセス権を付与すべきかどうか判定することができる。グローバルデータベースは、時刻、アクセス領域などといったパラメータに基づく、どのユーザにアクセス権が付与されるべきかといった、アクセス制御情報をさらに含んでもよい。
グローバルデータベースは、制御システム内の特定のデバイスについての匿名のローカルアクセスルールテーブル、および/または特定のデバイスについての匿名のローカル認証情報テーブルを取得するのに使用することができる。ローカルアクセスルールテーブルは、ユーザまたはユーザグループを、特定のデバイスに関連したアクセスルールと関連付けることができる。ローカルアクセスルールテーブルはローカルアクセスルール鍵で暗号化されてもよい。本明細書で使用する「鍵」という用語は暗号化/解読鍵をいう。ローカル認証情報テーブルは、ハッシュ化された認証情報値をユーザと関連付けることができ、ユーザごとのローカルアクセスルール鍵の暗号化バージョンを記憶することができる。ここで、ローカルアクセスルール鍵はユーザの非ハッシュ化認証情報値で暗号化される。非ハッシュ化認証情報値は特定のデバイスによって記憶されなくてもよく、ユーザがアクセスを要求するときに読取デバイス(アクセス・カード・リーダなど)によって取得されてもよい。「匿名の」とは、ユーザについての情報(例えばユーザの名前、従業員番号など)の特定を除外することを意味しうる。さらに、「データベース」という用語と「テーブル」という用語とは区別なく使用される。よって、ローカルアクセスルールテーブルおよびローカル認証情報テーブルはいかなる個人ユーザ情報も含んでいなくてもよく、したがって、アクセスデバイスのセキュリティが損なわれた場合には、アクセスデバイス内のローカルテーブルから個人ユーザ情報は取得され得ない。
ある実施態様では、制御システムは分散制御システムを含んでもよい。分散制御システムは、分散型の物理アクセス制御システムを含んでもよい。物理アクセス制御システムは、各アクセス制御ユニットが施設の領域への物理的アクセスを制御する1もしくは複数のアクセス制御ユニットを含んでもよい。例えば、アクセス制御ユニットは、ユーザから認証情報を取得することができ、ユーザの認証情報が認証された場合にドアの錠を開錠することができる。他の実施態様では、分散制御システムは、分散建物管理システム、分散監視システム、分散セキュリティシステム、および/または別の種類の分散制御システムを含んでもよい。
ある実施態様では、グローバルデータベースは分散データセットに該当してもよく、システム内の各制御ユニットは、分散グローバルデータベースのローカルコピーを記憶することができ、各制御ユニットは、分散グローバルデータベースのローカルコピーからローカルアクセスルールテーブルおよび/またはローカル認証情報テーブルを取得することができる。他の実施態様では、いくつかの制御ユニットが分散グローバルデータベースのコピーを含まなくてもよい。例えば、高リスク領域にある制御ユニットは、分散グローバルデータベースのコピーを含まなくてもよい。その代わりに、別の制御ユニットが高リスク制御ユニットのためにローカルアクセスルールテーブルおよび/またはローカル認証情報テーブルを取得することができ、当該ローカルアクセスルールテーブルおよび/または当該ローカル認証情報テーブルを高リスク制御ユニットに提供することができる。他の実施態様では、1つの制御ユニットがグローバルデータベースを含むように指定されてもよく、他の制御ユニットは、当該グローバルデータベースにアクセスしてそれぞれのローカルアクセスルールテーブルおよび/またはローカル認証情報テーブルを取得することができる。他の実施態様では、グローバルデータベースは、制御システムの外部、例えば、管理デバイスに記憶され得る。
他の実施態様では、制御システムは、分散システムに該当しなくてもよい。例えば、制御システムは、グローバルデータベースへのアクセス権を有する、ネットワークで接続されたコントローラデバイスのグループを含んでもよい。そして、グローバルデータベースは、ネットワークで接続されたコントローラデバイスのうちの1つもしくは複数によって記憶されていてもよく、管理デバイスといった別のデバイスによって記憶されていてもよい。
図1は、以下に記載するシステムおよび/または方法が実装されうる例示的な環境100のブロック図である。図1に示すように、環境100は、分散制御システム110(分散型の物理アクセス制御システムなど)、ネットワーク120、および管理デバイス130を含む。
分散制御システム(DCS:distributed control system)110は、システムユニット115‐A〜115‐N(まとめて「システムユニット115」と呼ぶ。また、個別に「システムユニット115」と呼ぶ)を含む分散コンピューティングシステムを含んでもよい。システムユニット115は、組み込みシステムとして実装することができる。ある実施態様では、システムユニット115は、物理的アクセスコントローラデバイスを含んでもよい。例えば、システムユニット115は、部屋や部屋群といったセキュアな領域へのアクセスを制御するアクセスコントローラを含んでもよい。システムユニット115は、読取デバイスを介して認証情報(アクセスカード認証情報など)を受信して、認証情報が本物であること、および認証情報がセキュアな領域にアクセスする権限と関連付けられているかどうか判定することができる。認証情報が正当である場合、アクセスコントローラは、ドアの錠を開くコマンドを発行し、またはセキュアな領域へのアクセスを許可することと関連付けられた他の動作を実行してもよい。他の実施態様では、システムユニット115は、監視デバイス、機械の動作を制御するデバイスなどといった、別の種類のセキュリティデバイスを含んでもよい。他の実施態様では、システムユニット115は、別の種類の組み込みシステムを含んでもよい。
DSC110は、1もしくは複数の分散データセットを含んでもよい。分散データセットは複数のデバイスと関連付けられたデータセットを含み、一実施形態では、複数のデバイスは相互に通信し、協調し合ってデータセットに変更を加えることができる。一実施形態では、分散データセットのローカルコピーが、分散データセットと関連付けられた各デバイスによって維持される。そして、変更がそれら各デバイスによって同意された場合、変更は分散データセットの各ローカルコピーへ複製される。別の実施形態では、例えば、一部のデバイスだけが分散データセットのローカルコピーを記憶する。
一部の実施形態では、分散データセット(合意ベース(consensus−based)の分散データベースなど)において変更を加えるために、合意を達成する。他の実施形態では、合意なしで分散データセットに変更を加えることができる。分散データセットは、すべてのシステムユニット115と関連付けられていてもよく、システムユニット115の一部と関連付けられていてもよい。システムユニット115は、合意ベースの分散データセットに変更を提案することができる。分散データセットと関連付けられた定足数のシステムユニット115によって変更が受け入れられる場合、合意を達成することができ、変更は、関連付けられた各システムユニット115内の分散データセットの各ローカルコピーに伝搬されてもよい。よって、分散データセットの変更に関する合意は、定足数の関連付けられたシステムユニット115が変更に賛成した場合に達成することができる。定足数は関連付けられたシステムユニット115の最小多数に対応してもよい。よって、分散データセットがN個のシステムユニット115と関連付けられている場合、定足数は、Nが偶数の場合はN/2+1個の関連付けられたシステムユニット115が変更に賛成した場合に、またはNが奇数の場合は(N−1)/2+1個の関連付けられたシステムユニット115が変更に賛成した場合に達成することができる。定足数を達成するのに最小多数を必要とすることによって、2つの競合する提案を考慮するときに、少なくとも1つのシステムユニット115が両方の提案を受け取り、合意のために提案のうちの1つを選択することが保証されうる。
合意ベースの分散データセットは、分散データセットと関連付けられた任意のシステムユニット115が、分散データセットによって管理される情報(一実施形態におけるすべての情報など)を含むことを保証することができる。例えば、分散データセットはアクセスルールを含んでもよく、アクセスルールは、分散データセットと関連付けられた任意のシステムユニット115から利用できてもよい。よって、1もしくは複数の分散データセットの結果として、一実施形態では、DCS110は、サーバデバイスといった中央制御デバイスのない非集中システムに対応しうる。他の実施形態では、DCS110は、非集中システムと、(サーバデバイスといった)中央制御デバイスとの両方を含んでもよい。DCS110への変更は任意のシステムユニット115において構成することができ、変更が分散データセットと関連付けられる場合には、変更を分散データセットと関連付けられた他のシステムユニット115へ伝搬することができる。さらに、DCS110は、デバイス障害に関して、シングルポイントの障害が回避され得るようなロバスト性を呈し得る。例えば、特定のシステムユニット115に障害が発生した場合、その他のシステムユニット115は、データ損失なしで(または最小限のデータ損失で)引き続き動作することができる。さらに、DSC110は動的に変更され得る。例えば、アプリケーションを随時追加することもでき、新しいデータベースを必要に応じてシステムユニット115に記憶することもできる。
また、DCS110は分散されていないデータセットを含んでもよい。一例として、第1のシステムユニット115が、他のどのシステムユニット115にも含まれないローカルデータセットを含んでいてもよい。別の例として、第1のシステムユニット115が、ミラーリングなどの非分散方式で第2のシステムユニット115に複製されるローカルデータセットを含んでいてもよい。別の例として、第1のシステムユニット115がローカルデータセットの第1のバージョンを含み、第2のシステムユニット115がローカルデータセットの第2のバージョンを含んでいてもよい。この場合、第1のシステムユニット115はローカルデータセットの第1のバージョンを維持し、第2のシステムユニット115はローカルデータセットの第2のバージョンを維持する。別の例では、第1のシステムユニット115は分散データセットから第1のローカルデータセットを取得することができ、第2のシステムユニット115は分散データセットから第2のローカルデータセットを取得することができる。ここで、第1のローカルデータセットは第2のローカルデータセットと異なる。
ネットワーク120は、システムユニット115が相互に通信することを可能にし、かつ/または管理デバイス130が個々のシステムユニット115と通信することを可能にし得る。ネットワーク120は、1もしくは複数の回線交換網および/またはパケット交換網を含んでもよい。例えば、ネットワーク120は、ローカル・エリア・ネットワーク(LAN:local area network)、広域ネットワーク(WAN:wide area network)、メトロポリタン・エリア・ネットワーク(MAN:metropolitan area network)、公衆交換電話網(PSTN:Public Switched Telephone Network)、アドホックネットワーク、イントラネット、インターネット、光ファイバベースのネットワーク、無線ネットワーク、および/または上記または他の種類のネットワークの組み合わせを含んでもよい。
管理デバイス130は、管理者が、DCS110を構成し、DCS110の構成を変更し、DCS110から情報を受信し、かつ/またはそれ以外にDCS110を管理するために、特定のシステムユニット115に接続することを可能にし得る。管理デバイス130は、システムユニット115と通信するように構成された任意のデバイスを含んでもよい。例えば、管理デバイス130は、携帯用通信デバイス(携帯電話、スマートフォン、ファブレットデバイス、全地球測位システム(GPS:global positioning system)デバイス、および/もしくは別の種類の無線デバイスなど)、パーソナルコンピュータもしくはワークステーション、サーバデバイス、ラップトップ、タブレット、もしくは別の種類の携帯用コンピュータ、ならびに/または通信機能を備える任意の種類のデバイスを含んでもよい。
図1には環境100の例示的な構成要素が示されているが、他の実装では、環境100は、図1に示すものと比べてより少数の構成要素、異なった構成要素、異なった配置の構成要素、または追加的な構成要素を含んでもよい。加えて、または代替として、環境100内の任意の1つのデバイス(または任意のデバイス群)が、環境100内の1もしくは複数の他のデバイスによって実行されると記載した機能を実行してもよい。例えば、ある実施態様では、システムユニット115が入力デバイスおよび/または出力デバイス(例えば、キーボード/キーパッド、ディスプレイ、タッチスクリーンなど)を含んでもよく、また管理デバイス130を必要としなくてもよい。
図2は、システムユニット115の例示的な構成要素を示すブロック図である。図2に示すように、システムユニット115は、コントローラ210、および1もしくは複数の周辺デバイス230を含んでもよい。コントローラ210は、システムユニット115の動作を制御すること、他のシステムユニット115と通信すること、管理デバイス130と通信すること、かつ/または周辺デバイス230を制御することができる。コントローラ210は、バス212、プロセッサ214、メモリ216、ネットワークインターフェース218、周辺インターフェース220、および筐体222を含んでもよい。
バス212は、コントローラ210の構成要素間の通信を可能にする経路を含んでもよい。プロセッサ214は、命令を解釈し、実行する任意の種類のシングルコアプロセッサ、マルチコアプロセッサ、マイクロプロセッサ、ラッチベースのプロセッサ、および/もしくは処理ロジック(またはプロセッサ、マイクロプロセッサ、および/もしくは処理ロジックのファミリ)を含んでもよい。他の実施形態では、プロセッサ214は、ASIC、FPGA、および/または別の種類の集積回路もしくは処理ロジックを含んでもよい。
メモリ216は、プロセッサ214が実行するための情報および/もしくは命令を記憶することができる任意の種類の動的記憶デバイス、ならびに/またはプロセッサ214が使用するための情報を記憶することができる任意の種類の不揮発性記憶デバイスを含んでもよい。例えば、メモリ216は、ランダム・アクセス・メモリ(RAM:random access memory)もしくは別の種類の動的記憶デバイス、読取専用メモリ(ROM:read−only memory)デバイスもしくは別の種類の静的記憶デバイス、連想メモリ(CAM:content addressable memory)、磁気的記録メモリデバイスおよび/もしくは光学的記録メモリデバイスおよびこれらに対応するドライブ(例えばハードディスクドライブ、光ドライブなど)、ならびに/またはフラッシュメモリといった取り外し可能な形態のメモリを含んでもよい。
ネットワークインターフェース218は、コントローラ210が、有線通信リンク(例えば、導電性ワイヤ、ツイストペアケーブル、同軸ケーブル、伝送線、光ファイバケーブル、および/もしくは導波管など)、無線通信リンク(例えば、無線周波数、赤外線、および/もしくは可視光線など)、または無線通信リンクと有線通信リンクとの組み合わせを介して他のデバイスおよび/またはシステムと通信する(データの送信および/または受信を行う)送受信機(送信機および/または受信機など)を含んでもよい。ネットワークインターフェース218は、ベースバンド信号を無線周波数(RF:radio frequency)信号に変換する送信機、および/またはRF信号をベースバンド信号に変換する受信機を含んでもよい。ネットワークインターフェース218は、RF信号を送受信するためのアンテナに結合されてもよい。
ネットワークインターフェース218は、入力ポートおよび/もしくは出力ポート、入力システムおよび/もしくは出力システム、ならびに/または他のデバイスへのデータの伝送を円滑化する他の入力構成要素および出力構成要素を含む論理構成要素を含んでもよい。例えば、ネットワークインターフェース218は、有線通信のためのネットワーク・インターフェース・カード(イーサネット(登録商標)カードなど)および/または無線通信のための無線ネットワークインターフェース(例えばWiFi)カードを含んでもよい。また、ネットワークインターフェース218は、ケーブル上の通信のためのユニバーサル・シリアル・バス(USB:universal serial bus)ポート、Bluetooth(登録商標)無線インターフェース、RFID(radiofrequency identification)インターフェース、近距離無線通信(NFC:near‐field communication)インターフェース、および/またはある形式から別の形式へデータを変換する任意の他の種類のインターフェースを含んでもよい。
周辺インターフェース220は、1もしくは複数の周辺デバイス230と通信するように構成されてもよい。例えば、周辺インターフェース220は、入力ポートおよび/または出力ポート、入力システムおよび/または出力システム、ならびに/または周辺デバイス230へのデータの伝送を円滑化する他の入力構成要素および出力構成要素を含む1もしくは複数の論理構成要素を含んでもよい。一例として、周辺インターフェース220は、SPI(Serial Peripheral Interface)バスプロトコル(例えばWiegandプロトコル、RS‐485プロトコルおよび/または他の種類のプロトコル)を用いて周辺デバイス230と通信することができる。別の例として、周辺インターフェース220は、異なる種類のプロトコルを使用することもできる。一実施形態では、ネットワークインターフェース218は、周辺デバイス230をコントローラ210に結合するための周辺インターフェースとして機能することもできる。
筐体222は、コントローラ210の構成要素を囲ってもよく、コントローラ210の構成要素を環境から保護することができる。一実施形態では、筐体222は、周辺デバイス230のうちの1もしくは複数を含んでもよい。別の実施形態では、筐体222は、管理デバイス130を含んでもよい。筐体222は、複数のシステムユニット115および/または複数のコントローラ210を有するシステムにおいて1つのシステムユニット115および/またはコントローラ210と他のシステムユニット115および/またはコントローラ210との境界を定義することができる。
以下で説明するように、コントローラ210は、分散システム内のデータベースの管理に関連した特定の動作を実行することができる。コントローラ210はこれらの動作を、ASICの配線回路の結果として実行することができる。コントローラ210は同時に(または代替として)、これらの動作を、プロセッサ214がメモリ216といったコンピュータ可読媒体に含まれるソフトウェア命令を実行することに応答して行うこともできる。コンピュータ可読媒体は、非一時的メモリデバイスとして定義されてもよい。メモリデバイスは、単一の物理的なメモリデバイス内に実装されてもよいし、複数の物理的なメモリデバイスにまたがって分散されて実装されてもよい。ソフトウェア命令は、別のコンピュータ可読媒体から、または別のデバイスからメモリ216に読み込まれてもよい。メモリ216に含まれるソフトウェア命令は、プロセッサ214に、本明細書に記載するプロセスを実行させることができる。よって、本明細書に記載する実装形態は、ハードウェア回路とソフトウェアとのいかなる特定の組み合わせにも限定されない。
周辺デバイス230は、コントローラ210に情報を提供し、コントローラ210によって制御され、かつ/またはそれ以外にコントローラ210と通信する1もしくは複数のデバイスを含んでもよい。例えば、周辺デバイス230は、読取デバイス240、施錠デバイス250、センサ260、および/またはアクチュエータ270を含んでもよい。図2には例示のために単一の読取デバイス240、単一の施錠デバイス250、単一のセンサ260、および単一のアクチュエータ270が示されているが、実際には、周辺デバイス230は、複数の読取デバイス240、複数の施錠デバイス250、複数のセンサ260、および/または複数のアクチュエータ270を含んでもよい。ある実施態様では、周辺デバイス230は、図2に示すデバイスのうちの1もしくは複数を含まなくてもよい。加えて、または代替として、周辺デバイス230は、図2に示されていない任意の他の種類のセキュリティデバイスを含んでもよい。
読取デバイス240は、ユーザから認証情報を読み取り、当該認証情報をコントローラ210に提供するデバイスを含んでもよい。例えば、読取デバイス240は、ユーザから英数字の個人識別番号(PIN:personal identification number)を受け取るように構成されたキーパッド、磁気ストリップまたはRFIDタグといった別の種類の記憶デバイス上にカードコードを記憶するカードを構成するカードリーダ、ユーザの指紋を読み取るように構成された指紋リーダ、ユーザの虹彩を読み取るように構成された虹彩リーダ、ユーザの声紋を記録するように構成されたマイクロフォンおよび声紋識別装置、NFCリーダ、ならびに/または別の種類の読取デバイスを含んでもよい。読取デバイス240は、認証情報を提供することのできる任意の種類のセキュリティデバイスを含んでもよく、センサ260に関連して以下で説明する任意のセンサデバイスといった1もしくは複数のセンサを含んでもよい。例えば、読取デバイス240は、顔認識に使用されるカメラおよび/または音声認識に使用されるマイクロフォンを含んでもよい。
施錠デバイス250は、コントローラ210によって制御される錠を含んでもよい。施錠デバイス250は、ドア(例えば、ドアが開閉しないようにする)、窓、HVAC通気孔、および/またはセキュアな領域への別の種類のアクセス開口部に施錠することができる。例えば、施錠デバイス250は、電磁錠、コントローラ210によって制御されるモータを備える機械錠、電気機械錠、および/または別の種類の錠を含んでもよい。さらに、施錠デバイス250は、機械、輸送車両、エレベータ、および/または電気機器の動作をロック/ロック解除することもできる。
センサ260は、感知デバイスを含んでもよい。例として、センサ260は、ドアが開いているか閉じているか感知するドアセンサ、可視光監視カメラ、赤外(IR)光監視カメラ、熱シグネチャ監視カメラ、および/もしくは別の種類の監視デバイス、例えば動きセンサ、熱センサ、圧力センサ、および/もしくは別の種類の警報センサといった警報センサ、オーディオ記録デバイス(マイクロフォンなど)、システムユニット115内部に位置する位置センサといったタンパーセンサ、ならびに/またはシステムユニット115と関連付けられたセキュリティ保護された領域内に位置する「退出要求(request‐to‐exit)」ボタン、ならびに/または別の種類のセンサデバイスを含んでもよい。
アクチュエータ270はアクチュエータデバイスを含んでもよい。一例として、アクチュエータ270は、照明デバイスを制御することができる。他の例として、アクチュエータ270は、盗難予防警報器、メッセージを再生しまたは警報信号を発生させるスピーカ、表示デバイス、センサ260を動かす(例えば、カメラもしくは他の監視デバイスの視野を制御する)モータ、例えばドア、窓、HVAC通気孔、および/もしくはセキュアな領域と関連付けられた別の開口部を開閉するためのモータ、施錠デバイス250を施錠位置もしくは開錠位置で固定するモータ、消火デバイス、ならびに/または別の種類のアクチュエータデバイスを含んでもよい。
図2には、システムユニット115の例示的な構成要素が示されているが、他の実装では、システムユニット115は、図2に示すものと比べて、より少数の構成要素、異なった構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。加えて、または代替として、システムユニット115のいずれか1つの構成要素(または構成要素群)が、システムユニット115の1もしくは複数の他の構成要素によって実行されると記載した1もしくは複数のタスクを実行してもよい。加えて、または代替として、システムユニット115の任意の構成要素(または任意の構成要素群)が、システムユニット115の1もしくは複数の他の構成要素によって実行されると記載した1もしくは複数のタスクを実行してもよい。例えば、ある実施態様では、周辺インターフェース220はネットワークインターフェースに該当してもよい。別の例として、ある実施態様では、周辺デバイス230は、周辺インターフェース220を介してではなく、ネットワークインターフェース218を介してコントローラ210に接続されてもよい。
さらに、DCS110は分散型の物理アクセス制御システムを含むが、他の実装は、物理的アクセスシステム以外のシステムを制御してもよい。一方で、DCS110は、(例えば、動作環境内に)ドアを開閉するための制御システムおよび/または建物もしくは施設への物理的アクセスを制御するための制御システムといった任意の種類の物理的アクセス制御システムを含んでもよい。またDCS110は、ファンを制御する(例えば始動または停止する)システム、建物管理システムで警報を始動させるシステム(例えば、認証失敗、認証成功など)、または産業オートメーションシステムでロボットアームを制御するシステムを含んでもよい。
図3Aおよび図3Bは、システムユニット115の例示的な機能構成要素を示すブロック図である。システムユニット115の機能構成要素は、例えば、1もしくは複数のASICの配線回路によって実装することができる。加えて、または代替として、システムユニット115の機能構成要素は、メモリ216からの命令を実行するプロセッサ214によって実装することもできる。図3Aは、システムユニット115の機能層を示す図である。図3Aに示すように、システムユニット115は、アプリケーションプログラミングインターフェース(API:application programming interface)層310、アプリケーション層320、配布層340、および記憶層350を含んでもよい。
API層310は、例えば、管理デバイス130と通信するように構成されたAPIを含む。一例として、管理者が管理デバイス130を使用してシステムユニット115にログインするときに、API層310は、管理デバイス130と通信して管理者を認証することができる。別の例として、API層310は、管理デバイス130と通信してシステムユニット115の構成を変更することもできる。API層310は、管理デバイス130からデータを受信し、当該データを配布層340および/または記憶層350に提供することができる。またAPI層310は、管理デバイス130と通信してアプリケーション層320にアプリケーションをインストールすることもできる。API層310は、様々な種類の管理者を取り扱うように構成されてもよい。例えば、API層310は、ウェブサービス管理者、Linux管理者、オープン・ネットワーク・ビデオ・インターフェース・フォーラム(ONVIF:Open Network Video Interface Forum)管理者を取り扱うAPI、および/または別の種類のAPIを含んでもよい。
アプリケーション層320は、システムユニット115上にインストールされた1もしくは複数のアプリケーションを含む。図3Bに例示的なアプリケーションを示す。図3Bに示すように、アプリケーション層320は、アクセス制御ロジックアプリケーション322、ドア制御アプリケーション324、リーダ制御アプリケーション326、イベント処理アプリケーション328、スケジュール処理アプリケーション330、および/またはデータベースマネージャアプリケーション332を含んでもよい。
アクセス制御ロジックアプリケーション322は、受信された認証情報に基づいて、また記憶されたアクセスルールに基づいて、アクセス権を付与すべきかどうか判定することができる。ドア制御アプリケーション324は、1もしくは複数のドアおよび/または関連付けられた施錠デバイス250を制御することができる。例えば、ドア制御アプリケーション324は、ドアが開いているかそれとも閉じているか、かつ/または施錠されているかそれとも開錠されているか判定することができる。そして、ドア制御アプリケーション324は、1もしくは複数のデバイスを、ドアを開きもしくは閉じるように、かつ/またはドアを施錠しもしくは開錠するように動作させることができる。リーダ制御アプリケーション326は、1もしくは複数の読取デバイス240を制御することができ、1もしくは複数の読取デバイス240から受信された認証情報を取得し、処理することができる。イベント処理アプリケーション328は、システムユニット115によって記録され、もしくは生成されたイベント、および/または別のシステムユニット115によって記録されたイベントのログを維持することができる。イベント処理アプリケーション328は、すべての(または少なくとも一部の)システムユニット115において分散されたシステムイベントログを維持するために、ローカルで記録され、または生成されたイベントがDCS110内の他のシステムユニット115に分散されることを保証することができる。よって、ログに記録されたイベントは、システムイベントログと関連付けられた任意のシステムユニット115から取得され得る。スケジュール処理アプリケーション330は、システムユニット115と関連付けられた1もしくは複数のスケジュールを管理することができる。例えば、特定のユーザグループについてのアクセスルールが、特定の時刻に基づいて変化してもよい。
データベースマネージャアプリケーション332は、グローバルデータベース354からローカルアクセスルールデータベース356および/またはローカル認証情報テーブル358を取得することができる。ある実施態様では、システムユニット115はグローバルデータベース354を含まなくてもよい。例えば、データベースマネージャアプリケーション332は、別のシステムユニット115または管理デバイス130といった別のデバイスのところのグローバルデータベース354にアクセスすることができる。さらに他の実施態様では、ローカルアクセスルールデータベース356および/またはローカル認証情報テーブル358は、別のシステムユニット115のところのグローバルデータベース354から取得され、システムユニット115に提供され得る。
(図3Bには示されていないが)他のアプリケーションがアプリケーション層320に含まれてもよい。一例として、警報アプリケーションが報告および/または警報を生成し、当該報告および/または警報を管理デバイス130(および/または別の指定されたデバイス)および/または1もしくは複数の他のシステムユニット115へ送信してもよい。別の例として、タスク固有の制御アプリケーションが、ドア開放イベント、センサイベント、アクチュエータイベント、および/または他の種類のイベントといった、システムユニット115と関連付けられたイベントを処理してもよい。
配布層340は、システムユニット115と関連付けられた1もしくは複数の分散データセットを管理することができる。例えば、配布層340は、ネットワーク120上の、他のシステムユニット115とのセキュアな接続(トランスポート層セキュリティ(TLS:Transport Layer Security)接続など)を維持することができる。さらに、配布層340は、プロトコル(PAXOSプロトコルなど)を使用して、特定の合意ベースの分散データセットの変更に関する合意を確立することができる。一例として、配布層340は、分散データセットと関連付けられた他のシステムユニット115へ変更の提案を送信することができ、他のシステムユニット115から変更のための定足数を受信することができる。別の例として配布層340は、別のシステムユニット115から受信された提案に賛成投票することもできる。さらに別の例として、配布層340は、変更に賛成投票せずに、変更についての合意に達したという指示を受信することもできる。変更についての合意の指示が受信されると、配布層340は、分散データセットのローカルコピーの変更を行うことができる。
記憶層350は、システムユニット115と関連付けられた1もしくは複数のデータセットを記憶する。記憶層350に記憶されたデータセットは、ローカルデータセットに対応してもよく、分散データセットに対応してもよい。ローカルデータセットは、ローカルデータセットを記憶する特定のシステムユニット115と関連付けられた(かつ/または特定のシステムユニット115とだけ関連付けられた)情報を記憶することができる。分散データセットは、当該分散データセットと関連付けられた他のシステムユニット115と関連付けられた情報を記憶することができる。
記憶層350に含まれうる例示的な情報が図3Bに示されている。図3Bに示すように、記憶層350は、構成データベース352、グローバルデータベース354、ローカルアクセスルールデータベース356、およびローカル認証情報データベース358を含んでもよい。
構成データベース352は、コントローラ210のハードウェア構成、コントローラ210に接続された周辺デバイス230、アプリケーション層320にインストールされたアプリケーション、および/または他の種類の構成情報といった、特定のシステムユニット115と関連付けられた構成データを記憶することができる。構成データベース352は、システムユニット115と関連付けられたアクセスエンティティのリストを記憶することができる。
グローバルデータベース354は、DCS110と関連付けられたグローバルデータベースを記憶することができる。グローバルデータベース354に記憶されうる例示的な情報については以下で図4Aを参照して説明する。ローカルアクセスルールデータベース356は、システムユニット115と関連付けられたアクセスルールを記憶することができる。ローカルアクセスルールデータベース356に記憶されうる例示的な情報については以下で図4Bを参照して説明する。ローカル認証情報データベース358は、システムユニット115と関連付けられたローカル認証情報を記憶することができる。ローカル認証情報データベース358に記憶されうる例示的な情報については以下で図4Cを参照して説明する。
図3Aおよび図3Bには、システムユニット115の例示的な機能構成要素が示されているが、他の実装では、システムユニット115は、図3Aおよび図3Bに示すものと比べて、より少数の機能構成要素、異なった機能構成要素、異なった配置の機能構成要素、または追加的な機能構成要素を含んでもよい。加えて、システムユニット115の構成要素のうちのいずれか1つ(またはいずれかの構成要素群)が、システムユニット115の1もしくは複数の他の機能構成要素によって実行されると記載した機能を実行してもよい。
図4Aは、グローバルデータベース354に記憶されうる例示的な情報の図である。図4Aに示すように、グローバルデータベース354は、1もしくは複数のグローバルデータベースエントリ410、グループテーブル420、およびアクセスルールテーブル430を含んでもよい。各グローバルデータベースエントリ410は、特定のユーザについての情報を記憶することができる。グローバルデータベースエントリ410は、行番号フィールド412、ユーザIDフィールド414、認証情報タイプフィールド416、および認証情報値フィールド418を含んでもよい。
行番号フィールド412は、グローバルデータベース354内のユーザについての特定の行を含んでもよい。ある実施態様では、同一の行番号は、一人のユーザについて複数のデータベース/テーブルにおいて使用され得る。複数のデータベース/テーブルにまたがって一人のユーザについて同一の行番号を使用することは、情報の処理および取得を簡略化し得る。ユーザIDフィールド414は、ユーザの名前、従業員番号、連絡先情報、および/または他の種類のユーザ情報といった、ユーザと関連付けられた識別情報を記憶することができる。認証情報タイプフィールド416は、カード認証情報タイプ、個人識別番号(PIN)タイプ、虹彩スキャンタイプ、指紋タイプ、声紋タイプ、および/または別の認証情報タイプといった、ユーザと関連付けられた特定の認証情報タイプを識別することができる。認証情報値418は、アクセスカード値、PIN値、虹彩スキャンデータ、指紋データ、声紋データ、および/または別の種類の認証情報タイプのデータといった、認証情報タイプと関連付けられた認証情報値を記憶することができる。ユーザは、複数の認証情報タイプと関連付けられてもよい。ある実施態様では、各認証情報タイプは、グローバルデータベース354内の別々の行を割り当てられ得る。他の実施態様では、複数の認証情報タイプは、同じ行に記憶され得る。
グループテーブル420は、各グループに属する特定のユーザと共に特定のユーザグループを識別するテーブルを含んでもよい。例えば、グループテーブル420は、技術者のユーザグループ、事務職ユーザグループ、技能者のユーザグループなどを識別することができる。各グループは、特定のアクセスルールと関連付けられ得る。アクセスルールテーブル430は、ユーザグループのアクセスルールを記憶することができる。
図4Aにはグローバルデータベース354に記憶されうる例示的なフィールドが示されているが、他の実施態様では、グローバルデータベース354は、図4Aに示すものと比べて、より少ないフィールド、異なったフィールド、異なった配置のフィールド、または追加的なフィールドを含んでもよい。
図4Bは、ローカルアクセスルールデータベース356に記憶されうる例示的な情報の図である。図4Bに示すように、ローカルアクセスルールデータベース356は、1もしくは複数のアクセスルールエントリ440を含んでもよい。各アクセスルールエントリ440は、1もしくは複数のアクセスエンティティに関して1もしくは複数のユーザについてのアクセスルール情報を記憶することができる。アクセスルールエントリ440は、行番号フィールド442、アクセスエンティティフィールド444、およびアクセスルールフィールド446を含んでもよい。
行番号フィールド442は、特定のアクセスルールと関連付けられた、グローバルデータベース354内のユーザに対応する1もしくは複数の行番号を識別することができる。ある実施態様では、行番号フィールド442は、特定のユーザグループを識別することができる。他の実施態様では、行番号フィールド442は、グローバルデータベース354内のユーザに対応する他の種類の匿名の情報(グローバルデータベース354内のユーザに割り当てられた文字列など)を記憶することができる。よって、ユーザを識別する情報はローカルアクセスルールデータベース356に記憶されなくてもよく、そして、ローカルアクセスルールデータベース356は、匿名のデータベースに該当してもよい。アクセスエンティティフィールド444は、特定のアクセスルールと関連付けられた1もしくは複数のアクセスエンティティを識別することができる。アクセスエンティティは、特定の部屋といった特定の領域、例えばドア、窓、HVAC通気孔、および/もしくは別の種類の開口部といった特定のアクセス開口部、機械、輸送車両、エレベータ、および/もしくは電気機器、ならびに/または別の種類のアクセスエンティティに該当してもよい。ある実施態様では、アクセスエンティティフィールド444は、アクセスエンティティと関連付けられた特定の施錠デバイス250を識別することができる。
アクセスルールフィールド446は、アクセスエンティティおよびユーザグループと関連付けられた1もしくは複数のアクセスルールを記憶することができる。アクセスルールは、アクセス権を付与するのに必要とされる認証情報のタイプを指定すること、アクセス権が付与される間の特定の時間を指定すること、かつ/または、アクセス権を付与するために満たされる必要のある他の条件(システムユニット115と関連付けられた特定の状態など)を指定することができる。例として、アクセスルールは、火災警報イベント時にすべてのユーザに特定のアクセスエンティティへのアクセス権を付与することができる。別の例として、アクセスルールは、システムユニット115がセキュリティ違反を検知した場合に、すべてのユーザに対してアクセスを拒否することもできる。また別の例として、アクセスルールは、同じシステムユニット115または別のシステムユニット115と関連付けられた第2のドアが閉じている場合にのみ、第1のドアへのアクセス権を付与することもできる。
図4Bにはローカルアクセスルールデータベース356に記憶されうる例示的なフィールドが示されているが、他の実施態様では、ローカルアクセスルールデータベース356は、図4Bに示されているものと比べて、より少ないフィールド、異なったフィールド、異なった配置のフィールド、または追加的なフィールドを含んでもよい。
図4Cは、ローカル認証情報データベース358に記憶されうる例示的な情報の図である。図4Cに示すように、ローカル認証情報データベース358は、1もしくは複数の認証情報エントリ450を含んでもよい。各認証情報エントリ450は、特定のユーザと関連付けられた特定の認証情報についての情報を記憶することができる。よって、特定のユーザは、複数の認証情報エントリ450と関連付けられ得る。
行番号452は、特定のユーザと関連付けられた、グローバルデータベース354内の特定の行番号を識別することができる。よって、ユーザを識別する情報がローカル認証情報データベース358に記憶されなくてもよく、そして、ローカル認証情報データベース358は、匿名のデータベースに該当してもよい。ハッシュ化された認証情報値454は、特定のユーザと関連付けられた特定のハッシュ化された認証情報値を記憶することができる。よって、実際の認証情報値は、ローカル認証情報データベース358に記憶されなくてもよい。暗号化されたローカルアクセスルール鍵456は、ローカルアクセスルールテーブル356へのローカルアクセスルール鍵を記憶することができ、ローカルアクセスルール鍵は暗号化され得る。ローカルアクセスルール鍵は、非ハッシュ化認証情報値を持続性のメモリに記憶せずに、非ハッシュ化認証情報値で暗号化されなくてもよい。読取デバイス240がユーザから認証情報値を取得すると、当該認証情報値はハッシュ化され、そしてハッシュ化された認証情報値は、認証情報エントリ450を識別するために使用され得る。次いで、非ハッシュ化認証情報値は、暗号化されたローカルアクセスルール鍵を解読するために使用され得る。そして、解読されたローカルアクセスルール鍵は、ローカルアクセスルールテーブルを解読するために使用され得る。非ハッシュ化認証情報値はシステムユニット115によって記憶されないので、システムユニット115のセキュリティが損なわれた場合、非ハッシュ化認証情報値は、損なわれたシステムユニット115から取得され得ない。
図4Cには、ローカル認証情報データベース358に記憶されうる例示的なフィールドが示されているが、他の実施態様では、ローカル認証情報データベース358は、図4Cに示されているものと比べて、より少ないフィールド、異なったフィールド、異なった配置のフィールド、または追加的なフィールドを含んでもよい。
図5は、1もしくは複数の実施形態による、グローバルデータベースからローカルデータベースを取得するためのフローチャートである。ある実施態様では、図5のプロセスはコントローラ210によって実行されてもよい。他の実施態様では、図5のプロセスの一部または全部が、コントローラ210とは別個のデバイスまたはデバイスグループ、かつ/またはコントローラ210を含む別のデバイスまたはデバイスグループによって実行されてもよい。
図5のプロセスは、グローバルデータベースへのアクセス権を取得するステップ(ブロック510)を含む。ある実施態様では、システムユニット115は、グローバルデータベースの暗号化されたコピーを含んでもよい。グローバルデータベースへのアクセス権を取得するために、コントローラ210は、管理デバイス130からパスワードを取得する必要があり得る。取得したパスワードは、グローバルデータベースを解読するための鍵を取得するのに使用され得る。他の実施態様では、グローバルデータベースは別のシステムユニット115に記憶されてもよく、そして別のシステムユニット115はパスワードを取得し、グローバルデータベースを解読することができる。コントローラ210は、その後、別のシステムユニット115のところの解読されたグローバルデータベースにアクセスすることができる。さらに他の実施態様では、グローバルデータベースは、管理デバイス130(および/またはDCS110に含まれない別のデバイス)によって維持されてもよく、そしてコントローラ210は、管理デバイス130のところのグローバルデータベースにアクセスすることができる。ローカルアクセスルールテーブルは、グローバルデータベースから取得される(ブロック520)。例えば、データベースマネージャアプリケーション332は、構成データベース352にアクセスして、どのアクセスエンティティがシステムユニット115と関連付けられているか特定することができ、そして、アクセスルールテーブル430から、特定されたアクセスエンティティに関連したアクセスルールを取得することができる。データベースマネージャアプリケーション332は、アクセスルールテーブル430から取得された情報に基づいて、ローカルアクセスルールデータベース356を生成することができる。データベースマネージャアプリケーション332は、ローカルアクセスルール鍵を生成することができ、そして、生成されたローカルアクセスルール鍵でローカルアクセスルールデータベース356を暗号化することができる。
ローカル認証情報テーブルがグローバルデータベースから取得される(ブロック530)。例えば、データベースマネージャアプリケーション332は、生成されたローカルアクセスルールデータベース356にアクセスして、ローカルアクセスルールデータベース356に含まれるアクセスルールとどのユーザが関連付けられているか、および、アクセスルールに基づいたアクセスのためにユーザごとのどの認証情報タイプが必要であるかを判定することができる。データベースマネージャアプリケーション332は、ユーザごとに行を生成することができ、そして、グローバルデータベースから、ユーザごとの認証情報値、および、ユーザと関連付けられた認証情報タイプごとの認証情報値を取得することができる。認証情報値は、ローカルアクセスルール鍵を暗号化するのに使用され得、そして、暗号化されたローカルアクセスルール鍵は、ユーザと関連付けられた行に記憶され得る。さらに、認証情報値は、SHA‐256ハッシュといった一方向ハッシュを用いてハッシュ化され得る。ここで、SHA‐256ハッシュは任意の長さの入力について256ビットのハッシュ値を生成する。他の実施態様では、異なる種類のハッシュ化プロセスを使用することができる。
他の実施態様では、システムユニット115は、認証情報値を取得せず、そして、ローカル認証情報テーブルは、例えば、別のシステムユニット115によって、または管理デバイス130によって遠隔で生成される。一例として、ある実施態様では、第1のシステムユニット115はグローバルデータベース354を含んでもよく、そして、第2のシステムユニット115はグローバルデータベース354を含まなくてもよい。第1のシステムユニット115は、第1のシステムユニット115のための、第1のローカルアクセスルールテーブル356および第1のローカル認証情報テーブル358を取得することができる。第1のシステムユニット115は、さらに、第2のシステムユニット115のための、遠隔のローカルアクセスルールテーブル356および遠隔のローカル認証情報テーブル358を取得することができる。ある実施態様では、第1のシステムユニット115は、遠隔のローカルアクセスルールテーブル356および遠隔のローカル認証情報テーブル358を第2のシステムユニット115に提供することができる。別の実施態様では、第1のシステムユニット115は、遠隔のローカルアクセスルールテーブル356および遠隔のローカル認証情報テーブル358を維持することができ、そして、第2のシステムユニット115は、第1のシステムユニット115のところの、遠隔のローカルアクセスルールテーブル356および遠隔のローカル認証情報テーブル358へのアクセスを必要とし得る。
図6は、1もしくは複数の実施形態による、グローバルデータベースを更新するためのフローチャートである。図6では、グローバルデータベースは分散データセットとして構成されており、そして、グローバルデータベースの暗号化バージョンは、当該分散データセットと関連付けられたシステムユニット115において記憶されている。ある実施態様では、グローバルデータベースは、すべてのシステムユニット115に分散され得る。他の実施態様では、いくつかのシステムユニット115がグローバルデータベースの分散データセットと関連付けられなくてもよく、よって、当該システムユニット115は、グローバルデータベースのコピーを含まなくてもよい。ある実施態様では、図6のプロセスは、コントローラ210によって実行されてもよい。他の実施態様では、図6のプロセスの一部または全部が、コントローラ210とは別個のデバイスまたはデバイスグループ、かつ/またはコントローラ210を含む別のデバイスまたはデバイスグループによって実行されてもよい。
図6のプロセスは、管理デバイスからのログインを認証するステップ(ブロック610)を含む。例えば、管理者が、グローバルデータベース354が更新される必要があると判断する。例えば、管理者は、ユーザを追加すること、ユーザの認証情報を変更すること、特定のアクセスエンティティについてのアクセスルールを変更することなどを必要とし得る。管理者は、当該管理者によって供給されたパスワードを用いて特定のシステムユニット115にログインすることができる。グローバルデータベースへの更新が受信され(ブロック620)、分散システム内の他のデバイスへ配布される(ブロック630)。例えば、システムユニット115は、管理デバイス130からグローバルデータベース354についての更新を受信することができ、そして、配布層340は当該更新を、DCS110内の他のシステムユニット115内のグローバルデータベース354のローカルコピーに配布することができる。
グローバルデータベースの関連部分が解読され(ブロック640)、そして、グローバルデータベースが更新される(ブロック650)。更新は、グローバルデータベース354のどの部分が解読される必要があるかを判定するのに使用され得る。例えば、特定の行番号412の更新は、当該特定の行番号412を含むグローバルデータベース354の一部が解読される必要があることだけを要求すればよい。同様に、グループテーブル420またはアクセスルールテーブル430への更新も、それぞれ、グループテーブル420またはアクセスルールテーブル430の解読だけを要求すればよい。グローバルデータベース354は、管理パスワードから取得されたグローバルデータベース鍵で暗号化され得る。そして、管理パスワードは管理デバイス130から受信され、グローバルデータベース鍵を取得するのに使用され得る。そして、グローバルデータベース鍵は、グローバルデータベース354の判定された関連部分を解読するのに使用され得る。解読後に、グローバルデータベース354は、受信された更新に基づいて更新され得る。同様に、更新は、更新が配布された他のシステムユニット115のところのグローバルデータベース354のローカルコピーに対しても行われ得る。
更新がローカルアクセスルールテーブルに関連したものであるかどうかの判定が行われる(ブロック655)。例えば、更新を受信した個々のシステムユニット115ごとのデータベースマネージャアプリケーション332は、更新が、当該特定のシステムユニット115と関連付けられたアクセスエンティティを含んでいたかどうか判定することができる。更新がローカルアクセスルールテーブルに関連したものである場合(ブロック655‐YES)、ローカルアクセスルールデータベース356が当該特定のシステムユニット115において更新される(ブロック660)。更新がローカルアクセスルールテーブルに関連したものでない場合(ブロック655‐NO)、処理はブロック665に進む。
更新がローカル認証情報テーブルに関連したものであるかどうかの判定が行われる(ブロック665)。例えば、更新を受信した個々のシステムユニット115ごとのデータベースマネージャアプリケーション332は、更新が、当該特定のシステムユニット115のローカルアクセスルールデータベース356に含まれるユーザを含んでいたかどうか判定することができる。更新がローカル認証情報テーブルに関連したものである場合(ブロック665‐YES)、ローカル認証情報データベース358が当該特定のシステムユニット115において更新される(ブロック670)。更新がローカル認証情報テーブルに関連したものでない場合(ブロック665‐NO)、処理はブロック680に進む。他の実施態様では、ローカルアクセスルールテーブルおよび/またはローカル認証情報テーブルは、特定のシステムユニット115に関連したユーザについてではなく、DCS110のすべてのユーザについての情報を含んでもよい。
いずれかの更新の後で、グローバルデータベースの解読された部分は除去される(ブロック680)。例えば、個々のシステムユニット115ごとのデータベースマネージャアプリケーション332は、グローバルデータベース354の解読された部分を記憶するのに使用されたメモリ空間の割り当てを解除することができる。ある実施態様では、割り当てを解除されたメモリ空間は、さらに、消去され得る。
図7は、1もしくは複数の実施形態による、ローカルアクセスルールテーブルを更新するためのフローチャートである。ある実施態様では、図7のプロセスは、コントローラ210によって実行されてもよい。他の実施態様では、図7のプロセスの一部または全部が、コントローラ210とは別個のデバイスまたはデバイスグループ、かつ/またはコントローラ210を含む別のデバイスまたはデバイスグループによって実行されてもよい。
図7のプロセスは、ローカル認証情報鍵を用いてローカル認証情報テーブルを解読するステップを含む(ブロック710)。例えば、ローカル認証情報テーブル358は、ローカル認証情報鍵を用いてローカルで暗号化され、そして更新を行うために解読され得る。ハッシュ化された認証情報値がローカル認証情報テーブルで更新される(ブロック720)。例えば、更新がユーザの認証情報値を変更する場合、新しいハッシュ化された認証情報値が生成され、そして、ユーザと関連付けられたハッシュ化された認証情報値フィールド454に記憶され得る。認証情報値が変更される場合には、ローカルアクセスルール鍵も新しい認証情報値で再暗号化され得る。よって、ローカルアクセスルール鍵がグローバルデータベースから取得され(ブロック730)、そして、ローカルアクセスルール鍵は、非ハッシュ化認証情報値で暗号化され、ローカル認証情報テーブルに記憶される(ブロック740)。
図8は、1もしくは複数の実施形態による、ローカル認証情報テーブルを更新するためのフローチャートである。ある実施態様では、図8のプロセスは、コントローラ210によって実行されてもよい。他の実施態様では、図8のプロセスの一部または全部が、コントローラ210とは別個のデバイスまたはデバイスグループ、かつ/またはコントローラ210を含む別のデバイスまたはデバイスグループによって実行されてもよい。
ローカルアクセスルールデータベース356を更新するためには、ローカルアクセスルールデータベース356を解読する必要がある。しかし、ローカルアクセスルール鍵は、ローカル認証情報データベース358において、ユーザの認証情報値を用いた暗号化バージョンにのみ記憶されているので、ローカルアクセスルール鍵はグローバルデータベースから取得される必要がある。よって、図8のプロセスは、グローバルデータベースからローカルアクセスルール鍵を取得するステップ(ブロック810)と、ローカルアクセスルール鍵でローカルアクセスルールテーブルを解読するステップ(ブロック820)とを含む。ローカルアクセスルールテーブルは更新され(ブロック830)、そして暗号化される(ブロック840)。ローカルアクセスルールテーブルが暗号化された後で、ローカルアクセスルール鍵の非暗号化バージョンは、システムユニット115から削除され得る。
図9は、1もしくは複数の実施形態による、ローカル認証情報テーブルおよびローカルアクセスルールテーブルを使用するためのフローチャートである。ある実施態様では、図9のプロセスは、コントローラ210によって実行されてもよい。他の実施態様では、図9のプロセスの一部または全部が、コントローラ210とは別個のデバイスまたはデバイスグループ、かつ/またはコントローラ210を含む別のデバイスまたはデバイスグループによって実行されてもよい。
図9のプロセスは、読取デバイスから認証情報値を取得するステップを含む(ブロック910)。例えば、ユーザは、読取デバイス240に認証情報を提供することによってアクセスエンティティへのアクセス権を要求することができる。ユーザは、一連のキーパッド文字列をキーパッドに入力すること、カードリーダの近くにアクセスカードを配置すること、虹彩スキャンリーダの前に虹彩を位置させること、指紋スキャナの上に指を配置すること、マイクロフォンに話しかけて音声サンプルを提供すること、顔認識ソフトウェアと関連付けられたカメラの方を向くこと、かつ/または別の種類の認証情報値を提供すること、のうちの1つもしくは複数を実行することができる。読取デバイス240は、キーパッドからのPIN、カードリーダからのカード値、虹彩スキャンから取得された特徴ベクトル、指紋スキャンから取得された特徴ベクトル、音声サンプルから取得された特徴ベクトル、顔認識ソフトウェアから取得された顔認識ID、および/または別の種類の認証情報値を提供することによってコントローラ210に認証情報値を提供することができる。取得された認証情報値は、特定のアクセスエンティティ(コントローラ210によって制御される特定のドアなど)と関連付けられ得る。
取得された認証情報値はハッシュ化され(ブロック920)、そして、エントリがローカル認証情報テーブルにおいて特定される(ブロック930)。例えば、アクセス制御ロジック322は、取得された認証情報値をハッシュ化し、そして、ハッシュ化された認証情報値と一致する、ローカル認証情報データベース358内の認証情報エントリ450を探し出そうと試みることができる。一致するエントリが見つからない場合、アクセスは拒否される。加えて、または代替として、一致するエントリが見つからない場合、警報、ユーザへのエラーメッセージ、および/または別の種類のイベントが生成されてもよい。さらに、状況によっては、たとえ一致するエントリが見つからない場合でもアクセス権を付与することができ、そして、付与されたアクセス権と関連して、警報、ログイベント、および/または別の種類のイベントが生成され得る。
一致するエントリが見つかった場合、一致したエントリと関連付けられた使用IDが特定される(ブロック940)。例えば、アクセス制御ロジック322は、特定されたローカル認証情報エントリ450と関連付けられた行番号を特定することができる。行番号は、ローカルアクセスルールデータベース356内のユーザについてのエントリを識別するのに使用され得る。
特定された認証情報エントリ450に記憶されたローカルアクセスルール鍵が、取得された非ハッシュ化認証情報値を用いて解読され(ブロック950)、そして、ローカルアクセスルールテーブルが、解読されたローカルアクセスルール鍵で解読される(ブロック960)。例えば、アクセス制御ロジック322は、非ハッシュ化認証情報値でローカルアクセスルール鍵を解読することができる。非ハッシュ化認証情報値は、システムユニット115によって記憶されなくてもよい。例えば、非ハッシュ化認証情報値は、読取デバイス240から取得され、ローカルアクセスルール鍵を解読するのに使用され、次いで、システムユニット115から削除され得る。アクセス制御ロジック322は、次いで、解読されたローカルアクセスルール鍵でローカルアクセスルールデータベース356を解読することができる。解読されたローカルアクセスルールテーブルを使用し、1もしくは複数のアクセスルールを適用して、アクセス権を付与すべきかどうかが判定される(ブロック970)。例えば、アクセス制御ロジック322は、ローカルアクセスルールデータベース356に、特定されたユーザについてのエントリが存在するかどうか判定することができる。特定されたユーザについてのエントリが存在しない場合、アクセスは拒否される。取得された認証情報値と関連付けられたアクセスエンティティで、ユーザについてのエントリが特定された場合、アクセスルールがユーザへのアクセス権を付与するかどうかの判定が行われる。一例として、アクセスルールは、認証情報値の特定の組み合わせ(カード値とPINなど)が受信される場合に、ユーザがアクセス権を付与されるべきであると指定することができる。別の例として、アクセスルールは、特定の時刻および/または特定の曜日に、ユーザがアクセス権を付与されるべきであると指定することができる。別の例として、アクセスルールは、別のユーザが存在する場合に限り(例えば、当該別のユーザから受信された認証情報値に基づいて)、ユーザがアクセス権を付与されるべきであると指定することができる。別の例として、アクセスルールは、別のデバイスが特定の状態にある(例えば、別のシステムユニット115と関連付けられたドアセンサが、ドアが閉じていることを示している)場合に限り、ユーザがアクセス権を付与されるべきであると指定することができる。ユーザがアクセス権を付与された場合、ドア制御ロジックアプリケーション324(および/または別のアクセス制御アプリケーション)は、施錠デバイス250を開錠することができ、また、アクチュエータデバイス270を動作させてドアを開けたり、エレベータなどといった特定のデバイスを作動させることができる。ある実施態様では、アクセスルールが満たされない場合、ローカルアクセスルールデータベース356に記憶された情報に基づいて、アクセス権が付与されなかった理由を説明するメッセージがユーザに提供され得る。
図10は、システムユニット115の例示的な物理的レイアウト1000を示す平面図である。図10に示すように、物理的レイアウト1000は、壁1010、ドア1020、コントローラ210、読取デバイス240、施錠デバイス250、センサ260、およびアクチュエータ270を含んでもよい。
壁1010は、建物内の部屋といったセキュアな領域1030を取り囲む。ドア1020は、ユーザのセキュアな領域1030へのアクセスを可能にする。この実施形態では、コントローラ210は、セキュアな領域1030の内部に設置されている。他の実施形態では、コントローラ210は、セキュアでない領域に設置されてもよい。読取デバイス240は、セキュアな領域1030の外部に設置されており、施錠デバイス250はセキュアな領域1030内部で壁1010とドア1020とに設置されている。センサ260は、この例では、セキュアな領域1030外部に取り付けられた監視デバイスである。アクチュエータ270は、この例の監視デバイスの視野を制御するのに使用されるモータを含む。
ユーザが(例えば、PINを入力する、アクセスカードをスキャンする、虹彩をスキャンするなどによって)読取デバイス240に認証情報を入力すると、コントローラ210は認証情報を使用してユーザの身元を認証することができ、そして、ローカル認証情報テーブル358内で、さらに続けて、ローカルアクセスルールデータベース356で検索を実行して、ユーザの身元およびアクセスルールに基づいてユーザにアクセスを許可すべきかどうか判定することができる。コントローラ210が、アクセスが許可されるべきであると判定した場合、コントローラ210は施錠デバイス250を作動させてドア1020を開錠して、ユーザにセキュアな領域1030へのアクセスを許可する。
図10には、物理的レイアウト1000の例示的な構成要素が示されているが、他の実装では、物理的レイアウト1000は、図10に示すものと比べて、より少数の構成要素、異なった構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。加えて、または代替として、物理的レイアウト1000内のいずれか1つの構成要素(または構成要素群)が、物理的レイアウト1000の1もしくは複数の他の構成要素によって実行されると記載した1もしくは複数のタスクを実行してもよい。
図11は、DCS110の例示的な物理的レイアウト1100を示す平面図である。図11に示すように、物理的レイアウト1100は、部屋1120‐A〜部屋1120‐Fを有する建物1110、および高リスク領域1130を含んでもよい。イーサネット(登録商標)ネットワークといったローカルネットワーク1130が、システムユニット115‐A〜システムユニット115‐Hを相互接続してもよい。この例では、システムユニット115‐Aは部屋1120‐Aに通じるドアを制御する。システムユニット115‐Bは部屋1120‐Bに通じる外側のドアを制御する。システムユニット115‐Cは部屋1120‐Bから部屋1120‐Cへの1つのドアを制御する。システムユニット115‐Dは部屋1120‐Cから部屋1120‐Dへの1つのドアを制御する。システムユニット115‐Eは部屋1120‐Dから部屋1120‐Eへの1つのドアを制御する。システムユニット115‐Fは部屋1120‐Fに通じる外側のドアを制御する。システムユニット115‐Gは部屋1120‐Eに通じる1つのドアと、部屋1120‐Aに通じる1つのドアとを制御する。システムユニット115‐Hは高リスク領域1130に通じるドアを制御する。高リスク領域1130は、建物1110の外部に位置してもよく、よって、セキュリティリスクが高いとみなされうる。
この例では、システムユニット115‐A〜システムユニット115‐Hは、中央制御デバイス(サーバなど)を含まず、そして1もしくは複数の分散データセットを含んでもよい。例えば、システムユニット115‐A〜システムユニット115‐Hは、分散されたグローバルデータベース、および/または分散されたイベントログを保持することができる。管理者が管理デバイス130を使用してシステムユニット115‐Aにログインして、ユーザを追加し、そして、ユーザと関連付けられた認証情報を追加するものと仮定する。当該追加される認証情報は、図5〜図8に記載のプロセスを介してユーザがアクセスできる部屋に通じるドアを制御する他のシステムユニット115に配布され得る。
図11には、物理的レイアウト1100の例示的な構成要素が示されているが、他の実装では、物理的レイアウト1100は、図11に示すものと比べて、より少数の構成要素、異なった構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。例えば、別の実施形態では、中央制御デバイス(サーバなど)が、1もしくは複数の分散データセットと併用されてもよい。加えて、または代替として、物理的レイアウト1100の1もしくは複数の構成要素が、物理的レイアウト1100の1もしくは複数の他の構成要素によって実行されると記載した1もしくは複数のタスクを実行してもよい。
図12A〜図12Dは、図11に記載したシステムのためのグローバルデータベースの例示的な実施態様を示す図である。図12Aには、グローバルデータベースが分散データセットに該当する、グローバルデータベース実施態様1210が示されている。グローバルデータベース実施態様1210では、各システムユニット115は、グローバルデータベース354のローカルコピーを含み、そして、ローカルアクセスルールデータベース356およびローカル認証情報データベース358をグローバルデータベース354から取得する。
図12Bは、特定のシステムユニット115が別のシステムユニット115のための、ローカルアクセスルールデータベース356およびローカル認証情報テーブル358を取得する、グローバルデータベース実施態様1220を示す。例えば、システムユニット115‐Hは高リスク領域1130に位置するので、システムユニット115‐Hはグローバルデータベース354なしで構成されうる。代わりに、システムユニット115‐A(またはシステムユニット115‐A〜システムユニット115‐Gのうちの別のもの)がシステムユニット115‐Hのための、ローカルアクセスルールデータベース356‐Hおよびローカル認証情報データベース358‐Hを取得することができ、そして、ローカルアクセスルールデータベース356‐Hおよびローカル認証情報データベース358‐Hをシステムユニット115‐Hに提供することができる。
図12Cには、1つのシステムユニット115がグローバルデータベース354を記憶し、そして、他のシステムユニット115がグローバルデータベース354にアクセスすることを可能にする、グローバルデータベース実施態様1230が示されている。例えば、システムユニット115‐Aは、グローバルデータベース354を記憶することができ、そして、ローカルアクセスルールデータベース356‐Aおよびローカル認証情報データベース358‐Aをグローバルデータベース354から取得することができる。システムユニット115‐Bは、システムユニット115‐Aのところのグローバルデータベース354にアクセスすることによって、ローカルアクセスルールデータベース356‐Bおよびローカル認証情報データベース358‐Bをグローバルデータベース354から取得することができる。同様に、システムユニット115‐C〜システムユニット115‐Hも、システムユニット115‐Aのところのグローバルデータベース354にアクセスすることによって、ローカルアクセスルールデータベース356‐C〜356‐Hおよびローカル認証情報データベース358‐C〜358‐Hをグローバルデータベース354から取得する。あるいは、図12Bと同様に、システムユニット115‐Aがシステムユニット115‐Hのための、ローカルアクセスルールデータベース356‐Hおよびローカル認証情報データベース358‐Hを取得し、そして、ローカルアクセスルールデータベース356‐Hおよびローカル認証情報データベース358‐Hをシステムユニット115‐Hに提供してもよい。
図12Dには、管理デバイス130がグローバルデータベース354を記憶し、そして各システムユニット115がグローバルデータベース354にアクセスすることを可能にする、グローバルデータベース実施態様1240が示されている。よって、システムユニット115‐A〜システムユニット115‐Hは、管理デバイス130のところのグローバルデータベース354にアクセスすることによって、それぞれ、ローカルアクセスルールデータベース356‐A〜356‐Hおよびローカル認証情報データベース358‐A〜358‐Hをグローバルデータベース354から取得する。
図13A〜図13Cは、1もしくは複数の実施形態による例示的なデータベース使用シナリオの図である。図13Aには、図11に示したシステムについてのグローバルデータベース354の一部が示されている。図13Aには示されていないが、グローバルデータベース354は、また、グループテーブル420および/またはアクセスルールテーブル430も含んでもよい。図13Aに示すように、グローバルデータベース354は、各行において、特定のユーザについての、特定の認証情報タイプおよび対応する認証情報値を記憶することができる。図13Aには例示のために行ID=21と関連付けられたユーザについて複数の行が示されているが、実際には、行ID=21のユーザについての異なる認証情報タイプはグローバルデータベース354の同じ行に記憶され得る。図13A〜図13Cでは、グローバルデータベース354の行IDが匿名のユーザ識別子として使用されているが、他の実施態様では、異なる種類の匿名のユーザ識別子が使用されてもよい。
図13Bにはシステムユニット115‐Gのためのローカルアクセスルールデータベース356‐Gが示されている。図11に示すように、システムユニット115‐Gは、2つのドア、すなわち、部屋1120‐Eに通じるドアと部屋1120‐Aに通じるドアとを制御することができる。よって、ローカルアクセスルールデータベース356‐Gがグローバルデータベース354から取得されるときには、部屋1120‐Aおよび部屋1120‐Eと関連付けられたアクセスルールが含まれうる。図13Bにはローカルアクセスルールデータベース356‐G内の4つのエントリが示されている。第1のエントリは、すべてのユーザが午前8時から午後5時までの間にアクセスカードを用いて部屋1120‐Eにアクセスすることができると指定している。第2のエントリは、グローバルデータベース内の行21、行55、および行76と関連付けられたユーザが、非営業時間中に、アクセスカードおよびPINの組み合わせを用いて部屋1120‐Eにアクセスすることができると指定している。第3のエントリは、グローバルデータベース内の行44、行55、行66、および行78と関連付けられたユーザが、いつでも虹彩スキャンを用いて部屋1120‐Aにアクセスすることができると指定している。第4のエントリは、グローバルデータベース内の行33、行44、および行66と関連付けられたユーザが、午後5時から午前8時までの間に、アクセスカードおよび虹彩スキャンの組み合わせを用いて部屋1120‐Aにアクセスすることができると指定している。
図13Cには、システムユニット115‐Gのためのローカル認証情報データベース358‐Gが示されている。図13Cには、ローカル認証情報データベース358‐G内の4つのエントリが示されている。第1のエントリは、グローバルデータベースの行ID=21と関連付けられたユーザのハッシュ化カード認証情報値、および非ハッシュ化認証情報値(値40APCE)で暗号化されたローカルアクセスルール鍵を含む。第2のエントリは、グローバルデータベースの行ID=21と関連付けられたユーザについての、カード認証情報値とPINの組み合わせであるハッシュ化された値、および、カード認証情報値40APCEとPIN値1234との組み合わせである鍵で暗号化されたローカルアクセスルール鍵を含む。第3のエントリは、グローバルデータベースの行ID=44と関連付けられたユーザの虹彩スキャン値のハッシュ化バージョン、および、非ハッシュ化虹彩スキャン認証情報値で暗号化されたローカルアクセスルール鍵を含む。第4のエントリは、グローバルデータベースの行ID=44と関連付けられたユーザについての、カード認証情報値と虹彩スキャン値の組み合わせであるハッシュ化された値、および、行ID=44のユーザについての、カード認証情報値と虹彩スキャン値の組み合わせである鍵で暗号化されたローカルアクセスルール鍵を含む。
行ID=21のユーザが非営業時間中に部屋1120‐Eにアクセスすることを希望しているものと仮定する。ユーザは、部屋1120‐Eのドアに隣接した読取デバイス240に自分のカードをかざし、そして、読取デバイス240はカードから40APCEというカード認証情報値を取得する。読取デバイス240は、40APCEというカード認証情報値をシステムユニット115‐Gのコントローラ210に提供する。コントローラ210は、読取デバイス240が部屋1120‐Eと関連付けられていると判定する。コントローラ210は、認証情報値をハッシュ化し、そして、ハッシュ化された値と一致するローカル認証情報データベース358‐G内のエントリを特定する。コントローラ210は、行ID=21のユーザを特定し、そして、取得した40APCEという認証情報値を使用してローカルアクセスルール鍵を解読する。コントローラ210は、次いで、解読されたローカルアクセスルール鍵を使用してローカルアクセスルールデータベース356‐Gを解読する。
ローカルアクセスルールデータベース356‐Gが解読されると、コントローラ210は、行21のユーザを含む、部屋1120‐Eについてのエントリを特定する。コントローラ210は複数のエントリ(第1のエントリおよび第2のエントリ)を特定することができるので、コントローラ210は、現在時刻に基づいて第2のエントリを選択する。コントローラ210は、カード認証情報値とPINの両方をユーザが提供する必要があると判定する。ユーザはPINを提供しなかったので、ユーザにアクセス権は付与されない。ある実施態様では、例えば、PINを入力する必要があることをユーザに知らせることによって、アクセス権が付与されなかった理由をユーザに知らせることができる。ユーザがカードを再度スキャンさせ、特定の時間内にPINを入力した場合、プロセスは繰り返され、そして、部屋1120‐Eに通じるドアがコントローラ210によって開かれる。
以上の明細書では、添付の図面を参照して様々な好適な実施形態を説明した。しかし、添付の特許請求の範囲に記載される本発明のより広い範囲から逸脱することなく、実施形態に様々な改変および変更を加えることができ、追加的な実施形態を実現することができることは明らかであろう。本明細書および図面は、したがって、限定としてではなく例示とみなされるべきである。
例えば、図5〜図9に関連して一連のブロックが記載されているが、各ブロックの順序は、他の実装では変更されてもよい。さらに、非依存のブロックは並列に実行されてもよい。
前述のシステムおよび/または方法は、各図に示す実装形態において、多くの異なる形態のソフトウェア、ファームウェア、およびハードウェアで実装されうることが理解されるであろう。これらのシステムおよび方法を実装するのに使用される実際のソフトウェアコードまたは専用の制御ハードウェアは、各実施形態を限定するものではない。よって、システムおよび方法の動作および挙動は、特定のソフトウェアコードを参照せずに記載された。すなわち、ソフトウェアおよび制御ハードウェアは、本明細書の記載に基づくシステムおよび方法を実装するように設計することができることが理解される。
さらに、前述のある特定の部分が、1もしくは複数の機能を実行する構成要素として実装されてもよい。構成要素とは、本明細書で使用する場合、プロセッサ、ASIC、FPGAといったハードウェア、またはハードウェアとソフトウェアの組み合わせ(ソフトウェアを実行するプロセッサなど)を含んでもよい。
「comprises」および「comprising」という用語は、本明細書で使用する場合、記述される特徴、整数、ステップまたは構成要素の存在を指定するが、しかし1もしくは複数の他の特徴、整数、ステップ、構成要素またはそのグループの存在または追加を排除するものではない。
本出願で使用されるいかなる要素、動作、または命令も、特に明示しない限り、実施形態にとって不可欠または本質的であると解釈すべきではない。また、冠詞の「a」は1もしくは複数の項目を含むことが意図されている。さらに、「〜に基づいて(based on)」という句は、特に明示しない限り、「少なくとも一部は〜に基づいて」を意味するものである。

Claims (26)

  1. コントローラデバイスによって実行される方法であって、
    前記コントローラデバイスにより、複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースにアクセスするステップと、
    ここで、前記コントローラデバイスは、前記複数のコントローラデバイスを含む分散システムに属し、
    前記グローバルデータベースは、前記分散システム内の合意ベースの分散データセットに対応し、複数のエンティティへのアクセス権を付与するための、ユーザおよびアクセスルールを特定し、
    前記コントローラデバイスにより、前記グローバルデータベースからローカルアクセスルールテーブルを取得するステップと、
    ここで、前記コントローラデバイスと関連付けられたエンティティへのアクセス権を付与するか否かを判定するために、前記コントローラデバイスは、前記ローカルアクセスルールテーブルを使用し、
    前記コントローラデバイスは、前記ローカルアクセスルールテーブルを記憶し、
    前記ローカルアクセスルールテーブルは、複数のユーザをリストにし、かつ、関連付けられた前記エンティティにアクセスする、それぞれの対応するユーザについてのルールを前記コントローラデバイスと関連付け、
    前記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化され、
    前記コントローラデバイスにより、前記グローバルデータベースからローカル認証情報テーブルを取得するステップと、
    ここで、前記ローカル認証情報テーブルは、前記複数のユーザの各々を、対応するハッシュ化された認証情報と関連づけ、
    前記ローカル認証情報テーブルは、前記複数のユーザの各々のために、対応するユーザと関連付けられた、対応するハッシュ化されていない認証情報で暗号化された前記ローカルアクセスルール鍵を記憶し、
    記コントローラデバイスにより、読取デバイスから認証情報値を受信するステップと、
    前記複数のユーザのうちの一人と関連付けられた、ハッシュ化された認証情報が前記取得されたローカル認証情報テーブルに存在するときに、前記取得されたローカル認証情報テーブルにリストされた前記複数のユーザの中から、前記受信された認証情報値に基づいて、前記複数のユーザのうちの一人を前記コントローラデバイスにより特定するステップと、
    ここで、前記対応する、ハッシュ化されていない認証情報は、前記複数のユーザのうちの一人を特定する前に前記複数のユーザのうちの対応する一人と関連付けられるように、前記コントローラデバイスに記憶されておらず、
    前記ユーザについてのアクセスルールエントリが前記取得されたローカルアクセスルールテーブルに存在するときに、前記コントローラデバイスにより、前記取得されたローカルアクセスルールテーブルに基づいて、前記複数のユーザのうちの前記特定された一人と関連付けられた1もしくは複数のアクセスルールを実行するステップと
    を含む方法。
  2. 前記受信された認証情報値をハッシュ化するステップと、
    前記ローカル認証情報テーブルに前記ハッシュ化された認証情報値についての認証情報エントリが存在するかどうか判定するステップと、
    前記ローカル認証情報テーブルに前記ハッシュ化された認証情報値についての前記認証情報エントリが存在するときに、前記ローカル認証情報テーブル内で前記受信された認証情報値と関連付けられた前記複数のユーザのうちの一人を特定するステップと
    をさらに含む、請求項1に記載の方法。
  3. 前記受信された認証情報値を用いて、前記認証情報エントリと関連付けられた前記ローカルアクセスルール鍵を解読するステップと、
    前記解読されたローカルアクセスルール鍵を用いて前記ローカルアクセスルールテーブルを解読するステップと、
    前記複数のユーザのうちの一人について前記解読されたローカルアクセスルールテーブルに前記アクセスルールエントリが存在するかどうか判定するステップと
    をさらに含む、請求項2に記載の方法。
  4. 管理デバイスから前記グローバルデータベースへの更新を受信するステップと、
    前記複数のコントローラデバイスのうちの他のコントローラデバイスに前記更新を配布するステップと、
    前記受信された更新を用いて前記グローバルデータベースを更新するステップと、をさらに含み、
    前記グローバルデータベースは、前記複数のコントローラデバイスのうちの前記他のコントローラデバイスにおいて更新される、請求項1に記載の方法。
  5. 前記コントローラデバイスにより前記グローバルデータベースを記憶するステップと、
    前記複数のコントローラデバイスが前記グローバルデータベースにアクセスすることを可能にするステップと、をさらに含む、請求項1に記載の方法。
  6. 前記コントローラデバイスは、前記グローバルデータベースの前記合意ベースの分散データセットのメンバーではなく、
    前記グローバルデータベースは、前記複数のコントローラデバイスのうちの別のコントローラデバイスに記憶され、
    前記グローバルデータベースへのアクセス権を取得するステップは、別のコントローラデバイスにおいて前記グローバルデータベースにアクセスするステップを含む、請求項1に記載の方法。
  7. 前記グローバルデータベースについての更新を取得するステップと、
    記更新が前記ローカルアクセスルールテーブルまたは前記ローカル認証情報テーブルの少なくとも一方に関連したものであると判定するステップと、
    前記更新が前記ローカルアクセスルールテーブルまたは前記ローカル認証情報テーブルに関連したものであると判定したことに基づいて、前記更新されたグローバルデータベースを用いて、前記ローカルアクセスルールテーブルまたは前記ローカル認証情報テーブルの少なくとも一方を更新するステップと
    をさらに含む、請求項1に記載の方法。
  8. 前記ローカル認証情報テーブルはローカル認証情報鍵を用いて暗号化され、
    前記方法は、
    前記ローカル認証情報鍵を用いて前記ローカル認証情報テーブルを解読するステップと、
    前記ローカル認証情報テーブル内のハッシュ化された認証情報値を更新するステップと、
    記グローバルデータベースから暗号化されていないローカルアクセスルール鍵を取得するステップと、
    前記ローカルアクセスルール鍵をハッシュ化されていない認証情報値で暗号化するステップと、
    をさらに含み、
    前記暗号化されたローカルアクセスルール鍵は前記ハッシュ化された認証情報値と関連付けられる、請求項に記載の方法。
  9. 記グローバルデータベースから暗号化されていないローカルアクセスルール鍵を取得するステップと、
    前記取得した暗号化されていないローカルアクセスルール鍵を用いて前記ローカルアクセスルールテーブルを解読するステップと、
    前記ローカルアクセスルールテーブルを更新するステップと、
    前記更新されたローカルアクセスルールテーブルを暗号化するステップと
    をさらに含む、請求項に記載の方法。
  10. 前記ローカルアクセスルールテーブルは、特定のアクセス位置を、ユーザの特定のグループおよびアクセスルールの特定の集合と関連付ける、請求項1に記載の方法。
  11. 前記複数のコントローラデバイスのうちの別のコントローラデバイスのために前記グローバルデータベースから遠隔のローカルアクセスルールテーブルを取得するステップと、
    前記別のコントローラデバイスのために前記グローバルデータベースから遠隔のローカル認証情報テーブルを取得するステップと、
    前記別のコントローラデバイスが、前記遠隔のローカルアクセスルールテーブルおよび前記遠隔のローカル認証情報テーブルにアクセスすることを可能にするステップと
    をさらに含む、請求項1に記載の方法。
  12. ユーザは、前記グローバルデータベースにおいてグローバルデータベース行番号と関連付けられており、
    前記ユーザは、前記ローカルアクセスルールテーブルにおいて前記グローバルデータベース行番号と関連付けられており、
    前記ユーザは、前記ローカル認証情報テーブルにおいて前記グローバルデータベース行番号と関連付けられている、請求項1に記載の方法。
  13. 前記コントローラデバイスは、高リスク領域として指定された領域内に位置し、
    他のコントローラデバイスは、高リスク領域として指定された前記領域外に位置する、請求項6に記載の方法。
  14. 前記複数のコントローラデバイスは分散型の物理アクセス制御システムに対応し、
    前記コントローラデバイスは物理アクセス制御ユニットに対応する、請求項1に記載の方法。
  15. 命令を記憶するメモリと、
    複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースにアクセスし、
    ここで、前記グローバルデータベースは、複数のエンティティへのアクセス権を付与するための、ユーザおよびアクセスルールを特定し、
    前記コントローラデバイスは、前記複数のコントローラデバイスを含む分散システムに属し、
    前記グローバルデータベースは、前記分散システム内の合意ベースの分散データセットに対応し、
    前記グローバルデータベースからローカルアクセスルールテーブルを取得し、
    ここで、前コントローラデバイスは、前記コントローラデバイスと関連付けられたエンティティへのアクセス権を付与するか否かを判定するために前記ローカルアクセスルールテーブルを使用し、
    前記コントローラデバイスは、前記ローカルアクセスルールテーブルを記憶し、
    前記ローカルアクセスルールテーブルは、複数のユーザをリストにし、かつ、関連付けられた前記エンティティにアクセスする、それぞれの対応するユーザについてのルールを前記コントローラデバイスと関連付け、
    前記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化され、
    前記グローバルデータベースから、ローカル認証情報テーブルを取得し、
    ここで、前記ローカル認証情報テーブルは、前記複数のユーザの各々を、対応するハッシュ化された認証情報関連付け、
    前記ローカル認証情報テーブルは、前記複数のユーザの各々のために、当該ユーザと関連付けられた、対応するハッシュ化されていない認証情報で暗号化された前記ローカルアクセスルール鍵を記憶し、
    取デバイスから認証情報値を受信し、
    前記複数のユーザのうちの一人と関連付けられた、ハッシュ化された認証情報が前記取得されたローカル認証情報テーブルに存在するときに、前記取得されたローカル認証情報テーブルにリストされた前記複数のユーザの中から、前記受信された認証情報値に基づいて、前記複数のユーザのうちの一人を特定し、
    ここで、前記対応する、ハッシュ化されていない認証情報は、前記複数のユーザのうちの一人を特定する前に前記複数のユーザのうちの対応する一人と関連付けられるように、前記コントローラデバイスに記憶されておらず、
    前記取得されたローカルアクセスルールテーブルに前記ユーザについてのアクセスルールエントリが存在するときに、前記取得されたローカルアクセスルールテーブルに基づいて、前記複数のユーザのうちの前記特定された一人と関連付けられた1もしくは複数のアクセスルールを実行する
    ための前記命令を実行するように構成されたプロセッサと
    を含むコントローラデバイス。
  16. 前記プロセッサは、
    前記受信された認証情報値をハッシュ化し、
    前記ローカル認証情報テーブルに前記ハッシュ化された認証情報値についての認証情報エントリが存在するかどうか判定し、
    前記ローカル認証情報テーブルに前記ハッシュ化された認証情報値についての前記認証情報エントリが存在するときに、前記ローカル認証情報テーブルで前記受信された認証情報値と関連付けられた前記複数のユーザのうちの一人を特定する
    ための前記命令を実行するようにさらに構成されている、請求項1に記載のコントローラデバイス。
  17. 前記認証情報値は、一連のキーパッド文字列、キーカードから取得された値、虹彩スキャンから取得された特徴ベクトル、音声サンプルから取得された特徴ベクトル、指紋スキャンから取得された特徴ベクトルのうちの1もしくは複数を含む、請求項15に記載のコントローラデバイス。
  18. 前記プロセッサは、
    前記受信された認証情報値を用いて、前記認証情報エントリと関連付けられた前記ローカルアクセスルール鍵を解読し、
    前記解読されたローカルアクセスルール鍵を用いて前記ローカルアクセスルールテーブルを解読し、
    前記複数のユーザのうちの一人について前記解読されたローカルアクセスルールテーブルに前記アクセスルールエントリが存在するかどうか判定する
    ための前記命令を実行するようにさらに構成されている、請求項1に記載のコントローラデバイス。
  19. 前記プロセッサは、
    管理デバイスから前記グローバルデータベースへの更新を受信し、
    前記複数のコントローラデバイスのうちの他のコントローラデバイスに前記更新を配布し、
    前記受信された更新を用いて前記グローバルデータベースを更新する
    ための前記命令を実行するようにさらに構成されており、
    前記グローバルデータベースは、前記複数のコントローラデバイスのうちの前記他のコントローラデバイスにおいて更新される、請求項15に記載のコントローラデバイス。
  20. 前記プロセッサは、
    前記コントローラデバイスにより前記グローバルデータベースを記憶し、
    複数の他のコントローラデバイスが前記グローバルデータベースにアクセスすることを可能にする
    ための前記命令を実行するようにさらに構成されている、請求項1に記載のコントローラデバイス。
  21. 前記コントローラデバイスは、前記グローバルデータベースの前記合意ベースの分散データセットのメンバーではなく、
    前記グローバルデータベースは、前記複数のコントローラデバイスのうちの別のコントローラデバイスに記憶され、
    前記プロセッサは、
    別のコントローラデバイスにおいて前記グローバルデータベースにアクセスする
    ための前記命令を実行するようにさらに構成されている、請求項15に記載のコントローラデバイス。
  22. 前記プロセッサは、
    別のコントローラデバイスのために前記グローバルデータベースから遠隔のローカルアクセスルールテーブルを取得し、
    前記別のコントローラデバイスのために前記グローバルデータベースから遠隔のローカル認証情報テーブルを取得し、
    前記別のコントローラデバイスに前記遠隔のローカルアクセスルールテーブルおよび前記遠隔のローカル認証情報テーブルを提供する
    ための前記命令を実行するようにさらに構成されている、請求項15に記載のコントローラデバイス。
  23. 前記複数のコントローラデバイスは分散型の物理アクセス制御システムに対応し、
    前記コントローラデバイスは物理的アクセス制御ユニットに対応し
    前記読取デバイスは、周辺インターフェースを介して前記コントローラデバイスに接続される、請求項15に記載のコントローラデバイス。
  24. 複数の物理的アクセスコントロールデバイスを含み、
    前記複数の物理的アクセスコントロールデバイスのうちの特定の一つは、
    複数のコントローラデバイスについてのアクセス制御情報を含むグローバルデータベースにアクセスし、
    ここで、前記グローバルデータベースは、複数のエンティティへのアクセス権を付与するための、ユーザおよびアクセスルールを特定し、
    前記複数の物理的アクセスコントロールデバイスは、分散システムに属し、
    前記グローバルデータベースは、前記分散システム内の合意ベースの分散データセットに対応し、
    前記グローバルデータベースからローカルアクセスルールテーブルを取得し、
    ここで、前記コントローラデバイスは、前記コントローラデバイスと関連付けられたエンティティへのアクセス権を付与するか否かを判定するために前記ローカルアクセスルールテーブルを使用し、
    前記コントローラデバイスは、前記ローカルアクセスルールテーブルを記憶し、
    前記ローカルアクセスルールテーブルは、複数のユーザをリストにし、かつ、関連付けられた前記エンティティにアクセスする、それぞれの対応するユーザについてのルールを前記コントローラデバイスと関連付け、
    前記ローカルアクセスルールテーブルは、ローカルアクセスルール鍵で暗号化され、
    前記グローバルデータベースから、ローカル認証情報テーブルを取得し、
    ここで、前記ローカル認証情報テーブルは、前記複数のユーザの各々を、対応するハッシュ化された認証情報と関連付け、
    前記ローカル認証情報テーブルは、前記複数のユーザの各々のために、当該ユーザと関連付けられた、対応するハッシュ化されていない認証情報で暗号化された前記ローカルアクセスルール鍵を記憶し、
    読取デバイスから認証情報値を受信し、
    前記複数のユーザのうちの一人と関連付けられた、ハッシュ化された認証情報が前記取得されたローカル認証情報テーブルに存在するときに、前記取得されたローカル認証情報テーブルにリストされた前記複数のユーザの中から、前記受信された認証情報値に基づいて、前記複数のユーザのうちの一人を特定し、
    ここで、前記対応する、ハッシュ化されていない認証情報は、前記複数のユーザのうちの一人を特定する前に前記複数のユーザのうちの対応する一人と関連付けられるように、前記コントローラデバイスに記憶されておらず、
    前記取得されたローカルアクセスルールテーブルに前記ユーザについてのアクセスルールエントリが存在するときに、前記取得されたローカルアクセスルールテーブルに基づいて、前記複数のユーザのうちの前記特定された一人と関連付けられた1もしくは複数のアクセスルールを実行する
    ように構成される、分散システム。
  25. 前記受信された認証情報値は、一連のキーパッド文字列、キーカードから取得された値、虹彩スキャンから取得された特徴ベクトル、音声サンプルから取得された特徴ベクトル、指紋スキャンから取得された特徴ベクトルのうちの1もしくは複数を含む、請求項24に記載の分散システム。
  26. 前記複数の物理的アクセスコントロールデバイスのうちの特定の一つは、
    管理デバイスから前記グローバルデータベースへの更新を受信し、
    前記複数の物理的アクセスコントロールデバイスのうちの他のコントローラデバイスに前記更新を配布し、
    前記受信された更新を用いて前記グローバルデータベースを更新する
    ようにさらに構成されており、
    前記グローバルデータベースは、前記複数の物理的アクセスコントロールデバイスのうちの前記他のコントローラデバイスにおいて更新される、請求項24に記載の分散システム。
JP2014187512A 2013-09-16 2014-09-16 アクセス制御システムにおける匿名の決定 Active JP6247618B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/028,236 US9860216B2 (en) 2013-09-16 2013-09-16 Anonymous decisions in an access control system
US14/028,236 2013-09-16

Publications (3)

Publication Number Publication Date
JP2015057884A JP2015057884A (ja) 2015-03-26
JP2015057884A5 JP2015057884A5 (ja) 2017-08-31
JP6247618B2 true JP6247618B2 (ja) 2017-12-13

Family

ID=49263125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014187512A Active JP6247618B2 (ja) 2013-09-16 2014-09-16 アクセス制御システムにおける匿名の決定

Country Status (6)

Country Link
US (1) US9860216B2 (ja)
EP (1) EP2849066B1 (ja)
JP (1) JP6247618B2 (ja)
KR (1) KR102076796B1 (ja)
CN (1) CN104468179B (ja)
TW (1) TW201528029A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10043060B2 (en) * 2008-07-21 2018-08-07 Facefirst, Inc. Biometric notification system
US9300484B1 (en) 2013-07-12 2016-03-29 Smartlabs, Inc. Acknowledgement as a propagation of messages in a simulcast mesh network
US9324203B2 (en) * 2013-10-28 2016-04-26 Smartlabs, Inc. Systems and methods to control a door keypad
US9317984B2 (en) * 2013-10-28 2016-04-19 Smartlabs, Inc. Systems and methods to control locking and unlocking of doors using powerline and radio frequency communications
US9347242B2 (en) 2013-10-28 2016-05-24 Smartlabs, Inc. Systems and methods to automatically detect a door state
US9251700B2 (en) 2013-10-28 2016-02-02 Smartlabs, Inc. Methods and systems for powerline and radio frequency communications
US10515231B2 (en) * 2013-11-08 2019-12-24 Symcor Inc. Method of obfuscating relationships between data in database tables
US9361786B2 (en) 2013-12-05 2016-06-07 Smartlabs, Inc. Systems and methods to control window coverings using powerline and radio frequency communications
US9529345B2 (en) 2013-12-05 2016-12-27 Smartlabs, Inc. Systems and methods to automatically adjust window coverings
GB2527079A (en) * 2014-06-10 2015-12-16 Paxton Access Ltd Control system
EP2996277B1 (en) * 2014-09-10 2018-11-14 Nxp B.V. Securing a crytographic device against implementation attacks
US9298899B1 (en) 2014-09-11 2016-03-29 Bank Of America Corporation Continuous monitoring of access of computing resources
CN114898482A (zh) * 2014-12-02 2022-08-12 开利公司 针对利用虚拟卡数据的进入控制系统的远程编程
US11615199B1 (en) 2014-12-31 2023-03-28 Idemia Identity & Security USA LLC User authentication for digital identifications
ES2734404T3 (es) 2015-06-15 2019-12-05 Assa Abloy Ab Caché de credenciales
US9762394B1 (en) * 2016-02-29 2017-09-12 Facefirst, Inc. Access manager
US10341298B1 (en) * 2016-03-29 2019-07-02 Amazon Technologies, Inc. Security rules for application firewalls
US10880411B2 (en) * 2016-05-23 2020-12-29 Intel Corporation Interdevice communications
JP6943011B2 (ja) * 2017-05-10 2021-09-29 富士通株式会社 認証装置、認証方法、認証プログラムおよび認証システム
JP7014008B2 (ja) * 2018-03-29 2022-02-01 株式会社リコー 情報処理システム、情報処理装置
US20210326424A1 (en) * 2018-09-18 2021-10-21 Assa Abloy Ab Determining a matching list for biometric matching
US10831917B2 (en) 2018-10-29 2020-11-10 At&T Intellectual Property I, L.P. Database system consensus-based access control
US11038881B2 (en) * 2018-11-01 2021-06-15 Cisco Technology, Inc. Anonymously generating an encrypted session for a client device in a wireless network
EP3716224B1 (en) * 2019-03-27 2023-10-25 Carrier Corporation System and method for providing secure access

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158010A (en) * 1998-10-28 2000-12-05 Crosslogix, Inc. System and method for maintaining security in a distributed computer network
CA2324679A1 (en) * 2000-10-26 2002-04-26 Lochisle Inc. Method and system for physical access control using wireless connection to a network
US7478248B2 (en) * 2002-11-27 2009-01-13 M-Systems Flash Disk Pioneers, Ltd. Apparatus and method for securing data on a portable storage device
US7647256B2 (en) 2004-01-29 2010-01-12 Novell, Inc. Techniques for establishing and managing a distributed credential store
JP2005222112A (ja) * 2004-02-03 2005-08-18 Yamaha Corp 記録再生装置
US20050171842A1 (en) * 2004-02-04 2005-08-04 Alan Tien Method and system for incentivizing the promotion of a payment service
US7676839B2 (en) 2004-03-15 2010-03-09 Xceedid Systems and methods for access control
GB2413419B (en) * 2004-04-23 2007-12-27 Hewlett Packard Development Co Digital pen system
US8015596B2 (en) 2004-06-28 2011-09-06 International Business Machines Corporation Shared credential store
US7743069B2 (en) * 2004-09-03 2010-06-22 Sybase, Inc. Database system providing SQL extensions for automated encryption and decryption of column data
US8074271B2 (en) * 2006-08-09 2011-12-06 Assa Abloy Ab Method and apparatus for making a decision on a card
US8234704B2 (en) * 2006-08-14 2012-07-31 Quantum Security, Inc. Physical access control and security monitoring system utilizing a normalized data format
US8166532B2 (en) * 2006-10-10 2012-04-24 Honeywell International Inc. Decentralized access control framework
CN101212457A (zh) * 2006-12-27 2008-07-02 鸿富锦精密工业(深圳)有限公司 网页权限管控系统及方法
US9286481B2 (en) 2007-01-18 2016-03-15 Honeywell International Inc. System and method for secure and distributed physical access control using smart cards
US8930275B2 (en) 2008-09-08 2015-01-06 Robin Heizmann Apparatuses, methods and systems for providing a virtual development and deployment environment including real and synthetic data
JP5297397B2 (ja) * 2010-01-22 2013-09-25 株式会社日立製作所 ドアセキュリティシステムおよびその制御装置
US20120169461A1 (en) 2010-12-31 2012-07-05 Schneider Electric Buildings Ab Electronic physical access control with remote authentication
GB2488514A (en) * 2011-02-11 2012-09-05 Sony Corp Rule based energy access
GB2489509A (en) * 2011-03-31 2012-10-03 Lifealike Ltd Wireless device for door entry
GB2506803B (en) * 2011-08-10 2020-07-01 Srivastava Gita Apparatus and method for enhancing security of data on a host computing device and a peripheral device
US8819855B2 (en) * 2012-09-10 2014-08-26 Mdi Security, Llc System and method for deploying handheld devices to secure an area

Also Published As

Publication number Publication date
KR20150032192A (ko) 2015-03-25
JP2015057884A (ja) 2015-03-26
CN104468179A (zh) 2015-03-25
US20150082033A1 (en) 2015-03-19
TW201528029A (zh) 2015-07-16
CN104468179B (zh) 2019-04-05
KR102076796B1 (ko) 2020-02-12
US9860216B2 (en) 2018-01-02
EP2849066A1 (en) 2015-03-18
EP2849066B1 (en) 2019-12-04

Similar Documents

Publication Publication Date Title
JP6247618B2 (ja) アクセス制御システムにおける匿名の決定
KR102101246B1 (ko) 사용자 크리덴셜들의 배포
JP6307393B2 (ja) アクセス制御システムにおける分散されたイベント
WO2016087832A1 (en) Method and device for scanning for data processing devices
JP6400990B2 (ja) 分散制御システムにおけるアプリケーションデータの管理
JP6254499B2 (ja) 分散制御システムにおける合意の欠損
JP6147234B2 (ja) 分散データベースの結合
JP2008077363A (ja) 連携制御装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170719

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170719

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20171016

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20171024

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171117

R150 Certificate of patent or registration of utility model

Ref document number: 6247618

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250