IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社アクシオの特許一覧

<>
  • 特許-認証システム及び認証方法 図1
  • 特許-認証システム及び認証方法 図2
  • 特許-認証システム及び認証方法 図3
  • 特許-認証システム及び認証方法 図4
  • 特許-認証システム及び認証方法 図5
  • 特許-認証システム及び認証方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-14
(45)【発行日】2022-10-24
(54)【発明の名称】認証システム及び認証方法
(51)【国際特許分類】
   G06F 21/41 20130101AFI20221017BHJP
【FI】
G06F21/41
【請求項の数】 4
(21)【出願番号】P 2021060301
(22)【出願日】2021-03-31
(65)【公開番号】P2022156552
(43)【公開日】2022-10-14
【審査請求日】2021-09-24
(73)【特許権者】
【識別番号】306035476
【氏名又は名称】株式会社アクシオ
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(72)【発明者】
【氏名】加倉井 芳弘
(72)【発明者】
【氏名】竹内 康博
(72)【発明者】
【氏名】三浦 礼佳
(72)【発明者】
【氏名】平井 美穂
【審査官】平井 誠
(56)【参考文献】
【文献】特開2013-250612(JP,A)
【文献】特開2014-010532(JP,A)
【文献】特開2018-142122(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/41
(57)【特許請求の範囲】
【請求項1】
アクセス制限されたwebサービスを利用するための認証情報がアカウントごとに登録されているユーザー情報登録部と、
前記webサービスに対してクライアント端末からアクセス要求があった場合に、前記webサービスに対する認証処理を実行するSSO認証部と、
前記webサービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のwebサービスである場合に、前記特定のwebサービスにログインするアカウントを、前記クライアント端末の入力操作に基づいて設定するアカウント設定部と、を備え、
前記SSO認証部は、
前記特定のwebサービスに対しては、前記アカウント設定部により設定された前記アカウントに紐付けられた前記認証情報を用いて前記認証処理を実行し、
前記特定のwebサービス以外のwebサービスに対しては、前記ログインアカウントに紐付けられた前記認証情報を用いて前記認証処理を実行する、
認証システム。
【請求項2】
前記アカウント設定部は、前記特定のwebサービスにログインするアカウントを設定するためのアカウント設定画面を前記クライアント端末に対して提示し、
前記SSO認証部は、前記アカウント設定画面において設定された前記アカウントに紐付けられた前記認証情報を用いて前記認証処理を実行する、
請求項1に記載の認証システム。
【請求項3】
前記ユーザー情報登録部は、利用可能な前記非ログインアカウントをアカウントごとに登録しており、
前記アカウント設定部は、前記アカウント設定画面に、利用可能な前記非ログインアカウントのリストを提示し、
前記SSO認証部は、前記アカウント設定画面において選択された前記アカウントに紐付けられた前記認証情報を用いて前記認証処理を実行する、
請求項2に記載の認証システム。
【請求項4】
アクセス制限されたwebサービスに対してクライアント端末からアクセス要求があった場合に行われる認証方法であって、
前記webサービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のwebサービスであるか否かを判定する第1工程と、
前記第1工程において、前記webサービスが前記特定のwebサービスであると判定された場合に、当該特定のwebサービスにログインするアカウントを、前記クライアント端末の入力操作に基づいて設定する第2工程と、
前記第2工程において設定された前記アカウントに紐付けられた認証情報を用いて、前記特定のwebサービスに対する認証処理を実行する第3工程と、
前記第1工程において、前記webサービスが前記特定のwebサービスでないと判定された場合に、前記ログインアカウントに紐付けられた認証情報を用いて前記認証処理を実行する第4工程と、
を備える、認証方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アクセス制限されたwebサービスの認証をシングルサインオンにより行う認証システム及び認証方法に関する。
【背景技術】
【0002】
従来、シングルサインオン(SSO:Single Sign-On)と呼ばれる統合認証技術が普及している(例えば、特許文献1~3参照)。SSO環境では、個別に認証処理が必要な複数のwebサービス(例えば、クラウド上で提供されるwebアプリケーション)を、一度のログイン操作によるユーザー認証だけで利用できるようになる。以下において、SSO環境で用いられる認証システムを「認証システム」、SSOにより連携されるwebサービスを「SSO連携サービス」と称する。
【0003】
通常、認証システムでは、SSO連携サービスに対してクライアント端末からアクセス要求があった場合に、認証サーバーが、クライアント端末によるログイン操作を代行する。具体的には、SSO連携サービスを利用するための認証情報(例えば、ID及びパスワード)がアカウントごとに登録されており、認証サーバーは、ログインに使用されたログインアカウント(例えば、自分の個人ID)に紐付けられている認証情報を用いて、SSO連携サービスに対する認証処理を実行する。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2012-014536号公報
【文献】特開2012-234435号公報
【文献】特開2016-085638号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述したように、ユーザーが認証システムにログインしている場合、ログインアカウントに紐づけられた認証情報を用いて、自動的にSSO連携サービスに対する認証処理が実行される。そのため、ログインアカウント以外の非ログインアカウント(例えば、複数人で利用可能な共有ID)でSSO連携サービスを利用するには、煩雑な操作が必要となる。例えば、ログインアカウントを一旦SSO環境からログアウトし、SSO連携サービスに用いるアカウントで改めてログインする必要がある。この場合、ログインアカウントで利用していた他のSSO連携サービスも終了となるため、作業効率が低下する虞がある。
【0006】
本発明の目的は、ログインアカウントによる認証システムへのログイン状態を維持したままで、任意のアカウントによるSSO連携サービスに対する認証処理を実行できる認証システム及び認証方法を提供することである。
【課題を解決するための手段】
【0007】
本発明に係る認証システムは、
アクセス制限されたwebサービスを利用するための認証情報がアカウントごとに登録されているユーザー情報登録部と、
前記webサービスに対してクライアント端末からアクセス要求があった場合に、前記webサービスに対する認証処理を実行するSSO認証部と、
前記webサービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のwebサービスである場合に、前記特定のwebサービスにログインするアカウントを、前記クライアント端末の入力操作に基づいて設定するアカウント設定部と、を備え、
前記SSO認証部は、
前記特定のwebサービスに対しては、前記アカウント設定部により設定された前記アカウントに紐付けられた前記認証情報を用いて前記認証処理を実行し、
前記特定のwebサービス以外のwebサービスに対しては、前記ログインアカウントに紐付けられた前記認証情報を用いて前記認証処理を実行する。
【0008】
本発明に係る認証方法は、
アクセス制限されたwebサービスに対してクライアント端末からアクセス要求があった場合に行われる認証方法であって、
前記webサービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のwebサービスであるか否かを判定する第1工程と、
前記第1工程において、前記webサービスが前記特定のwebサービスであると判定された場合に、当該特定のwebサービスにログインするアカウントを、前記クライアント端末の入力操作に基づいて設定する第2工程と、
前記第2工程において設定された前記アカウントに紐付けられた認証情報を用いて、前記特定のwebサービスに対する認証処理を実行する第3工程と、
前記第1工程において、前記webサービスが前記特定のwebサービスでないと判定された場合に、前記ログインアカウントに紐付けられた認証情報を用いて前記認証処理を実行する第4工程と、
を備える。
【発明の効果】
【0009】
本発明によれば、ログインアカウントによる認証システムへのログイン状態を維持したままで、任意のアカウントによるSSO連携サービスに対する認証処理を実行することができる。
【図面の簡単な説明】
【0010】
図1図1は、実施の形態に係る認証システムの利用形態を示す図である。
図2図2は、リポジトリサーバーに登録されているユーザー情報の一例を示す図である。
図3図3は、認証システムによる認証処理の一例を示すフローチャートである。
図4図4は、認証システムによる認証処理の一例を示すフローチャートである。
図5図5は、認証システムのログイン画面の一例を示す図である。
図6図6は、アカウント設定画面の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
本実施の形態では、SSO技術の1つであるSAML認証(SAML:Security Assertion Markup Language)を利用して認証処理を実行する場合について説明する。SAMLとは、異なるインターネットドメイン間でユーザー認証を行うためのXMLをベースにした標準規格(通信プロトコル)である。SAMLでは、認証に必要なユーザー情報だけでなく、ユーザーの属性情報(例えば、ユーザーの所属部署)を付与することもでき、webサービスの利用時に、ユーザー属性も考慮したアクセス許可を実現することができる。
【0012】
図1は、本発明の一実施の形態に係る認証システム1を示す図である。
図1に示すように、認証システム1は、ネットワークNを介して、webサーバー2及びクライアント端末3と通信可能に接続されている。認証システム1は、認証サーバー11及びリポジトリサーバー12を有する。
【0013】
認証サーバー11、リポジトリサーバー12、webサーバー2及びクライアント端末3は、例えば、汎用のコンピューターで構成され、演算/制御装置としてのCPU(Central Processing Unit)、主記憶装置としてのROM(Read Only Memory)及びRAM(Random Access Memory)、補助記憶装置としてのHDD(Hard Disk Drive)やSSD(Solid State Drive)、入力装置としてのマウスやキーボード、出力装置としてのディスプレイ等を備える。
【0014】
webサーバー2は、クライアント端末3に対して、クラウド上でSSO連携サービスを提供する。webサーバー2は、クライアント端末3からアクセス要求されると、認証システム1にユーザーの認証を依頼する。そして、webサーバー2は、認証を終えたユーザーに対してアクセス対象のwebサービスの使用を許可する。
【0015】
認証システム1は、クライアント端末3が、webサーバー2が提供するアクセス制限されたSSO連携サービス(例えば、クラウド上で提供されるwebアプリケーション)を利用する際のシングルサインオン認証を実現する。認証システム1によって初回アクセス時の認証が行われ、認証Cookieが発行されると、SSO連携サービス(webサーバー2が提供するwebサービスを含む)を個別に認証処理することなく利用することができる。
【0016】
認証システム1において、認証サーバー11及びリポジトリサーバー12が協働することにより、ユーザーの認証処理が行われる。
【0017】
認証サーバー11は、例えば、SSO連携サービスに対してクライアント端末3からアクセス要求があった場合に、クライアント端末3に対して、アカウント情報(例えば、ユーザーID及びパスワード)を要求する。そして、認証サーバー11は、ユーザーにより提示されたアカウント情報に基づいて、ユーザー認証を行う。認証が成功すると、当該ユーザーのアカウントに紐付けられた認証情報を用いて、SSO連携サービスに対するSSO認証処理が実行可能となる。
【0018】
すなわち、認証サーバー11は、SSO連携サービスに対してクライアント端末3からアクセス要求があった場合に、SSO連携サービスに対する認証処理を実行するSSO認証部として機能する。さらに、認証サーバー11は、SSO連携サービスが、ログインに使用したログインアカウント(例えば、個人ID)以外の非ログインアカウント(例えば、共有ID)での利用が可能な特定のSSO連携サービス(以下、「特定サービス」と称する)である場合に、特定サービスにログインするアカウントを、クライアント端末3の入力操作に基づいて設定するアカウント設定部として機能する。
なお、本実施の形態では、SSO認証部として機能する認証サーバー11に、アカウント設定部としての機能を組み込んでいるが、アカウント設定部として機能するサーバーを、認証サーバー11とは別に設けてもよい。
【0019】
リポジトリサーバー12は、認証システム1を利用するユーザーのユーザー情報や、各webサーバー2におけるリソース情報などを一元管理する。リポジトリサーバー12は、アクセス制限されたSSO連携サービスを利用するための認証情報がアカウントごとに登録されているユーザー情報登録部として機能する。リポジトリサーバー12に登録されているユーザー情報の一例を図2に示す。
【0020】
図2に示すように、ユーザー情報は、アカウントごとに登録される。アカウントには、ユーザー個人に割り当てられた個人アカウント(図2では、「m170aaa」)と、複数のユーザーが共用する共有アカウント(図2では、「共有ID1」)と、がある。
【0021】
ユーザー情報は、アカウント情報Info1及び認証情報Info2を含む。アカウント情報Info1は、ユーザーIDやパスワードなどのユーザー認証に必要な情報である。認証情報Info2は、SSO連携サービスに対する認証処理を行うための情報である。図2では、アカウント情報Info1として、ユーザーのID“user_ID”及びパスワード“user_password”が登録されている。また、認証情報Info2として、ユーザーの姓“s_name”、名“g_name”、メールアドレス“mail”が登録されている。
なお、図2に示すユーザー情報は一例であり、その他の情報(例えば、ユーザーの所属部署など)が登録されていてもよい。
【0022】
さらに、本実施の形態では、ユーザー情報として、当該アカウントが利用可能な他のアカウント情報Info3が登録されている。図2では、ユーザーIDが“m170aaa”であるアカウントに対して、“共有ID1”、“共有ID2”、“共有ID3”という3つの共有アカウントが登録されている。つまり、ユーザーIDが“m170aaa”であるユーザーには、“共有ID1”、“共有ID2”、“共有ID3”を利用する権限が与えられている。
【0023】
また、リポジトリサーバー12には、webサーバー2が提供するSSO連携サービスのリソース情報として、当該SSO連携サービスがログインに使用したログインアカウント以外の非ログインアカウント(共有ID)での利用が可能な特定のSSO連携サービスであるか否かを示す情報が登録されている。
【0024】
リポジトリサーバー12は、認証サーバー11からの要求に応じて、認証に必要なユーザー情報、及びSSO連携サービスのリソース情報を取り出し、認証サーバー11に通知する。
【0025】
以下に、認証システム1を利用した認証処理について説明する。図3図4は、認証システム1による認証処理を示すフローチャートである。
【0026】
ステップS101において、ユーザー(クライアント端末3)は、webサーバー2が提供するSSO連携サービスへのアクセス要求を行う。
【0027】
ステップS102において、webサーバー2は、クライアント端末3からのアクセス要求に応答して、クライアント端末3にSAML認証要求を行う。SAML認証要求は、クライアント端末3認証サーバー11にリダイレクトされる。ユーザーが認証システム1にログインしていない場合、ステップS103において、認証システム1は、クライアント端末3に対してログイン画面(図5参照)を提示する。ユーザーが認証システム1にログインしている場合、ステップS103~S106の処理は省略される。
【0028】
ステップS104において、ユーザーは、ログイン画面でアカウント情報(図5では、ユーザー名及びパスワード)を入力し、認証システム1にログインする。ユーザーは、例えば、個人アカウントにより、認証システム1へのログインを行う。
ステップS105において、クライアント端末3から認証サーバー11に、入力されたアカウント情報が通知される。
【0029】
ステップS106において、認証サーバー11は、通知されたアカウント情報に基づいて、認証システム1に対する認証処理を行う。具体的には、認証サーバー11は、クライアント端末3から通知されたアカウント情報と、予めリポジトリサーバー12に登録されているアカウント情報とを比較して、正当な権原を有するユーザーか否かを判定する。正当な権原を有するアカウントである場合、当該アカウントが認証され、認証システム1へのログインが確立される。
【0030】
次いで、ステップS107において、認証サーバー11は、アクセス対象のSSO連携サービスが、ログインに使用したログインアカウント(例えば、個人ID)以外の非ログインアカウント(例えば、共有ID1~共有ID3)での利用が可能な特定のSSO連携サービス(以下、「特定サービス」と称する)であるか否かを判定する。具体的には、認証サーバー11は、リポジトリサーバー12に登録されているSSO連携サービスのリソース情報に基づいて、特定サービスであるか否かを判定する。
【0031】
従来の認証システムでは、SSO連携サービスに対してクライアント端末からアクセス要求があった場合、認証サーバーが、クライアント端末によるログイン操作を自動的に代行するようになっており、ユーザーは、認証システムへのログイン状態を維持したまま、ログインアカウント以外の任意のアカウントでSSO連携サービスを利用することはできない。
これに対して、本実施の形態では、特定のSSO連携サービスについては、ログインアカウント以外の任意のアカウントでも利用できるようになっている。
【0032】
具体的には、アクセス対象のSSO連携サービスが特定サービスである場合(ステップS107で“YES”)、ステップS111以降の処理が行われる。ステップS111において、認証サーバー11は、アカウント選択画面に表示するアカウント情報を問い合わせる。そして、ステップS112において、認証サーバー11は、リポジトリサーバー12への問合せ結果に基づいて、クライアント端末3にアカウント選択画面を提示する(図6参照)。
【0033】
図6には、図2に示すユーザーIDが“m170aaa”のアカウントで認証システム1へのログインが行われた場合に提示されるアカウント選択画面を示している。図2に示すように、ユーザーIDが“m170aaa”のアカウントには、“共有ID1”、“共有ID2”、“共有ID3”という3つの共有アカウントが登録されているので、当該アカウントでログインした場合、“共有ID1”、“共有ID2”、“共有ID3”でもSSO連携サービスを利用することができる。したがって、これらのアカウントが、ログイン中のアカウント(個人ID)とともに、選択可能な態様で提示される。図6では、利用可能なアカウントが、プルダウンリストで提示されている。
【0034】
次いで、ステップS113において、ユーザー(クライアント端末3)は、アカウント選択画面のプルダウンリストから、利用するアカウントを選択する。ステップS114において、クライアント端末3は、選択されたアカウントを認証サーバー11に通知する。
【0035】
ステップS115において、認証サーバー11は、アカウント選択画面で選択され通知されたアカウントに紐付けられている認証情報をリポジトリサーバー12から取得し、アクセス対象のSSO連携サービスに対する認証処理を実行する。
【0036】
ステップS116において、認証サーバー11は、認証結果をクライアント端末3に通知する。認証結果は、webサーバー2にリダイレクトされる。ステップS117において、webサーバー2は、クライアント端末3に対して、要求されたSSO連携サービスを提供する。サービス提供画面には、アカウント選択画面で選択されたアカウントのユーザーID(例えば、“共有ID1”)等が表示される。
【0037】
このとき、ユーザーID“m170aaa”のアカウントによる認証システム1へのログイン状態は維持されたままである。したがって、特定サービスへのアクセス前に他のSSO連携サービスを利用していた場合も、当該SSO連携サービスを起動させたまま、他のアカウントで特定サービスを利用することができる。
【0038】
一方、アクセス対象のSSO連携サービスが特定サービスでない場合(ステップS107で“NO”)、ステップS121以降の処理により、通常のSSO認証処理が行われる。具体的には、ステップS121において、認証サーバー11は、ログインアカウントに紐付けられている認証情報をリポジトリサーバー12から取得し、アクセス対象のSSO連携サービスに対する認証処理を実行する。
ステップS122において、認証サーバー11は、認証結果をクライアント端末3に通知する。認証結果は、webサーバー2にリダイレクトされる。ステップS123において、webサーバー2は、クライアント端末3に対して、要求されたSSO連携サービスを提供する。
【0039】
このように、実施の形態に係る認証システム1は、リポジトリサーバー12と認証サーバー11を備える。リポジトリサーバー12は、アクセス制限されたSSO連携サービス(webサービス)を利用するための認証情報がアカウントごとに登録されているユーザー情報登録部として機能する。認証サーバー11は、SSO連携サービスに対してクライアント端末3からアクセス要求があった場合に、SSO連携サービスに対する認証処理を実行するSSO認証部として機能するとともに、SSO連携サービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のSSO連携サービスである場合に、特定のSSO連携サービスにログインするアカウントを、クライアント端末3の入力操作に基づいて設定するアカウント設定部として機能する。
SSO認証部は、特定のSSO連携サービスに対しては、アカウント設定部により設定されたアカウントに紐付けられた認証情報を用いて認証処理を実行し、特定のSSO連携サービス以外のSSO連携サービスに対しては、ログインアカウントに紐付けられた認証情報を用いて認証処理(通常のSSO認証処理)を実行する。
【0040】
また、本実施の形態に係る認証方法は、アクセス制限されたSSO連携サービス(webサービス)に対してクライアント端末3からアクセス要求があった場合に行われる認証方法であって、SSO連携サービスが、ログインに使用したログインアカウント以外の非ログインアカウントでの利用が可能な特定のSSO連携サービスであるか否かを判定する第1工程(図3のステップS107)と、第1工程において、SSO連携サービスが特定のSSO連携サービスであると判定された場合に、当該特定のSSO連携サービスにログインするアカウントを、クライアント端末3の入力操作に基づいて設定する第2工程(ステップS111~S113)と、第2工程において設定されたアカウントに紐付けられた認証情報を用いて、特定のSSO連携サービスに対する認証処理を実行する第3工程(ステップS114、S115)と、第1工程において、SSO連携サービスが特定のSSO連携サービスでないと判定された場合に、ログインアカウントに紐付けられた認証情報を用いて認証処理を実行する第4工程(ステップS121)と、を備える。
【0041】
実施の形態に係る認証システム1及び認証方法によれば、ログインアカウントによる認証システム1へのログイン状態を維持したままで、任意のアカウントによるSSO連携サービスに対する認証処理を実行することができるので、非ログインアカウントでSSO連携サービスを利用する場合に、当該アカウントで認証システム1にログインし直す必要はなく、ログインアカウントで利用中のSSO連携サービスを終了させる必要もない。したがって、SSO環境の利便性が損なわれることなく、作業効率が格段に向上する。
【0042】
また、認証システム1において、認証サーバー11は、アカウント設定部として、特定のSSO連携サービス(webサービス)にログインするアカウントを設定するためのアカウント選択画面(アカウント設定画面、図6参照)をクライアント端末3に対して提示し、SSO認証部として、アカウント設定画面において設定されたアカウントに紐付けられた認証情報を用いて認証処理を実行する。
これにより、ユーザーは、特定のSSO連携サービスを利用するアカウントを、任意に設定することができる。
【0043】
また、認証システム1において、リポジトリサーバー12(ユーザー情報登録部)は、利用可能な非ログインアカウントをアカウントごとに登録しており、認証サーバー11は、アカウント設定部として、アカウント選択画面(アカウント設定画面)に、利用可能な非ログインアカウントのリストを提示し、SSO認証部として、アカウント設定画面において選択されたアカウントに紐付けられた認証情報を用いて認証処理を実行する。
これにより、ユーザーは、特定のSSO連携サービスで利用可能なアカウントを容易に把握することができ、所望のアカウントを簡単な選択操作で設定することができる。また、正当な権原のないアカウントが設定されるのを防止できるので、セキュリティの面でも有用である。
【0044】
以上、本発明者によってなされた発明を実施の形態に基づいて具体的に説明したが、本発明は上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で変更可能である。
【0045】
例えば、実施の形態では、アカウント選択画面において、ログインユーザーが利用可能なアカウントを提示し、その中から利用するアカウントを選択するようになっているが、ユーザーがアカウント設定画面でアカウント情報を入力できるようにしてもよい。
【0046】
また、実施の形態で説明した認証方式及び認証処理の流れは一例であり、SAML認証以外の認証方式を適用してもよい。また、ユーザーID及びパスワードだけでなく、生体認証、ワンタイムパスワードをアカウント情報として用いた多要素認証法遺棄を適用してもよい。
【0047】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0048】
1 認証システム
2 webサーバー
3 クライアント端末
11 認証サーバー(SSO認証部、アカウント設定部)
12 リポジトリサーバー(ユーザー情報登録部)
図1
図2
図3
図4
図5
図6