(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024010384
(43)【公開日】2024-01-24
(54)【発明の名称】シングルサインオン認証システムおよびシングルサインオン認証装置
(51)【国際特許分類】
G06F 21/41 20130101AFI20240117BHJP
G06F 21/44 20130101ALI20240117BHJP
【FI】
G06F21/41
G06F21/44
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022111692
(22)【出願日】2022-07-12
(71)【出願人】
【識別番号】300059979
【氏名又は名称】エイチ・シー・ネットワークス株式会社
(74)【代理人】
【識別番号】110002066
【氏名又は名称】弁理士法人筒井国際特許事務所
(72)【発明者】
【氏名】西野宮 浩志
(72)【発明者】
【氏名】小野 勝人
(72)【発明者】
【氏名】柴田 功克
(57)【要約】
【課題】ユーザの作業負荷を軽減することが可能なSSO認証システムおよびSSO認証装置を提供する。
【解決手段】DHCPサーバ11は、ユーザ端末TM10,TM20にIPアドレスを割り当てた際に、割り当てたIPアドレスと、ユーザ端末のMACアドレスとの対応関係をIP管理テーブル22に登録する。SSO認証サーバ12は、SSOの認証を許可するMACアドレスが予め登録される認証テーブル24を保持する。そして、SSO認証サーバ12は、ユーザ端末から認証要求を含むパケットを受信した際に、受信したパケットの送信元IPアドレスに対応するMACアドレスをDHCPサーバ11から取得し、取得したMACアドレスの認証テーブル24への登録有無に基づいて、SSOの認証許否を判定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ユーザ端末にIPアドレスを割り当てるDHCPサーバと、
ネットワークを介して前記ユーザ端末および前記DHCPサーバに接続され、前記ユーザ端末からの認証要求に応じてシングルサインオンの認証許否を判定するシングルサインオン認証サーバと、
を備え、
前記DHCPサーバは、前記ユーザ端末にIPアドレスを割り当てた際に、割り当てたIPアドレスと、前記ユーザ端末のMACアドレスとの対応関係を記憶し、
前記シングルサインオン認証サーバは、シングルサインオンの認証を許可するMACアドレスが予め登録される認証テーブルを保持し、前記ユーザ端末から前記認証要求を含むパケットを受信した際に、受信したパケットの送信元IPアドレスに対応するMACアドレスを前記DHCPサーバから取得し、取得したMACアドレスの前記認証テーブルへの登録有無に基づいて、前記シングルサインオンの認証許否を判定する、
シングルサインオン認証システム。
【請求項2】
請求項1に記載のシングルサインオン認証システムにおいて、
前記シングルサインオン認証サーバに前記ネットワークを介して接続され、前記ネットワークに接続される各種リソースを管理するためのリソース管理テーブルを保持するディレクトリサーバをさらに備え、
前記認証テーブルには、前記MACアドレスに加えて当該MACアドレスに対応するユーザ識別子が予め登録され、
前記シングルサインオン認証サーバは、前記DHCPサーバから取得したMACアドレスが前記認証テーブルに登録有りの場合、当該MACアドレスに対応する前記ユーザ識別子を前記認証テーブルから取得し、取得した前記ユーザ識別子を前記ディレクトリサーバに送信することで前記ユーザ識別子の前記リソース管理テーブルへの登録有無を判定し、前記ユーザ識別子が前記リソース管理テーブルに登録有りの場合に、前記シングルサインオンの認証を許可する、
シングルサインオン認証システム。
【請求項3】
請求項1に記載のシングルサインオン認証システムにおいて、
前記認証テーブルには、前記MACアドレスに加えて当該MACアドレスに対応するユーザ識別子が予め登録され、
前記シングルサインオン認証サーバは、前記認証テーブルに加えて、前記ネットワークに接続される各種リソースを管理するためのリソース管理テーブルを保持し、
前記シングルサインオン認証サーバは、前記DHCPサーバから取得したMACアドレスが前記認証テーブルに登録有りの場合、当該MACアドレスに対応する前記ユーザ識別子を前記認証テーブルから取得し、取得した前記ユーザ識別子の前記リソース管理テーブルへの登録有無を判定し、前記ユーザ識別子が前記リソース管理テーブルに登録有りの場合に、前記シングルサインオンの認証を許可する、
シングルサインオン認証システム。
【請求項4】
請求項1に記載のシングルサインオン認証システムにおいて、
前記シングルサインオン認証サーバは、前記ネットワークに接続される各種リソースを管理するための情報が予め登録され、当該情報の一部として前記シングルサインオンの認証を許可するMACアドレスが登録される認証管理テーブルを保持し、前記DHCPサーバから取得したMACアドレスの前記認証管理テーブルへの登録有無に基づいて、前記シングルサインオンの認証許否を判定する、
シングルサインオン認証システム。
【請求項5】
請求項4に記載のシングルサインオン認証システムにおいて、
前記認証管理テーブルには、前記シングルサインオンの認証を許可するMACアドレス毎に、前記シングルサインオンの対象とするサービスプロバイダを表すエンティティIDが予め登録されており、
前記シングルサインオン認証サーバは、前記DHCPサーバから取得したMACアドレスが前記認証管理テーブルに登録有りの場合、当該MACアドレスに対応する前記エンティティIDが表す前記サービスプロバイダへの前記シングルサインオンの認証を許可する、
シングルサインオン認証システム。
【請求項6】
請求項1~5のいずれか1項に記載のシングルサインオン認証システムにおいて、
前記ネットワークは、前記ユーザ端末と前記DHCPサーバとの間に接続され、OSI参照モデルのレイヤ3の処理を担うルータを備える、
シングルサインオン認証システム。
【請求項7】
DHCPサーバが、ユーザ端末にIPアドレスを割り当てた際に、割り当てたIPアドレスと、前記ユーザ端末のMACアドレスとの対応関係を記憶することを前提として、ネットワークを介して前記ユーザ端末および前記DHCPサーバに接続され、前記ユーザ端末からの認証要求に応じてシングルサインオンの認証許否を判定するシングルサインオン認証装置であって、
シングルサインオンの認証を許可するMACアドレスが予め登録される認証テーブルを保持する記憶部と、
前記ユーザ端末から前記認証要求を含むパケットを受信した際に、受信したパケットの送信元IPアドレスに対応するMACアドレスを前記DHCPサーバから取得するMACアドレス取得部と、
前記MACアドレス取得部で取得されたMACアドレスの前記認証テーブルへの登録有無に基づいて、前記シングルサインオンの認証許否を判定する認証判定部と、
を備える、
シングルサインオン認証装置。
【請求項8】
請求項7に記載のシングルサインオン認証装置において、
前記シングルサインオン認証装置は、前記ネットワークに接続される各種リソースを管理するためのリソース管理テーブルを保持するディレクトリサーバに、前記ネットワークを介して接続され、
前記認証テーブルには、前記MACアドレスに加えて当該MACアドレスに対応するユーザ識別子が予め登録され、
前記シングルサインオン認証装置は、さらに、
前記DHCPサーバから取得したMACアドレスが前記認証テーブルに登録有りの場合、当該MACアドレスに対応する前記ユーザ識別子を前記認証テーブルから取得するユーザ識別子取得部と、
前記ユーザ識別子取得部で取得された前記ユーザ識別子を前記ディレクトリサーバに送信することで前記ユーザ識別子の前記リソース管理テーブルへの登録有無を判定するユーザ情報検証部と、
を備え、
前記認証判定部は、前記ユーザ識別子が前記リソース管理テーブルに登録有りの場合に、前記シングルサインオンの認証を許可する、
シングルサインオン認証装置。
【請求項9】
請求項7に記載のシングルサインオン認証装置において、
前記認証テーブルには、前記MACアドレスに加えて当該MACアドレスに対応するユーザ識別子が予め登録され、
前記記憶部は、前記認証テーブルに加えて、前記ネットワークに接続される各種リソースを管理するためのリソース管理テーブルを保持し、
前記シングルサインオン認証サーバは、さらに、
前記DHCPサーバから取得したMACアドレスが前記認証テーブルに登録有りの場合、当該MACアドレスに対応する前記ユーザ識別子を前記認証テーブルから取得するユーザ識別子取得部と、
前記ユーザ識別子取得部で取得された前記ユーザ識別子の前記リソース管理テーブルへの登録有無を判定するユーザ情報検証部と、
を備え、
前記認証判定部は、前記ユーザ識別子が前記リソース管理テーブルに登録有りの場合に、前記シングルサインオンの認証を許可する、
シングルサインオン認証装置。
【請求項10】
請求項7に記載のシングルサインオン認証装置において、
前記記憶部は、前記ネットワークに接続される各種リソースを管理するための情報が予め登録され、当該情報の一部として前記シングルサインオンの認証を許可するMACアドレスが登録される認証管理テーブルを保持し、
前記認証判定部は、前記MACアドレス取得部で取得されたMACアドレスの前記認証管理テーブルへの登録有無に基づいて、前記シングルサインオンの認証許否を判定する、
シングルサインオン認証装置。
【請求項11】
請求項10に記載のシングルサインオン認証装置において、
前記認証管理テーブルには、前記シングルサインオンの認証を許可するMACアドレス毎に、前記シングルサインオンの対象とするサービスプロバイダを表すエンティティIDが予め登録されており、
前記認証判定部は、前記MACアドレス取得部で取得されたMACアドレスが前記認証管理テーブルに登録有りの場合、当該MACアドレスに対応する前記エンティティIDが表す前記サービスプロバイダへの前記シングルサインオンの認証を許可する、
シングルサインオン認証装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、シングルサインオン(SSO:Single Sign On)認証システムおよびSSO認証装置に関する。
【背景技術】
【0002】
特許文献1には、SAML(Security Assertion Markup Language)を用いたSSO後に、SSO前の情報に応じたサービスを、サービス利用者へ提供することが可能な認証システムが示される。具体的には、SP(Service Provider)サーバは、ユーザ端末からSSOのアクセスを受けた場合、ユーザ端末のSSO前の通信セッション情報をSSO前情報として情報保持部に保存し、ユーザ端末をIdP(Identify Provider)サーバへリダイレクトさせる。IdPサーバは、ユーザ端末から入力された認証情報を用いて、SSO認証DBを参照してSSO認証を行い、SSO認証の成功の場合、ユーザ端末をSPサーバへリダイレクトさせる。SPサーバは、SSO認証の成功後、SSO前情報を情報保持部から取得し、SSO前情報の内容に応じたサービスをユーザ端末へ提供する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、特許文献1に記載されるSAMLを用いる方式を代表に、1回の認証手続きで複数のWebサービスやアプリケーション等へのログインを可能にするSSO認証システムが知られている。認証手続きに際し、ユーザは、通常、ユーザ識別子およびパスワードを入力する必要がある。一方、ユーザ識別子およびパスワードの入力を省略する方式として、証明書認証や生体認証が存在する。しかしながら、証明書認証を用いる場合、被認証装置に予め証明書をインストールする作業が必要となり得る。また、生体認証を用いる場合、生体認証に対応した装置を別途設ける必要がある。
【0005】
本発明は、このようなことに鑑みてなされたものであり、その目的の一つは、ユーザの作業負荷を軽減することが可能なSSO認証システムおよびSSO認証装置を提供することにある。
【0006】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【0007】
本願において開示される発明のうち、代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。
【0008】
一実施の形態によるSSO認証システムは、ユーザ端末にIPアドレスを割り当てるDHCPサーバと、ネットワークを介してユーザ端末およびDHCPサーバに接続され、ユーザ端末からの認証要求に応じてSSOの認証許否を判定するSSO認証サーバと、を備える。DHCPサーバは、ユーザ端末にIPアドレスを割り当てた際に、割り当てたIPアドレスと、ユーザ端末のMACアドレスとの対応関係を記憶する。SSO認証サーバは、SSOの認証を許可するMACアドレスが予め登録される認証テーブルを保持する。そして、SSO認証サーバは、ユーザ端末から認証要求を含むパケットを受信した際に、受信したパケットの送信元IPアドレスに対応するMACアドレスをDHCPサーバから取得し、取得したMACアドレスの認証テーブルへの登録有無に基づいて、SSOの認証許否を判定する。
【発明の効果】
【0009】
本願において開示される発明のうち、代表的な実施の形態によって得られる効果を簡単に説明すると、ユーザの作業負荷を軽減することが可能になる。
【図面の簡単な説明】
【0010】
【
図1】実施の形態1によるSSO認証システムの構成例を示す概略図である。
【
図2】
図1におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
【
図3】
図1におけるSSO認証サーバの主要部の構成例を示すブロック図である。
【
図4】実施の形態2によるSSO認証システムの構成例を示す概略図である。
【
図5】
図4におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
【
図6】
図4におけるSSO認証サーバの主要部の構成例を示すブロック図である。
【
図7】実施の形態3によるSSO認証システムの構成例を示す概略図である。
【
図8】
図7におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
【
図9】
図7におけるSSO認証サーバの主要部の構成例を示すブロック図である。
【
図10】実施の形態4によるSSO認証システムの構成例を示す概略図である。
【
図11】
図10におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
【
図12】
図11とは異なる処理内容の一例を示すシーケンス図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【0012】
(実施の形態1)
<SSO認証システムの概略>
図1は、実施の形態1によるSSO認証システムの構成例を示す概略図である。ここでは、SSO認証システムとして、SAML方式を用いる場合を例とする。
図1に示すSSO認証システムは、DHCP(Dynamic Host Configuration Protocol)サーバ11と、SSO認証サーバ12と、ディレクトリサーバ13と、サービスプロバイダSPa,SPbと、ユーザ端末TM10,TM20とを備える。これらの装置は、互いにネットワーク10を介して接続される。
【0013】
サービスプロバイダSPa,SPbは、Webサービスやアプリケーション等を提供するサーバである。明細書では、複数のサービスプロバイダSPa,SPbを総称して、サービスプロバイダSPと呼ぶ。また、ユーザ端末TM10,TM20を総称してユーザ端末TMと呼ぶ。
【0014】
ネットワーク10は、OSI参照モデルのレイヤ2(L2)の処理を担う図示しないL2スイッチや、レイヤ3(L3)の処理を担うルータ15を備える。この例では、少なくとも、SSO認証サーバ12は、ルータ15を介して、ユーザ端末TM10,TM20を含む各装置に接続される。ルータ15は、L3スイッチであってもよく、明細書では、ルータ15とL3スイッチを特に区別しない。
【0015】
DHCPサーバ11は、ユーザ端末TMにIPアドレスを割り当てる。DHCPサーバ11は、IP管理テーブル22を保持する記憶部21を備える。記憶部21および後述する記憶部23,25は、例えば、RAMおよび不揮発性メモリの組み合わせで構成される。IP管理テーブル22には、IPアドレスとMACアドレスとの対応関係がIPアドレス割り当て情報として登録される。DHCPサーバ11は、ユーザ端末TMにIPアドレスを割り当てた際に、割り当てたIPアドレスと、ユーザ端末TMのMACアドレスとの対応関係を記憶する。
【0016】
この例では、DHCPサーバ11は、端末TM10からのIPアドレスの割り当て要求に応じてIPアドレスIPA10を割り当て、IP管理テーブル22に、IPアドレスIPA10と、端末TM10のMACアドレスMA10との対応関係を登録する。また、DHCPサーバ11は、端末TM20からのIPアドレスの割り当て要求に応じてIPアドレスIPA20を割り当て、IP管理テーブル22に、IPアドレスIPA20と、端末TM20のMACアドレスMA20との対応関係を登録する。
【0017】
SSO認証サーバ(SSO認証装置)12は、ユーザ端末TMからの認証要求に応じてSSOの認証許否を判定する。SSO認証サーバ12は、SAML方式ではIdpと呼ばれる。SSO認証サーバ12は、認証テーブル24を保持する記憶部23を備える。認証テーブル24には、SSOの認証を許可するMACアドレスが許可MACアドレス情報として予め登録される。また、認証テーブル24には、MACアドレスに加えて、当該MACアドレスに対応するユーザ識別子UIDが予め登録されてもよい。この例では、認証テーブル24には、端末TM10のMACアドレスMA10と、端末TM10を使用するユーザ14aのユーザ識別子UID10との対応関係が登録される。
【0018】
ディレクトリサーバ13は、例えば、ネットワーク10に接続される各種リソースを管理するLDAP(Lightweigth Directory Access Protocol)サーバ等である。ディレクトリサーバ13は、リソース管理テーブル26を保持する記憶部25を備える。リソース管理テーブル26には、ネットワーク10に接続される各種リソースを管理するためのリソース管理情報が予め登録される。なお、ネットワーク10を使用するためには、ネットワーク10を使用するリソースがリソース管理テーブル26に予め登録されている必要がある。
【0019】
この例では、リソース管理テーブル26には、ユーザアカウントとして、ユーザ端末TM10,TM20を使用するユーザ14a,14bのユーザ識別子UID10,UID20が予め登録される。また、リソース管理テーブル26には、コンピュータアカウントとして、プリンタやサーバ等に設定されたコンピュータ識別子も登録され得る。さらに、各アカウントには、属性情報が紐づけられる。例えば、ユーザアカウントの属性情報には、ユーザの社員番号、所属、メールアドレス等の情報や、パスワードの情報や、アクセス権限の情報といった各種ユーザ情報が含まれ得る。
【0020】
このように構成において、SSO認証サーバ12は、概略的には、ユーザ端末TMからSSOの認証要求を含むパケットを受信した際に、受信したパケットの送信元IPアドレスに対応するMACアドレスをDHCPサーバ11から取得する。そして、SSO認証サーバ12は、取得したMACアドレスの認証テーブル24への登録有無に基づいて、SSOの認証許否を判定する。
【0021】
すなわち、SSO認証サーバ12は、ユーザ端末TMのMACアドレスに基づいてSSOの認証を行い、具体的には、ユーザ端末TMからのL3のパケットを受信し、L2のMACアドレスに基づいてSSOの認証を行う。これにより、ユーザは、SSOの認証に際し、ユーザ識別子UIDおよびパスワードを入力する必要はない。その結果、ユーザの作業負荷を軽減することが可能になる。なお、SSOの認証が許可されたユーザ端末TMは、SSOの機能によって、その後もユーザ識別子UIDおよびパスワードを入力することなく複数のサービスプロバイダSPa,SPbへアクセスできる。
【0022】
また、SSO認証サーバ12は、取得したMACアドレスが認証テーブル24に登録有りの場合、当該MACアドレスに対応するユーザ識別子UIDを認証テーブル24から取得する。そして、SSO認証サーバ12は、取得したユーザ識別子UIDをディレクトリサーバ13に送信することでユーザ識別子UIDのリソース管理テーブル26への登録有無を判定し、登録有りの場合にSSOの認証を許可する。これにより、ネットワーク10の使用を許可されているユーザであることを確認した上で、SSOの認証を許可することができる。すなわち、セキュリティを向上できる。
【0023】
<SSO認証システムの動作>
図2は、
図1におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
図2において、まず、ユーザ端末TMは、DHCPサーバ11との間で所定のDHCP処理を行うことで、DHCPサーバ11からIPアドレスが割り当てられる(ステップS101)。具体的には、DHCPサーバ11は、ユーザ端末TMから、DHCPディスカバーを含んだL2のブロードキャストフレームを受信し、当該DHCPディスカバーに応答することで、ユーザ端末TMにIPアドレスを割り当てる。そして、DHCPサーバ11は、ステップS101でIPアドレスを割り当てた際に、ユーザ端末TMからのフレームに含まれるユーザ端末TMのMACアドレスと、割り当てたIPアドレスとの対応関係をIP管理テーブル22に登録する(ステップS102)。
【0024】
その後、ユーザ端末TMは、SSO認証サーバ12に、L3のパケットを用いてSSOの認証要求を送信する(ステップS103)。これに応じて、SSO認証サーバ12は、当該パケットに含まれる送信元のIPアドレスをキーにDHCPサーバ11のIP管理テーブル22を参照することで、当該IPアドレスに対応するMACアドレスをDHCPサーバ11から取得する(ステップS104)。続いて、SSO認証サーバ12は、ステップS104で取得したMACアドレスの認証テーブル24への登録有無を判定する(ステップS105)。
【0025】
ステップS105にて、MACアドレスが認証テーブル24に登録無しの場合、SSO認証サーバ12は、ユーザに、ユーザ識別子UIDおよびパスワードPWの入力を要求する(ステップS106-2)。具体的には、SSO認証サーバ12は、ユーザ端末TMに、ユーザ識別子UIDおよびパスワードPWの入力画面を表示させる。一方、ステップS105にて、MACアドレスが認証テーブル24に登録有りの場合、SSO認証サーバ12は、ステップS104で取得したMACアドレスをキーに認証テーブル24を参照する。これにより、SSO認証サーバ12は、当該MACアドレスに対応するユーザ識別子UIDを取得する(ステップS106-1)。
【0026】
続いて、SSO認証サーバ12は、ステップS106-1で取得したユーザ識別子UIDをディレクトリサーバ13に送信することで、ユーザ識別子IDのリソース管理テーブル26への登録有無を判定する(ステップS107,S108)。具体的には、SSO認証サーバ12は、例えばLDAPを用いて、ユーザ識別子UIDをディレクトリサーバ13に送信し、ディレクトリサーバ13からユーザ識別子UIDの登録有無の情報を受信する。登録有りの場合、SSO認証サーバ12は、加えてユーザ情報、すなわち属性情報も受信する(ステップS107)。SSO認証サーバ12は、受信した情報に基づいて、ユーザ識別子IDのリソース管理テーブル26への登録有無を判定する(ステップS108)。
【0027】
ステップS108にて、ユーザ識別子IDがリソース管理テーブル26に登録有りの場合、SSO認証サーバ12は、SSOの認証を許可し、ユーザ端末TMに許可応答を送信する(ステップS109-1)。一方、ステップS108にて、ユーザ識別子IDがリソース管理テーブル26に登録無しの場合、SSO認証サーバ12は、SSOの認証を拒否し、ユーザ端末TMに拒否応答を送信する(ステップS109-2)。
【0028】
図2に示した処理の具体例として、
図1におけるユーザ端末TM10が、SSO認証サーバ12に認証要求を送信した場合を想定する(ステップS103)。この場合、ユーザ端末TM10のIPアドレスIPA10に基づいてMACアドレスMA10が取得される(ステップS104)。MACアドレスMA10は、認証テーブル24に登録有りであり、MACアドレスMA10に対応するユーザ識別子UID10は、リソース管理テーブル26に登録有りである(ステップS105,S108)。このため、ユーザ端末TM10には、許可応答が送信される(ステップS109-1)。
【0029】
一方、
図1におけるユーザ端末TM20が、SSO認証サーバ12に認証要求を送信した場合を想定する(ステップS103)。この場合、ユーザ端末TM20のIPアドレスIPA20に基づいてMACアドレスMA20が取得される(ステップS104)。MACアドレスMA20は、認証テーブル24に登録無しである(ステップS105)。このため、ユーザ端末TM20、詳細にはユーザ14bには、ユーザ識別子UIDおよびパスワードPWの入力が要求される(ステップS106-2)。詳細は省略するが、ユーザ14bがユーザ識別子UIDおよびパスワードPWを入力すると、SSO認証サーバ12は、ディレクトリサーバ13内のリソース管理テーブル26と照合することで、認証許否を判定する。
【0030】
また、ステップS107において、ユーザ情報、すなわち属性情報には、例えば、2個のサービスプロバイダSPa,SPbの中の1個のサービスプロバイダSPaのみにアクセスが可能といった、アクセス権限が含まれ得る。この場合、SSO認証サーバ12は、ユーザ端末TMがサービスプロバイダSPaにアクセスする場合に限って、ステップS109-1において、許可応答を送信する。
【0031】
具体例として、SAMLでは、ユーザ端末TMが、サービスプロバイダSPaに対してアクセスを行い、サービスプロバイダSPaからユーザ端末TMを介してリダイレクトする形でステップS103における認証要求が生じ得る。SSO認証サーバ12は、ステップS107でのユーザ情報の中にサービスプロバイダSPaへのアクセス権限が含まれているため、ユーザ端末TMに許可応答を送信する。許可応答は、サービスプロバイダSPaへのアクセスを許可するための認証トークン等である。一方、SSO認証サーバ12は、ユーザ端末TMがサービスプロバイダSPbに対してアクセスを行うことで生じた認証要求に対しては、ステップS107でのユーザ情報の中にサービスプロバイダSPbへのアクセス権限が含まれていないため、ユーザ端末TMに拒否応答を送信する。
【0032】
なお、実施の形態によるSSO認証システムは、必ずしもSAML方式に限らず、例えば、リバースプロキシ方式等といった他の方式にも適用可能である。リバースプロキシ方式では、例えば、SSO認証サーバ12をリバースプロキシサーバとして、ユーザ端末TMからサービスプロバイダSPa,SPbへのアクセスが常にリバースプロキシサーバを経由して行われるように構成される。この場合、リバースプロキシサーバは、ユーザ端末TMからの認証要求に応じて
図2に示したような処理を行い、ステップS109-1における許可応答として認証済みクッキー等を送信すればよい。
【0033】
<SSO認証サーバの詳細>
図3は、
図1におけるSSO認証サーバの主要部の構成例を示すブロック図である。
図3に示すSSO認証サーバ(SSO認証装置)12は、
図1に示した認証テーブル24を保持する記憶部23に加えて、処理部30と、通信部31とを備える。処理部30は、例えば、プロセッサが記憶部23に保存される図示しない制御プログラムを実行すること等で実現される。ただし、処理部30は、これに限らず、一部または全てがFPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)等で実現されてもよい。通信部31は、例えば、イーサネット(登録商標)のインタフェース回路等によって実現される。
【0034】
処理部30は、送信元IPアドレス取得部35と、MACアドレス取得部36と、ユーザ識別子取得部37と、ユーザ情報検証部38と、認証判定部39とを備える。送信元IPアドレス取得部35は、ユーザ端末TM10からの認証要求パケットARQを、通信部31を介して受信し、当該認証要求パケットARQの送信元IPアドレスS-IPを取得する。
【0035】
MACアドレス取得部36は、取得された送信元IPアドレスS-IPに対応するMACアドレスを、通信部31を介してDHCPサーバ11から取得する。ユーザ識別子取得部37は、取得されたMACアドレスの認証テーブル24への登録有無を判定する。そして、ユーザ識別子取得部37は、MACアドレスが認証テーブル24に登録有りの場合、当該MACアドレスをキーとして認証テーブル24を参照することで、当該MACアドレスに対応するユーザ識別子UIDを取得する。
【0036】
ユーザ情報検証部38は、ユーザ識別子取得部37で取得されたユーザ識別子UIDを、通信部31を介してディレクトリサーバ13に送信することで、ユーザ識別子UIDのリソース管理テーブル26への登録有無を判定する。また、ユーザ情報検証部38は、ユーザ識別子UIDがリソース管理テーブル26に登録有りの場合、当該ユーザ識別子UIDに対応するユーザ情報IMu、すなわち属性情報をリソース管理テーブル26から取得する。
【0037】
認証判定部39は、ユーザ識別子取得部37での判定結果、すなわちMACアドレスの認証テーブル24への登録有無情報IMrに基づいて、SSOの認証許否を判定する。より望ましくは、認証判定部39は、当該登録有無情報IMrに加えて、ユーザ情報検証部38での判定結果、すなわちユーザ識別子UIDのリソース管理テーブル26への登録有無および登録有りの際のユーザ情報IMuに基づいて、SSOの認証許否を判定する。詳細には、認証判定部39は、MACアドレスが認証テーブル24に登録有り、かつ、ユーザ識別子UIDがリソース管理テーブル26に登録有りの場合に、認証許可と判定する。この際には、認証判定部39は、ユーザ情報IMuに含まれ得るアクセス権限を反映して、認証許否を判定してもよい。
【0038】
<実施の形態1の主要な効果>
以上、実施の形態1の方式では、SSO認証サーバ12は、DHCPサーバ11と連携してユーザ端末TMに割り当てられたIPアドレスに対応するMACアドレスを取得し、当該MACアドレスに基づいて、SSOの認証を行う。その結果、SSOの認証に際し、ユーザ識別子UIDやパスワードPWの入力が不要となり、証明書の準備等も不要となるため、ユーザの作業負荷を軽減することが可能になる。また、SSOの認証に際し、生体認証デバイス等も不要となるため、コストを低減することが可能になる。
【0039】
(実施の形態2)
<SSO認証システムの概略>
図4は、実施の形態2によるSSO認証システムの構成例を示す概略図である。
図4に示すSSO認証システムは、
図1に示した構成例と比較して次の2点が異なっている。1点目の相違点として、
図1におけるディレクトリサーバ13が設けられず、その代わりに、SSO認証サーバ12aが、当該ディレクトリサーバ13内のリソース管理テーブル26を記憶部23に保持する。2点目の相違点として、1点目の相違点に伴いSSO認証サーバ12aは、
図1の場合とは異なる処理を行う。
【0040】
すなわち、SSO認証サーバ12a内の記憶部23は、SSOの認証を許可するMACアドレスとユーザ識別子UIDとの対応関係を表す認証テーブル24に加えて、ネットワークに接続される各種リソースを管理するためのリソース管理テーブル26を保持する。そして、概略的には、SSO認証サーバ12aは、
図1の場合と同様に、DHCPサーバ11から取得したMACアドレスが認証テーブル24に登録有りの場合、当該MACアドレスに対応するユーザ識別子UIDを認証テーブル24から取得する。ただし、SSO認証サーバ12aは、
図1の場合と異なり、ディレクトリサーバ13と通信することなく、取得したユーザ識別子UIDのリソース管理テーブル26への登録有無を判定し、登録有りの場合に、SSOの認証を許可する。
【0041】
<SSO認証システムの動作>
図5は、
図4におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
図5において、ステップS101からステップS106-1,S106-2までの処理内容に関しては、
図2の場合と同様である。その後、ステップS108aにおいて、SSO認証サーバ(SSO認証装置)12aは、
図2の場合と異なり、ステップS107での処理を経ることなく、ステップS106-1で取得したユーザ識別子UIDのリソース管理テーブル26への登録有無を判定する。
【0042】
その後は、
図2の場合と同様に、SSO認証サーバ12aは、ユーザ識別子UIDのリソース管理テーブル26への登録有無に基づいて、ユーザ端末TMに、許可応答または拒否応答を送信する(ステップS109-1,S109-2)。なお、図示は省略されるが、SSO認証サーバ12aは、ステップS108aにてユーザ識別子UIDがリソース管理テーブル26に登録されている場合、
図2の場合と同様にして、当該ユーザ識別子UIDのユーザ情報、すなわち属性情報を適宜処理する。
【0043】
<SSO認証サーバの詳細>
図6は、
図4におけるSSO認証サーバの主要部の構成例を示すブロック図である。
図6に示されるSSO認証サーバ12aは、
図3に示した構成例と比較して次の2点が異なっている。1点目の相違点として、記憶部23は、認証テーブル24に加えて、リソース管理テーブル26を保持する。2点目の相違点として、ユーザ情報検証部38aは、
図3の場合とは異なる処理を行う。
【0044】
すなわち、ユーザ情報検証部38aは、ユーザ識別子取得部37で取得されたユーザ識別子UIDのリソース管理テーブル26への登録有無を、ディレクトリサーバ13との通信を経ることなく判定する。また、ユーザ情報検証部38aは、
図3の場合と同様に、ユーザ識別子UIDがリソース管理テーブル26に登録有りの場合、当該ユーザ識別子UIDに対応するユーザ情報IMu、すなわち属性情報をリソース管理テーブル26から取得する。
【0045】
<実施の形態2の主要な効果>
以上、実施の形態2の方式を用いることで、実施の形態1で述べた各種効果と同様の効果が得られる。さらに、SSO認証サーバ12aがリソース管理テーブル26を備えることで、ディレクトリサーバ13が不要となり、装置コストの低減や通信負荷の軽減等が実現可能になる。
【0046】
(実施の形態3)
<SSO認証システムの概略>
図7は、実施の形態3によるSSO認証システムの構成例を示す概略図である。
図7に示すSSO認証システムは、
図4に示した構成例と比較して次の点が異なっている。すなわち、SSO認証サーバ12b内の記憶部23は、認証管理テーブル45を保持する。これに伴い、SSO認証サーバ12bは、
図4の場合とは異なる処理を行う。
【0047】
認証管理テーブル45には、ネットワーク10に接続される各種リソースを管理するための情報が予め登録され、当該情報の一部としてSSOの認証を許可するMACアドレスが登録される。すなわち、認証管理テーブル45は、
図4に示した認証テーブル24とリソース管理テーブル26とを統合したようなものとなっている。SSO認証サーバ12bは、概略的には、DHCPサーバ11から取得したMACアドレスの認証管理テーブル45への登録有無に基づいて、SSOの認証許否を判定する。
【0048】
この例では、認証管理テーブル45には、ユーザアカウントであるユーザ識別子UID10に紐づけられた属性情報、すなわちユーザ情報の一つとして、SSOの認証を許可するMACアドレスMA10が登録される。この場合、SSO認証サーバ12bは、MACアドレスMA10を有するユーザ端末TM10からの認証要求を受信した際、MACアドレスによるSSOの認証を許可する。
【0049】
一方、認証管理テーブル45において、ユーザ識別子UID20の属性情報の中には、MACアドレスは登録されない。この場合、SSO認証サーバ12bは、MACアドレスMA20を有するユーザ端末TM20からの認証要求を受信した際、MACアドレスによるSSOの認証は許可しない。その代わりに、SSO認証サーバ12bは、ユーザ14bにユーザ識別子UIDおよびパスワードの入力を要求する。
【0050】
<SSO認証システムの動作>
図8は、
図7におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
図8において、ステップS101からステップS104までの処理内容に関しては、
図5の場合と同様である。その後、ステップS105aにおいて、SSO認証サーバ(SSO認証装置)12bは、ステップS104で取得したMACアドレスの認証管理テーブル45への登録有無を判定する。ただし、ステップS105aでは、
図5におけるステップS105の場合と異なり、MACアドレスが認証管理テーブル45に登録有りの際に、必然的に、ユーザ識別子UIDも認証管理テーブル45に登録有りとなる。
【0051】
その後、SSO認証サーバ12bは、MACアドレスが認証管理テーブル45に登録有りの場合、ユーザ端末TMに、許可応答を送信する(ステップS106a-1)。一方、SSO認証サーバ12bは、MACアドレスが認証管理テーブル45に登録無しの場合、ユーザ端末TMを使用するユーザに、ユーザ識別子UIDおよびパスワードPWの入力を要求する(ステップS106a-2)。なお、図示は省略されるが、SSO認証サーバ12bは、ステップS105aにてMACアドレスが認証管理テーブル45に登録有りの場合、
図2の場合と同様にして、対応するユーザ識別子UIDのユーザ情報、すなわち属性情報を適宜処理する。
【0052】
<SSO認証サーバの詳細>
図9は、
図7におけるSSO認証サーバの主要部の構成例を示すブロック図である。
図9に示されるSSO認証サーバ12bは、
図6に示した構成例と比較して次の2点が異なっている。1点目の相違点として、記憶部23は、認証管理テーブル45を保持する。2点目の相違点として、ユーザ識別子取得部37およびユーザ情報検証部38aは設けられず、
図5の場合とは異なる処理を行う認証判定部46が設けられる。
【0053】
認証判定部46は、MACアドレス取得部36で取得されたMACアドレスの認証管理テーブル45への登録有無に基づいて、SSOの認証許否を判定する。具体的には、認証判定部46は、取得されたMACアドレスをキーに認証管理テーブル45を参照することで、MACアドレスの登録有無を判定し、登録有りの場合には、対応するユーザ情報IMu、すなわちMACアドレスを除く属性情報を取得する。そして、認証判定部46は、MACアドレスが認証管理テーブル45に登録有りの場合には、SSOの認証を許可する。
【0054】
<実施の形態3の主要な効果>
以上、実施の形態3の方式を用いることで、実施の形態1,2で述べた各種効果と同様の効果が得られる。さらに、1個の認証管理テーブル45に基づいてSSOの認証を管理できるため、ネットワーク管理を効率化することが可能になる。
【0055】
(実施の形態4)
<SSO認証システムの概略>
図10は、実施の形態4によるSSO認証システムの構成例を示す概略図である。
図10に示されるSSO認証システムは、
図7の場合とほぼ同様の構成を備える。ただし、
図7の場合とは、SSO認証サーバ12c内の記憶部23が保持する認証管理テーブル45cの構成が異なっている。これに伴い、
図7の場合とは、SSO認証サーバ12cの処理内容も異なっている。
【0056】
認証管理テーブル45cには、SSOの認証を許可するMACアドレス毎に、厳密には、ユーザ識別子UID毎に、SSOの対象とするサービスプロバイダSPを表すエンティティIDが、属性情報の一つとして予め登録されている。言い換えれば、属性情報の一つとして、アクセス権限が登録されている。
図10の例では、MACアドレスMA10に対応するユーザ識別子UID10に対して、サービスプロバイダSPaのみのアクセス権限が付与されている。一方、ユーザ識別子UID20に対しては、サービスプロバイダSPa,SPbへのアクセス権限が付与されている。
【0057】
SSO認証サーバ12cは、DHCPサーバ11から取得したMACアドレスが認証管理テーブル45cに登録有りの場合、当該MACアドレスに対応するエンティティIDが表すサービスプロバイダSPへのSSOの認証を許可する。この例では、SSO認証サーバ12cは、MACアドレスMA10を有するユーザ端末TM10からの認証要求を受信した際、MACアドレスによるSSOの認証を許可し、サービスプロバイダSPaのみへのアクセスを許可する。
【0058】
一方、SSO認証サーバ12bは、MACアドレスMA20を有するユーザ端末TM20からの認証要求を受信した際、MACアドレスによるSSOの認証は許可せず、ユーザ14bにユーザ識別子UIDおよびパスワードの入力を要求する。SSO認証サーバ12bは、ユーザ14bによって正しいユーザ識別子UID20およびパスワードが入力された場合、SSOの認証を許可し、サービスプロバイダSPa,SPbへのアクセスを許可する。
【0059】
<SSO認証システムの動作>
図11は、
図10におけるSSO認証システムの主要部の処理内容の一例を示すシーケンス図である。
図12は、
図11とは異なる処理内容の一例を示すシーケンス図である。SAMLによる認証方式として、サービスプロバイダSPへのアクセスを起点とする方式と、IdpであるSSO認証サーバ12cへのアクセスを起点とする方式とが存在する。
図11は、前者の方式を表し、
図12は、後者の方式を表す。
【0060】
図11において、ステップS101,S102の処理内容に関しては、
図8の場合と同様である。その後、ステップS201において、ユーザ端末TMは、
図8の場合と異なり、サービスプロバイダSPへアクセスする。具体例として、サービスプロバイダSPaへのアクセスが生じた場合を想定する。サービスプロバイダSPaは、ユーザ端末TMからのアクセスに応じて、サービスプロバイダSPaのエンティティIDを含む認証要求を、ユーザ端末TMを介してSSO認証サーバ12cにリダイレクトさせる(ステップS103a)。
【0061】
これに伴い、SSO認証サーバ12cは、
図8の場合と同様に、当該認証要求に含まれる送信元IPアドレスに対応するMACアドレスを、DHCPサーバ11から取得する(ステップS104)。そして、SSO認証サーバ12cは、取得されたMACアドレスの認証管理テーブル45cへの登録有無を判定する(ステップS105a)。MACアドレスが認証管理テーブル45cに登録無しの場合、SSO認証サーバ12cは、ユーザ端末TMを使用するユーザに、ユーザ識別子UIDおよびパスワードPWの入力を要求する(ステップS202-2)。
【0062】
一方、ステップS105aにて、MACアドレスが認証管理テーブル45cに登録有りの場合、SSO認証サーバ12cは、
図8の場合と異なり、ステップS103aでの認証要求に含まれるサービスプロバイダSPaのエンティティIDの、認証管理テーブル45cへの登録有無を判定する(ステップS202-1)。具体的には、SSO認証サーバ12cは、認証管理テーブル45cにおいて、対象のMACアドレス、厳密には対象のユーザ識別子UIDに紐づいて、サービスプロバイダSPaのエンティティIDが登録されているか否かを判定する。
【0063】
ステップS202-1にて、サービスプロバイダSPaのエンティティIDが認証管理テーブル45cに登録有りの場合、SSO認証サーバ12cは、許可応答を表す認証トークン等を、ユーザ端末TMを介してサービスプロバイダSPaにリダイレクトさせる(ステップS203-1)。一方、ステップS202-1にて、サービスプロバイダSPaのエンティティIDが認証管理テーブル45cに登録無しの場合、SSO認証サーバ12cは、ユーザ端末TMに、拒否応答を送信する(ステップS203-2)。
【0064】
図12において、ステップS101からステップS105aまでの処理内容に関しては、
図8の場合と同様である。ステップS105aにて、MACアドレスが認証管理テーブル45cに登録無しの場合、SSO認証サーバ12cは、ユーザ端末TMを使用するユーザに、ユーザ識別子UIDおよびパスワードPWの入力を要求する(ステップS301-2)。
【0065】
一方、ステップS105aにて、MACアドレスが認証管理テーブル45cに登録有りの場合、SSO認証サーバ12cは、ユーザ端末TMに、サービスプロバイダSPの選択肢情報を送信する(ステップS301-1)。具体的には、SSO認証サーバ12cは、ユーザ端末TMの画面上に、SSOの対象となる各サービスプロバイダSPa,SPbを表すアイコン等を表示させる。
【0066】
その後、ユーザ端末TMを使用するユーザは、画面上に表示されたアイコンをクリックすること等で、アクセスしたいサービスプロバイダSPを選択する(ステップS302)。具体例として、サービスプロバイダSPaが選択された場合を想定する。これに応じて、ユーザ端末TMは、選択されたサービスプロバイダSPaのエンティティIDを含んだログイン要求を、SSO認証サーバ12cに送信する(ステップS303)。
【0067】
SSO認証サーバ12cは、ステップS303でのログイン要求を受信し、当該ログイン要求に含まれるサービスプロバイダSPaのエンティティIDの、認証管理テーブル45cへの登録有無を判定する(ステップS304)。具体的には、SSO認証サーバ12cは、認証管理テーブル45cにおいて、対象のMACアドレス、厳密には対象のユーザ識別子UIDに紐づいて、サービスプロバイダSPaのエンティティIDが登録されているか否かを判定する。
【0068】
ステップS304にて、サービスプロバイダSPaのエンティティIDが認証管理テーブル45cに登録有りの場合、SSO認証サーバ12cは、許可応答を表す認証トークン等を、ユーザ端末TMを介してサービスプロバイダSPaにリダイレクトさせる(ステップS305-1)。一方、ステップS304にて、サービスプロバイダSPaのエンティティIDが認証管理テーブル45cに登録無しの場合、SSO認証サーバ12cは、ユーザ端末TMに、拒否応答を送信する(ステップS305-2)。
【0069】
<SSO認証サーバの詳細>
図10におけるSSO認証サーバ12cの構成に関しては、
図9の場合とほぼ同様である。ただし、実施の形態4では、記憶部23は、
図10に示した認証管理テーブル45cを保持し、また、認証判定部46が認証管理テーブル45cから取得するユーザ情報IMuの中には、サービスプロバイダSPのエンティティIDが含まれる。認証判定部46は、MACアドレス取得部36で取得されたMACアドレスが認証管理テーブル45cに登録有りの場合、当該MACアドレスに対応するエンティティIDが表すサービスプロバイダSPへのSSOの認証を許可する。
【0070】
<認証管理テーブルの変形例>
図13は、
図10における認証管理テーブルの
図10とは異なる構成例を示す概略図である。
図13に示す認証管理テーブル45dは、
図10の場合と異なり、ユーザ識別子UID10に対応して2個のMACアドレスMA10,MA11が登録されている。さらに、MACアドレスMA10に対応してサービスプロバイダSPaのエンティティIDが登録され、MACアドレスMA12に対応してサービスプロバイダSPbのエンティティIDが登録されている。
【0071】
この場合、SSO認証サーバ12cは、MACアドレスMA10を有するユーザ端末TM10からの認証要求を受信した際には、サービスプロバイダSPaのみへのSSOの認証を許可する。また。SSO認証サーバ12cは、MACアドレスMA11を有するユーザ端末からの認証要求を受信した際には、サービスプロバイダSPbのみへのSSOの認証を許可する。
【0072】
<実施の形態4の主要な効果>
以上、実施の形態4の方式を用いることで、実施の形態1~3で述べた各種効果と同様の効果が得られる。さらに、MACアドレスに紐づけられたアクセス権限の情報、詳細には、エンティティIDに基づいて、サービスプロバイダSPへのアクセスを制限できる。その結果、自由度が高いネットワーク管理を実現することが可能になる。
【0073】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【0074】
10:ネットワーク、11:DHCPサーバ、12,12a,12b:SSO認証サーバ(SSO認証装置)、13:ディレクトリサーバ、14a,14b:ユーザ、15:ルータ、21,23,25:記憶部、22:IP管理テーブル、24:認証テーブル、26:リソース管理テーブル、30:処理部、31:通信部、35:送信元IPアドレス取得部、36:MACアドレス取得部、37:ユーザ識別子取得部、38:ユーザ情報検証部、39:認証判定部、45,45c:認証管理テーブル、SP:サービスプロバイダ、TM:ユーザ端末