JP6438940B2 - シングルサインオンのためのウェブベースインターフェース統合 - Google Patents

シングルサインオンのためのウェブベースインターフェース統合 Download PDF

Info

Publication number
JP6438940B2
JP6438940B2 JP2016515494A JP2016515494A JP6438940B2 JP 6438940 B2 JP6438940 B2 JP 6438940B2 JP 2016515494 A JP2016515494 A JP 2016515494A JP 2016515494 A JP2016515494 A JP 2016515494A JP 6438940 B2 JP6438940 B2 JP 6438940B2
Authority
JP
Japan
Prior art keywords
request
authentication information
policy
manager
application
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
JP2016515494A
Other languages
English (en)
Other versions
JP2016536656A5 (ja
JP2016536656A (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 JP2016536656A publication Critical patent/JP2016536656A/ja
Publication of JP2016536656A5 publication Critical patent/JP2016536656A5/ja
Application granted granted Critical
Publication of JP6438940B2 publication Critical patent/JP6438940B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • 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
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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

Description

関連出願の相互参照
本願は、参照により全文が組み込まれる、本願に援用される2013年9月20日に出願された米国仮特許出願第61/880,800号、表題「ウェブベースシングルサインオンのシステムおよび方法」[代理人整理番号88325−887051(143801US)]の優先権を主張する。
背景
企業においてユーザ(例えば従業員)は通常、1つ以上の異なるシステムやアプリケーションにアクセスすることがある。これらのシステムやアプリケーションはそれぞれ異なるアクセス制御ポリシーを使用し、異なる認証情報(例えばユーザ名とパスワード)を要求することがある。このためユーザは通常使用するシステムやアプリケーションのために多数の異なる認証情報を管理することになり、パスワード疲労を被り、認証情報の入力や再入力で時間を浪費し、失われた認証情報の回復および/またはリセットのため余分なITリソースが費やされることがある。シングルサインオン(SSO)は最初のログイン後に複数のシステムおよびアプリケーションへのアクセスをユーザに提供できる。例えば業務用コンピュータにログインしたユーザは1つ以上の他のシステムおよびアプリケーションにもアクセスできる。
従来のSSOソリューションはデスクトップベースであり、ユーザのコンピュータでローカルに実行するデスクトップクライアントにより、ユーザが認証情報を管理できるようにし、他のSSOサービスや運営管理を提供するものであった。デスクトップまたはラップトップコンピュータはクライアントを実行し、ユーザのシステムおよびアプリケーションにアクセスする必要があった。ローカルで実行するクライアントはユーザの活動を監視してシングルサインオンサービスを提供できた。ただしユーザは次第に、本格的なデスクトップSSOクライアントを実行できないスマートフォンやタブレットを使ってウェブベースのサービスにアクセスするようになっている。また、従来のSSOシステムは通常、同種のアクセス制御を使用するシステムでシングルオンを提供できたが、異種アクセス制御を使用するアプリケーションをまとめて扱うことはしなかった。このためユーザのいくつかのアプリケーションではシングルサインオンが可能でも、他のシステムやアプリケーションについては手作業でログインすることがユーザに強いられることがある。
概要
一実施形態によると、ウェブベースシングルサインオンは、ユーザが(ウェブブラウザやシンクライアントを通じて)単一のインターフェースにログインすることを可能にし、1つ以上のウェブアプリケーション、システム、およびその他サービスでユーザにSSOサービスを提供することができる。ウェブベースSSOシステムは、フォームフィル、連合(OIF)、SSO保護(OAM)、特権/共用(OPAM)、Oauth、およびその他ポリシー等、1つ以上の異なるアクセス制御方法をサポートする形に拡張できる。ウェブベースSSOシステムは、ユーザが様々なウェブアプリケーションやシステム等にアクセスして自身の認証情報を管理するためのユーザインターフェースを含んでよい。SSOサービスの各々にはウェブインターフェース(RESTインターフェース等)を対応付けることができ、完全なクライアントをユーザのデバイスに配備せずとも、ウェブ対応デバイスを使ってブラウザ等からウェブを介してSSOサービスにアクセスできる。ウェブインターフェースはSSOサービスの各々でCRUD(作成、読み取り、更新、削除)機能を提供できる。様々なアクセスポリシーをサポートするため、ウェブベースSSOシステムは、様々なリポジトリに対するデータアクセスを透過的に管理できる拡張可能データマネージャを含んでよい。
従来、SSOサービスはローカルで(例えばローカルマシンやローカルネットワークで実行するSSOサービスを通じて)提供され、安全なポリシー・認証情報転送を提供するプロトコルを使って通信するように構成されていた。ただし、後方互換性を維持しながらウェブベースまたはクラウドベースのリモートSSOシステムからこれらのサービスにアクセスするには、込み入った通信課題がある。クライアントはHTTPかHTTPSでウェブリクエストを送信し、ウェブレスポンスを受信するよう通常構成されるが、SSOサービスのリクエストとレスポンスはアクセスプロトコル(ネットワークアクセスプロトコルやOracle Access Protocol等)を通常使用する。本発明のいくつかの実施形態では、アクセスプロトコルにまたがってクライアントからアクセスマネージャサーバへリクエストとレスポンスをトンネルできる。いくつかの実施形態において、認証情報管理やポリシー管理を含むシングルサインオンサービスへのアクセスは、1つ以上のウェブインターフェース(RESTインターフェース等)を用いてウェブベースまたはクラウドベースSSOシステムに一体化できる。
いくつかの実施形態において、方法は、シングルサインオンサービスに対するリクエストを受信することを含んでよい。リクエストは、シングルサインオンサービスに対応付けられたウェブインターフェースを介して受信されてよい。方法はさらに、リクエストに基づきデータマネージャへデータリクエストを送信することと、対応付けられたウェブインターフェースを介してレスポンスを返すこととを含んでよい。リクエストは、リクエストに応じたポリシーまたは認証情報の情報を含んでよく、ポリシーまたは認証情報の情報はアプリケーションに自動的にログインするためクライアントデバイスによって使用される。例えばポリシー情報はテンプレートを含んでよく、テンプレートは、受信ウェブレスポンス(例えば着信ウェブページ)を、当該着信ウェブページを通じて提出される認証情報に照合し、ユーザをアプリケーションにログインさせるため、クライアントデバイスによって使用されてよい。
いくつかの実施形態において、リクエストはプロキシによって第1のプロトコルで受信されてよく、プロキシはリクエストを第1のプロトコルから第2のプロトコルに変換し、変換したリクエストをシングルサインオンサービスへ転送する。いくつかの実施形態において、レスポンスはプロキシによって第2のプロトコルで受信され、プロキシはレスポンスを第2のプロトコルから第1のプロトコルに変換し、変換したレスポンスを返す。
いくつかの実施形態において、シングルサインオンサービスに対するリクエストはポリシー管理リクエストであり、方法はさらに、ポリシー管理リクエストをポリシーマネージャへ送信することを含んでよい。ポリシー管理リクエストは1つ以上のポリシー管理操作を含んでよい。方法はさらに、1つ以上のポリシー管理操作に基づいてデータリクエストを生成することとを含んでよい。いくつかの実施形態において、ポリシー管理リクエストは第1のインターフェース向けにフォーマットされてよく、ポリシーマネージャはポリシー管理リクエストに対応付けられたポリシー管理プラグインを特定し、特定したポリシー管理プラグインに基づきポリシー管理リクエストを第2のインターフェース向けのフォーマットに変換してよい。
いくつかの実施形態において、シングルサインオンサービスに対するリクエストは認証情報管理リクエストであってよく、方法はさらに、認証情報管理リクエストを認証情報マネージャへ送信することを含んでよい。認証情報管理リクエストは1つ以上の認証情報管理操作を含んでよい。方法はさらに、1つ以上の認証情報管理操作に基づいてデータリクエストを生成することとを含んでよい。いくつかの実施形態において、認証情報管理リクエストは第1のインターフェース向けにフォーマットされてよく、認証情報マネージャは認証情報管理リクエストに対応付けられたサブマネージャを特定し、特定したサブマネージャに基づき認証情報管理リクエストを第2のインターフェース向けのフォーマットに変換してよい。
いくつかの実施形態では、コンピュータ可読媒体とプロセッサとを含むコンピュータを含むシステムが提供されてよい。システムはさらに、コンピュータで実行する複数のシングルサインオンサービスを含んでよい。シングルサインオンサービスの各々には1つ以上のウェブインターフェースが対応付けられてよい。複数のシングルサインオンサービスは、クライアントから対応付けられたウェブインターフェースを介してポリシーまたは認証情報を管理するリクエストを受信し、ポリシーまたは認証情報を管理するリクエストに基づいてデータマネージャへデータリクエストを送信し、対応付けられたウェブインターフェースを介してクライアントへレスポンスを返す、ように構成されてよい。
いくつかの実施形態では、命令を蓄積する非一時的コンピュータ可読記憶媒体が提供されてよく、命令がプロセッサによって実行されるとプロセッサは、シングルサインオンサービスに対するリクエストをシングルサインオンサービスに対応付けられたウェブインターフェースを介して受信するステップと、ポリシーまたは認証情報を管理するリクエストに基づきデータマネージャへデータリクエストを送信するステップと、対応付けられたウェブインターフェースを介してレスポンスを返すステップとを遂行する。
図面の簡単な説明
これより本発明の例示的実施形態を下記図面を参照しながら詳しく説明する。
図1は、本発明の一実施形態に係る、ウェブベースシングルサインオンシステムの概要を示す。 図2は、本発明の一実施形態に係る、フォームフィルアーキテクチャのブロック図を示す。 図3は、本発明の一実施形態に係る、リソースにアクセスするためのリクエストに応じてSSOプロキシアプリケーションを挿入する方法のブロック図を示す。 図4は、本発明の一実施形態に係る、フォームフィルの状態図を示す。 図5は、本発明の一実施形態に係る、様々な環境で実行できるプラグ方式シングルサインオンアプリケーションを示す。 図6は、本発明の一実施形態に係る、デスクトップログオンマネージャインターフェースを示す。 図7は、本発明の一実施形態に係る、モバイルログオンマネージャインターフェースを示す。 図8は、本発明の一実施形態に係る、ログオンマネージャアーキテクチャを示す。 図9は、本発明の一実施形態に係る、ウェブログオンインターフェースを通じてウェブアプリケーションにアクセスする方法のブロック図を示す。 図10は、本発明の一実施形態に係る、シングルサインオンサービスが組み込まれたSSOサーバアーキテクチャを示す。 図11Aは、本発明の一実施形態に係る、ポリシーマネージャアーキテクチャを示す。 図11Bは、本発明の一実施形態に係る、認証情報マネージャアーキテクチャを示す。 図12は、本発明の一実施形態に係る、ウェブベースインターフェースを通じてSSOサービスを提供する方法のブロック図を示す。 図13は、本発明の一実施形態に係る、データマネージャアーキテクチャを示す。 図14は、本発明の一実施形態に係る、複数のデータストアに蓄積された認証情報を管理する方法のブロック図を示す。 図15は、実施形態のいずれか1つを実装する分散システムの簡略図を示す。 図16は、本開示の一実施形態に係る、システム環境のコンポーネントの簡略ブロック図であり、実施形態システムのコンポーネントから提供されるサービスはクラウドサービスとして提供され得る。 図17は、本発明の種々実施形態を実装し得る例示的コンピュータシステムを示す。
詳細な説明
以降の説明には解説の目的で本発明の実施形態を十分に理解するための具体的詳細が記載されている。ただし、これらの具体的詳細がなくとも種々の実施形態を実施し得ることは明らかとなるであろう。図と説明は限定を意図するものではない。
いくつかの図に示されたシステムは様々な構成で提供され得る。いくつかの実施形態において、システムは分散システムとして構成されてよく、分散システムの1つ以上のコンポーネントはクラウドコンピューティングシステムの中で1つ以上のネットワークにまたがって分散される。
本発明の実施形態はウェブベースシングルサインオンサービスを目的としており、ウェブベースシングルサインオンサービスは、ユーザが(ウェブブラウザやクライアントアプリケーションを通じて)単一のインターフェースにログインすることを可能にし、1つ以上のウェブアプリケーション、エンタープライズシステム、およびその他サービスでユーザにシングルサインオン(single sign-on:SSO)サービスを提供することができる。ウェブベースSSOシステムは、フォームフィル、連合アイデンティティ、ポリシー本位制御、特権/共用アカウント、OAuth、およびその他セキュリティシステム等、1つ以上の異なるアクセス制御方法をサポートする形に拡張できる。ウェブベースSSOシステムは、ユーザが様々なウェブアプリケーションやシステム等にアクセスして自身の認証情報を管理するためのユーザインターフェースを含んでよい。それぞれのSSOサービスにはウェブインターフェース(RESTインターフェース等)を対応付けることができ、完全なクライアントをユーザのデバイスに配備せずとも、ウェブ対応デバイスを使ってブラウザ等からウェブを介してSSOサービスにアクセスできる。ウェブインターフェースはそれぞれのSSOサービスでCRUD(作成(create)、読み取り(read)、更新(update)、削除(delete))機能を提供できる。様々なアクセスポリシーをサポートするため、ウェブベースSSOシステムは、様々なリポジトリに対するデータアクセスを透過的に管理できる拡張可能データマネージャを含んでよい。
図1は、本発明の一実施形態に係る、ウェブベースシングルサインオンシステムの概要を示す。図1に見られるように、シングルサインオンサービス100はSSOサーバ102で実装できる。SSOサーバ102は1つ以上のカスタマイズされたウェブインターフェース104を使って1つ以上の異なるクライアント106にサービス100を提供できる。いくつかの実施形態では、SSOサーバ102をアクセスマネージャサーバに組み込むことができる。これは、1つ以上の異なるエンドユーザクライアント106が1つのSSOバックエンドからSSOサービスにアクセスしSSOサービスを利用することを可能にする。クライアント106はSSOクライアントアプリケーション106Aが予めインストールされたクライアントデバイスを含み得、これらはシッククライアントやリッチクライアントと呼ばれることがあり、パーソナルコンピュータ、ワークステーション、モバイルデバイス、およびその他クライアントデバイスを含み得る。前記に加えて、または前記の代わりに、Javascriptアプリケーション等のウェブアプリケーション106BやブラウザアプリケーションでSSOサービスを管理、提供でき、この場合はクライアントデバイスごとに単独のSSOアプリケーションを準備しインストールする必要はない。ここで用いるSSOアプリケーションという用語は、クライアントデバイスにインストールされた単独のSSOクライアントアプリケーションを指す場合もあれば、ブラウザベースのSSOアプリケーションを指す場合もある。
それぞれのウェブインターフェース104は、クライアントが認証情報(ユーザ名/パスワード、連合または保護サイトへのリンク、またはその他種類)を含むSSOサービスおよびリソースにどのようにアクセスするかを定めるほか、SSOサービスが認証情報を使ってどのようにアプリケーションとやり取りするかを定めるポリシーを定める。いくつかの実施形態において、それぞれのSSOサービス100には異なるウェブインターフェース104に対応付けることができる。いくつかの実施形態において、アプリケーションはローカルであってよく、あるいはリモートであってよく、SaaSや他のクラウドベースアプリケーションおよび/またはサービス等のウェブアプリケーションを含む。ウェブベースでは、ユーザが何らかのインターネット接続デバイスを使ってアプリケーションに安全にアクセスできる。ここではREST(Representational State Transfer)インターフェースについて説明するが、どのようなウェブベースインターフェースでも使用できる。
いくつかの実施形態において、SSOアプリケーションはSSOサービス100に蓄積された所定のポリシーを使って認証イベントを特定できる。ウェブインターフェースを通じてエンドユーザの認証情報とポリシーを管理でき、クライアント106から届くリクエストに適用できる。ユーザはクライアント106のいずれか1つで認証情報を提示することによってログオンできる(スマートカード/プロクシミティカード、トークン、PKI(公開鍵基盤)、Windows Logon、LDAP(ライトウェイトディレクトリアクセスプロトコル)ログオン、バイオメトリックデバイス、その他)。その後認証情報は認証サービスで解析できる。いくつかの実施形態において、1つ以上のクライアント側認証プラグインは認証イベントを検出し、ユーザから届く認証情報を収集できる。それぞれの認証プラグインには様々な種類の認証情報および/または異なるログオン方法を対応付けることができる。いくつかの実施形態において、それぞれの認証プラグインにはグレードを対応付けることができる。いくつかの実施形態において、グレードは認証情報の種類やリクエストの種類に割り当てることができる。グレードは数値として蓄積できる。このためSSOシステムは、ユーザから提供される認証情報のグレードに応じてログオンリクエストに対するレスポンスを変えることができる。例えばユーザがグレード1の認証情報でログインする場合に、グレード2以上の認証イベントが確認されると、より高いグレードの認証情報を提供することをユーザに促すことができる。いくつかの実施形態において、認証情報は認証クッキーとしてユーザのブラウザアプリケーションの中に蓄積できる。認証クッキーは、(例えばユーザがウェブベースのログオンページから自身のクライアントデバイスにログインするときに)ユーザから認証情報が届き次第ローカルまたはウェブベースの認証サービスから取得できる。認証クッキーはSSOサーバ102に対するウェブリクエストに含めることができ、リクエストに応じてSSOサービスを提供する前に検査できる。いくつかの実施形態では、サービスごとに異なる認証レベルが必要となり得、認証レベルは認証クッキーで具現され得る。例えばユーザが何らかのサービスをリクエストしてもユーザの認証クッキーが当該サービスへのアクセスを許可しない場合は、新たな認証クッキーを取得するためユーザをログインページにリダイレクトできる。
いくつかの実施形態において、クライアント106からのリクエストは、ロードバランサや他のウェブサーバ等のSSOゲートウェイ108を通じて受信できる。SSOゲートウェイ108はクライアント106からのリクエストを平衡するため1つ以上のアクセスエージェント110を実装できる。いくつかの実施形態において、ユーザは、自身のデバイスで実行するクライアント106を通じて、またはウェブブラウザを通じて、ここでログオンマネージャまたはダッシュボードと呼ぶ、SSOユーザインターフェース112Aにアクセスできる。いくつかの実施形態では、SSOシステム102でSSOユーザインターフェース112Bを実装できる。いくつかの実施形態において、SSOユーザインターフェース108はユーザがよく利用するアプリケーションのリストを含むことができる。ユーザはSSOユーザインターフェースを通じて自身の認証情報やアプリケーションに関連するポリシーを管理できる。ユーザがユーザインターフェースを通じて何らかのアプリケーションへのアクセスをリクエストすると、SSOユーザインターフェースは当該アプリケーションのポリシー種類を判断し、当該ポリシー種類に基づいてユーザの認証情報を取得できる。いくつかの実施形態において、認可モジュール118はリクエストに付属する認証クッキーを検査し、認証情報を引き出す権限がユーザにあるか否かを判断できる。権限がある場合、ユーザは認証情報を使ってアプリケーションにログインできる。様々な認証情報やポリシーを別々のリポジトリに保管できる。蓄積された認証情報および/またはポリシーにアクセスする、引き出す、更新する、削除する、または操作するためのリクエストが届くと、SSOサービス100はデータマネージャ122を通じて該当するリポジトリ120にアクセスできる。いくつかの実施形態において、SSOプロキシ114は、ユーザが、最初にSSOユーザインターフェース110にアクセスせず、あるいはユーザのデバイスで実行するクライアントを使用せず、ウェブブラウザから直接SSOサービスを使ってウェブアプリケーション116にアクセスすることを可能にできる。いくつかの実施形態において、SSOサービス100は企業ディレクトリ等のアイデンティティマネージャ124にアクセスしてユーザのアイデンティティを検査できる。
いくつかの実施形態において、SSOサービス100は、自動サインオン、アプリケーションパスワード変更およびリセット、セッション管理、アプリケーション認証情報プロビジョニング、セッション内外での認証を含む、アプリケーションに対するアクセス許可/却下を管理できる。いくつかの実施形態において、SSOシステム102は、クライアントデバイスから実行する、またはクライアントデバイスからアクセスされる、Windows(登録商標)、Web、Java(登録商標)、およびメインフレーム/ターミナルベースのアプリケーションの自動シングルサインオン機能を提供できる。ログオンマネージャ112Aはセッションを監視し、アプリケーションからのログオンリクエストを自動的に検出し、リクエストに対応する特定のログオン要件に従って自動的にログオンを完了できる。
いくつかの実施形態では、Oracle Access Management保護リソース、連合アプリケーション/リソース、フォームフィルアプリケーション等、様々な種類の認証情報とアプリケーションをサポートできる。OAM保護リソースの場合は、ユーザリクエストを認証した後、所望のリソースのURLへユーザリクエストを誘導できる。連合アプリケーションの場合は、企業間(B2B)パートナーアプリケーションやSaaSアプリケーションを含む、連合パートナーおよびリソースへ至るリンクを提供できる。フォームフィルアプリケーションの場合は、認証情報を送出できるアプリケーションウェブページのフィールドをテンプレートを使って特定できる。
上述したように、ウェブベースSSOサービスは、多数のブラウザベースアクセス方法を含む様々なクライアントアプリケーションを通じて提供できる。後述するように、ユーザはSSOゲートウェイ108を通じてアプリケーションにアクセスしてSSOサービスを受けることができる。ある1つのアクセス方法は、ユーザがユーザのブラウザに自動的にインストールされる埋め込みSSOアプリケーションを通じて透過的にSSOサービスにアクセスすることを可能にする。いくつかの実施形態において、ユーザはブラウザを使ってウェブログオンマネージャにアクセスし、アプリケーションにアクセスしたり、ポリシーや認証情報を管理したり、SSOサービスを消費したりできる。これらのアクセス方法については後述する。
フォームフィルプロキシアプリケーションによるウェブベースシングルサインオン
一実施形態によると、ウェブアプリケーションに対するリクエストはSSOプロキシを通じて引き渡すことができる。ウェブアプリケーションからレスポンスを受け取ったSSOプロキシは、ポリシー情報や他のペイロード内容をレスポンスに付加し、クライアントデバイスにSSO処理を任せるSSOアプリケーションを埋め込み、必要に応じレスポンスの内容を書き換えることができる。埋め込まれるアプリケーションは、いくつかの実施形態でJavascript(登録商標)アプリケーションとして実装されてよく、クライアントデバイスの処理能力を利用してシングルサインオン機能を実行する。SSO処理の多くをクライアントデバイスに任せるこのソリューションは、多くのデバイスに対応する形に容易く拡張できる。ウェブベースのインターフェースにSSO機能を加えることでユーザエクスペリエンスも向上する。
図2は、本発明の一実施形態に係る、フォームフィルアーキテクチャ200のブロック図を示す。上述したように、SSOシステム102にはSSOゲートウェイ108を通じてアクセスできる。SSOゲートウェイ108には、クライアントのウェブブラウザアプリケーションにSSOアプリケーションを埋め込むフォームフィルプロキシを組み込むことができる。いくつかの実施形態において、SSOアプリケーションは、認証情報を管理しポリシーを取得するためSSOゲートウェイ108を通じてアクセスマネージャサーバ102のSSOウェブサービスと通信できるJavascriptアプリケーションであってよい。
一実施形態によると、ユーザはクライアントデバイス106Bで実行するウェブブラウザを通じてウェブアプリケーション202にアクセスできる。ウェブアプリケーション202は、ウェブベースのeメールサービス、ビジネスアプリケーション、または他の何らかのウェブアプリケーションであってよい。クライアントデバイス106Bはウェブアプリケーション202にアクセスするためのリクエスト204を送信でき、リクエスト204はSSOゲートウェイ108によってインターセプトされる。SSOゲートウェイ108はリクエストをウェブアプリケーション202に転送でき、ウェブアプリケーションからのレスポンス206をインターセプトできる。いくつかの実施形態において、SSOゲートウェイ108は、ウェブアプリケーション202からのレスポンスをSSOゲートウェイ108へ返す形にリクエストを修正できる。SSOゲートウェイ108は、リクエスト側クライアント106Bへレスポンスを返す前に、SSOゲートウェイ108にあるSSOプロキシ114へレスポンス206を引き渡すことができる。SSOプロキシ114は、様々なSSO機能へのアクセスを提供する追加データ208を含めてレスポンスを修正できる。
例えばプロキシは、ブラウザからSSOファンクションを呼び出して実行するためのJavascript等のSSOアプリケーションコードをレスポンスに加えることができる。SSOアプリケーションはユーザのデバイス106Bで実行でき、フォームフィル方式のページやフィールドを特定したり、SSOサーバにポリシーをリクエストしたり、認証情報を管理したりする。後述するように、認証情報やポリシーのリクエストはウェブインターフェースを通じてSSOシステム102へ送信できる。例えば、ウェブアプリケーションから届くログインページはSSOアプリケーションで検出できる。SSOアプリケーションはウェブアプリケーションのポリシーを読み取り、認証情報を引き出すことができる。SSOアプリケーションは引き出した認証情報を使ってログインページのしかるべきフィールドを自動的に埋め、ログインリクエストを送出できる。ログインが失敗する場合、SSOアプリケーションはログイン失敗を検出してログイン失敗フローを実行でき、ログイン失敗フローは、例えばユーザがウェブアプリケーションに対する自身の認証情報をリセットおよび/または回復し、SSOサーバで自身の認証情報を更新することを可能にする。
一実施形態によると、プロキシはウェブアプリケーションから届くレスポンスに追加内容208を加えることができる。追加内容208はテンプレートやポリシーを含み得る。SSOアプリケーションはテンプレートを基にフォームフィル方式のページやフィールドを特定できるほか、フィールドへ認証情報を加える方法を判断できる。ウェブページレスポンスにSSOアプリケーションを加えることにより、SSO処理の多くがバックエンドシステムからユーザデバイスに任される。処理の多くをエンドユーザに任せることにより、SSOサーバにおける処理要求が低減され、従来のシステムより拡張性に富むSSOソリューションになる。
図3は、本発明の一実施形態に係る、リソースにアクセスするためのリクエストに応じてSSOプロキシアプリケーションを挿入する方法300のブロック図を示す。ブロック302では、ウェブアプリケーションにアクセスするためのリクエストをクライアントデバイスから受信できる。上述したように、リクエストはSSOシステムに対応するSSOゲートウェイで受信できる。いくつかの実施形態において、クライアントデバイスからのリクエストはウェブアプリケーションのウェブページを求めるリクエストであってよい(例えばHTTPリクエスト)。リクエストは、デバイスで実行するSSOクライアントを含まないクライアントデバイスから受信できる。
ブロック304では、リクエストをウェブアプリケーションに引き渡せる。いくつかの実施形態において、SSOゲートウェイは、後ほどの監査のため、または他の目的のため、リクエストに関する情報(時刻、日付、ウェブアドレス、その他)をログできる。ブロック306では、ウェブアプリケーションからレスポンスが受信される。レスポンスは、ユーザがログイン情報を提供するためのフィールドを含むウェブページであってよい。ブロック308では、レスポンスにポリシーデータやシングルサインオンアプリケーションを付加して付加レスポンスを作ることができる。いくつかの実施形態では、ユーザのエンタープライズシステムに似た外観や風合いを提供するためレスポンスを書き換えることができる。例えば、ユーザのリクエストに応じ、ウェブページの配色とレイアウトをユーザの内部イントラネットの配色とレイアウトに似せて修正できる。ブロック310では、付加レスポンスがクライアントデバイスへ返される。
いくつかの実施形態において、シングルサインオンアプリケーションは、JavaScriptアプリケーションである。シングルサインオンアプリケーションは、ユーザのブラウザアプリケーションで実行してSSOサービスを提供できる。例えばSSOアプリケーションはSSOシステムにポリシーとテンプレートをリクエストし、それらのポリシーとテンプレートを使用し、ウェブアプリケーションに対するリクエストに応じて受信するページを対応するポリシーと照合できる。SSOアプリケーションはウェブページレスポンスの一致するフィールドに適切なユーザ認証情報を自動的に挿入し、それらの認証情報をウェブアプリケーションへ送出できる。このように、ユーザのクライアントデバイスに独立したSSOクライアントアプリケーションを準備しインストールしなくても、シングルサインオンが達成される。
いくつかの実施形態において、シングルサインオンアプリケーションは、様々なハードウェア、オペレーティングシステム、ブラウザ、またはこれらの組み合わせに対応する実行可能スクリプトを含み得る。SSOアプリケーションは、クライアントデバイスのプラットフォームを識別し、1つ以上のプラットフォーム固有操作を実行する形に自身を構成するよう構成できる。プラットフォームは、クライアントデバイス種類(デスクトップ、モバイルデバイス、ワークステーション、または他のハードウェア構成)、ブラウザアプリケーション種類、および/またはオペレーティングシステムのうちいずれか1つ以上を指し得る。
一旦インストールされたSSOアプリケーションはユーザのブラウザを通じてユーザにSSOサービスを提供でき、独立したSSOクライアントアプリケーションは必要ない。図4は、本発明の一実施形態に係る、SSOアプリケーションの状態図を示す。図4に見られるように、ブロック402では、ユーザのブラウザで実行するSSOアプリケーションがウェブアプリケーションのポリシーをリクエストできる。リクエストはSSOシステムによって提供されるウェブインターフェースに従ってフォーマットされたウェブリクエストであってよい。ポリシーが返されない場合、SSOアプリケーションの実行は終了でき、ユーザのブラウザでウェブアプリケーションを開くことができ、さらなるSSOサービスは提供しない(例えばウェブアプリケーションのポリシーが見つからない場合、SSOアプリケーションは認証情報を加えたりユーザをウェブアプリケーションにログインさせたりしない)。
少なくとも1つのポリシーが返される場合は、ブロック404で、SSOアプリケーションはウェブアプリケーションによって返されるページにポリシーを照合できる。例えば、ある1つのポリシーはログインページに相当し得、別のポリシーはパスワード変更ページに相当し得る。それぞれのポリシーにはページテンプレートを対応付けることができる。着信ページがポリシーに一致する場合は、着信ページが蓄積されたテンプレートページに比較される。例えばテンプレートは、ページ内にある様々なフィールドおよびタイプ、内容、ラベル、タグ、その他を識別する場所を規定し得る。着信ページがテンプレートに一致する場合は、そのテンプレートに対応するポリシーを使ってそのページのSSOサービスを提供できる。いくつかの実施形態において、ポリシーは一致したページで実施すべきアクション(例えばどの認証情報をどのように供給するべきか等)を規定し得る。ポリシーが一致せず、着信ページに一致するテンプレートがなければ、着信ページをユーザに提示でき、さらなるSSOサービスは提供されない。
ポリシーが一致した場合は、ブロック406で、SSOアプリケーションがSSOサーバに認証情報をリクエストできる。1つ以上の認証情報が返される場合は、ブロック408で、SSOアプリケーションがログオンチューザを起動できる。いくつかの実施形態において、ブロック410では、ユーザのクライアントデバイスでログオンチューザをユーザに向けて表示でき、ユーザが、返された認証情報から認証情報を手作業で選択できるようにする。ユーザがログオンチューザを使って認証情報を選択したら、ブロック412でSSOアプリケーションは選択された認証情報を挿入してログオンリクエストを送出できる。
いくつかの実施形態において、ユーザが選択を行うと、選択された認証情報が送出され、414でSSOアプリケーションはログオン結果を検証できる。ログオンが正常に遂行される場合、ブロック416で、SSOアプリケーションは、ユーザの選択に基づいてそのページのユーザ認証情報を更新するためのリクエストをSSOサーバへ送信できる。このため、ユーザが後ほどそのウェブアプリケーションをリクエストするときには、選択されたユーザ認証情報を返すことができ、ユーザはログオンチューザから認証情報を手作業で選択しなくてすむ。いくつかの実施形態では、ユーザに向けてログオンチューザを表示する前に自動化されたログオンチューザプロセスを実行できる。例えば少数の認証情報が返される場合、SSOアプリケーションは、ログオン成功が検出されるまで、返された認証情報を自動的に順次送出できる。SSOアプリケーションはその後、そのウェブアプリケーションのユーザ認証情報を更新するための更新リクエストをSSOサーバへ送信できる。
ただ1つの認証情報が返された場合、処理はブロック410を迂回してブロック412へ進むことができ、ここでユーザからさらなる入力がなくとも認証情報をページに挿入し、送出できる。認証情報が送出されると、SSOアプリケーションはログインリクエストの状態を監視できる。いくつかの実施形態において、ログインが失敗する場合は処理を終了できる。いくつかの実施形態において、ログインが成功する場合はブロック416で認証情報を保存できる。
認証情報が返されない場合は、ユーザのブラウザでユーザに向けて着信ページを表示でき、ブロック418でSSOアプリケーションはユーザによって手作業で入力された認証情報を捕捉できる。ユーザによって入力された認証情報は送出でき、ログオン結果を監視できる。ログオンが成功した場合は、ブロック416で認証情報が保存され、ユーザはウェブアプリケーションにログインされる。ログオンが失敗する場合は、ウェブアプリケーションのログオン失敗ページをユーザに向けて表示できる。いくつかの実施形態において、SSOアプリケーションは自動的にログオン失敗ページを検出し、ログオン失敗ページにポリシーを照合し、ログオン失敗に対応するフローを実行できる(パスワード回復またはリセット等)。
いくつかの実施形態において、ユーザはウェブアプリケーションでパスワード変更(password change:PWC)を遂行することを選べる。SSOアプリケーションはPWCページを検出し(例えばそのウェブアプリケーションに規定されたPWCテンプレートを使用)、ブロック418でユーザによって提供される認証情報を捕捉できる。SSOアプリケーションはPWCプロセスを監視でき、成功する場合は、ブロック416で新しい認証情報をSSOサーバに保存できる。PWCに失敗する場合は、ウェブアプリケーションのPWC失敗ページをユーザに向けて表示できる。いくつかの実施形態において、SSOアプリケーションは自動的にPWC失敗ページを検出し、PWC失敗ページにポリシーを照合し、PWC失敗に対応するフローを実行できる(例えばPWCフローを再度実行し、失敗の理由をユーザに伝える)。
図4に見られるように、ブロック402、406、410、および416における処理は(例えばポリシーおよび認証情報を取得、認証情報を保存、ログオンチューザのユーザ設定を取得)、SSOサーバとの通信をともなう。ただし、PWCおよびログオン試行の成功の監視、ポリシーおよびテンプレートの検出、認証情報の挿入等を含む他の処理ステップは、ブラウザにてSSOアプリケーションによって遂行できる。これはSSOサーバに必要とされる処理リソース量を減らし、システムリソースを酷使することなくユーザを追加することを容易にする。
いくつかの実施形態において、SSOサーバは、ウェブアプリケーションのポリシーを求めるリクエストをシングルサインオンアプリケーションから受信できる。SSOサーバはその後、所望されたポリシーを求めるリクエストをデータマネージャに送信できる。1つ以上のポリシーが返される場合、SSOサーバは1つ以上のポリシーを含むレスポンスをシングルサインオンアプリケーションへ送信できる。ポリシーが返されない場合、SSOサーバは、ウェブアプリケーションのポリシーがないことを伝えるレスポンスをSSOアプリケーションへ返すことができる。
いくつかの実施形態において、SSOサーバは、ウェブアプリケーションにアクセスするためのユーザに対応付けられた認証情報を求めるリクエストをシングルサインオンアプリケーションから受信できる。SSOサーバはその後、認証情報を求めるリクエストをデータマネージャへ送信できる。1つ以上の認証情報が返される場合、SSOサーバは1つ以上の認証情報を含むレスポンスをシングルサインオンアプリケーションへ送信できる。SSOアプリケーションはその後、1つ以上の認証情報から認証情報を選択するためのログオンチューザをユーザに提示する。認証情報が返されない場合、SSOサーバは、ユーザとウェブアプリケーションに対応付けられた認証情報がないことを伝えるレスポンスをSSOアプリケーションへ返すことができる。
いくつかの実施形態において、SSOアプリケーションは、認証情報を検索および表示し、自動・手動パスワード変更(PWC)処理、ログオンチューザ、およびログオン失敗を遂行できる認証情報マネージャを含むことができる。上述したように、いくつかの実施形態において、SSOアプリケーションはウェブアプリケーションに対するリクエストに応じてユーザのブラウザにインストールできる(例えばユーザへ送信される付加レスポンスにSSOアプリケーションを加えることができる。SSOアプリケーションは、SSOアプリケーションを含む着信レスポンスウェブページに対応する状態に初期化できる。
いくつかの実施形態において、ウェブアプリケーションリクエストは後述するウェブログオンマネージャ(web logon manager:WLM)から開始できる。かかる実施形態において、SSOアプリケーションは(例えばクエリー文字列、セッション蓄積情報、またはその他情報をチェックすることにより)WLMから認証情報の情報を取得できる。WLMからの認証情報を使用することで、SSOアプリケーションがSSOサーバに認証情報の情報をリクエストする必要はなくなり、SSOサーバにかかる負荷はさらに減る。
いくつかの実施形態において、自動パスワード変更(PWC)プロセスはSSOシステムによって実施できる。SSOシステムはPWCページをテンプレートと照合し、PWCページに対応付けられたポリシーを特定できる。SSOアプリケーションはページテンプレートに一致する認証情報のリクエストを送信できる。認証情報を基に、現在のユーザ名とパスワードをPWCページのしかるべきフィールドに加えることができる。自動PWCのときにはSSOサーバで新たなパスワードを自動的に生成でき、自動的に生成された新たなパスワードでユーザの認証情報を更新できる。SSOサーバはその後、更新された認証情報をSSOアプリケーションへ返すことができる。SSOアプリケーションはPWCページのしかるべきフィールドに新しいパスワードを加え、パスワード変更リクエストを送出できる。ブロック420では、PWC結果を検証できる。パスワードが正常に更新された場合は、ブロック416で、変更が確定され、更新された認証情報が保存される。パスワードが正常に更新されなかった場合は、ユーザをPWCページに戻すことができる。
いくつかの実施形態では、手動PWCプロセスも提供できる。手動PWCでは、自動PWCと同様にPWCページが照合され、照合に基づいて認証情報が特定される。SSOアプリケーションは認証情報を受信し、PWCページのしかるべきフィールドに認証情報を挿入できる。手動PWCの場合、ポリシーは自動送出を無効にし、SSOアプリケーションが認証情報を自動的に送出するのを阻止できる。SSOアプリケーションはPWCページを監視し、ユーザによって手作業で入力される新しいパスワードを捕捉する。その後、ユーザから提供されたパスワードを用いて蓄積された認証情報を更新できる。いくつかの実施形態において、SSOサーバはユーザから提供されたパスワードが文字数や文字種等のパスワード基準(ウェブアプリケーションによって設定された基準、またはSSOサーバによって設定された基準)に適合していることを確認できる。
図5は、本発明の一実施形態に係る、様々な環境で実行できるプラグ方式シングルサインオンアプリケーションを示す。上述したように、プロキシはユーザのブラウザで実行するSSOアプリケーションをウェブアプリケーションからのレスポンスに付加し、SSOサーバと通信しながらポリシーおよび認証情報管理等のSSOサービスを提供できる。ユーザデバイスやクライアントやブラウザによって要件や能力は異なるため、SSOアプリケーションをプラグ方式にすることで様々な環境に対応できる。例えば環境変数500は、使用するクライアント(例えばクライアントはスタンドアロンクライアントか、あるはブラウザか)やブラウザ(Internet Explorer、Chrome、Firefox等)を規定する形に設定できる。サポートされたそれぞれのクライアントには、ブラウザ専用の、かつプラットフォーム専用の、ファンクション502を対応付けることができる。SSOアプリケーションのためプラットフォーム専用の、またはブラウザ専用の、プラグインを作ることで、新たなプラットフォームやブラウザのサポートを加えることができる。
SSOアプリケーションはインストール時に構成でき、あるいはSSOサーバからプラットフォーム専用SSOアプリケーションを提供できる。いくつかの実施形態において、一旦インストールされたSSOアプリケーションはプラットフォーム専用ファンクションを呼び出してSSOサービスを遂行できる。いくつかの実施形態では、プラットフォーム専用ファンクションに加えて、複数のプラットフォームにまたがる1組の共用ファンクションを提供できる。例えば、SSOサーバと通信するため呼び出されるファンクションを複数のプラットフォームにまたがって共用できるほか、ウェブページで認証情報を挿入し捕捉するプラットフォーム専用ファンクションも提供できる。
上述したように、SSOアプリケーションはユーザのブラウザアプリケーションにインストールされ、ユーザにSSOサービスを透過的に提供できる。加えて、SSOアプリケーションはユーザのクライアントデバイスの処理能力を利用してSSOサーバ102の処理量を減らすことができる。例えば、テンプレート照合や認証情報挿入やその他のSSO処理はクライアント側で片付けることができる。いくつかの実施形態において、ユーザはウェブベースのログオンマネージャインターフェースを通じてさらなるアプリケーションにアクセスし、さらなるSSO管理を遂行できる。
いくつかの実施形態において、クライアントはネットワークを介してリモートサーバで実行するウェブアプリケーションへリクエストを送信できる。このリクエストはSSOプロキシで受信でき、ウェブアプリケーションへ転送できる。いくつかの実施形態において、SSOプロキシは、ウェブアプリケーションがリクエスト側クライアントではなくSSOプロキシへレスポンスを返す形にリクエストを修正できる。ウェブアプリケーションはリクエスト(例えばウェブページを求めるウェブリクエスト)を受信し、レスポンスを返すことができる(例えばデータを含むウェブレスポンス、このデータはクライアントで実行するブラウザによって所望のウェブページに変えることができる)。SSOプロキシはリモートサーバからレスポンスを受信し、レスポンスを修正できる。いくつかの実施形態において、SSOプロキシはレスポンスに関係するポリシーおよび/または認証情報の情報をレスポンスに付け足す(例えば付加する)ことができる。例えばSSOプロキシは、ウェブアプリケーションに対応付けられたポリシーの情報(上述した1つ以上のテンプレート等)を、および/または認証情報の情報(ユーザおよびウェブアプリケーションに対応付けられたユーザ名およびパスワード等)を、取得するためのリクエストを、SSOサーバへ送信できる。SSOプロキシは、ポリシーおよび/または認証情報の情報のほかに、SSOアプリケーションをレスポンスに加えることもできる。SSOアプリケーションはJavascriptアプリケーションであってよく、あるいはクライアントで実行するブラウザアプリケーションの中で実行するように構成された他のアプリケーションであってよい。SSOプロキシはその後、付加されたレスポンスをクライアントへ返すことができる。レスポンスがクライアントで受信されると、ブラウザアプリケーションにSSOアプリケーションを自動的にインストールでき、ポリシーおよび/または認証情報の情報はクライアントに蓄積される。上述したように、SSOアプリケーションはその後、リクエストおよびレスポンスに対しSSOサービスを提供でき、それらは送信され受信される。
ウェブベースシングルサインオンログオンマネージャ
既存のログオンマネージャは通常、同じログイン方法を使用するアプリケーションへのアクセスだけを管理できる。例えばフォームフィルアプリケーションを、異なるログイン方法を使用する他のアプリケーションと一緒に管理することはできない。本発明の実施形態は、エンドユーザがアプリケーションにアクセスするための拠点を提供するエンドユーザアプリケーションダッシュボードを提供する。ダッシュボードはログイン要件がそれぞれ異なる複数のアプリケーションに対し統一的な足がかりを提供する。例えばフォームフィルアプリケーション、連合アプリケーション、アクセス制御され保護されない他のアプリケーションである。アプリケーションはダッシュボードに登録し、どのようにアクセスされるかを指定できる。登録後は、アプリケーションがどのようにアクセスされるかに基づいてアプリケーションのポリシーを規定できる。ダッシュボードは拡張可能であるため、新たなログイン種類をサポートできる。ダッシュボードは、アプリケーションがどのようにアクセスされかに関わりなく、ユーザの全アプリケーションに対しシンプルで統一されたアクセスポイントを提供する。
図6は、本発明の一実施形態に係る、デスクトップログオンマネージャインターフェースを示す。図6に見られるように、ログオンマネージャインターフェース600は1つ以上のアプリケーションアイコン602の統一的展望を提供でき、それぞれのアプリケーションアイコン602は、ユーザがアクセスできるウェブアプリケーション、サービス、および/またはシステムを表している。ユーザのアプリケーションアイコンはエンドユーザアプリケーションカタログすなわちダッシュボードに表示でき、それぞれのアプリケーションには異なるアクセス要件を対応付けることができる。ダッシュボードはユーザがシステムにログインした後に表示できる。いくつかの実施形態において、ユーザは自身のクライアントデバイスにログオンしてウェブログオンマネージャにアクセスできる。いくつかの実施形態において、ユーザはウェブログオンマネージャにアクセスする際に最初にログインできる。ダッシュボードに表示されるいくつかのアプリケーションは保護されておらず、アクセスにあたって認証情報を必要としないが、他のアプリケーションはフォームフィルアプリケーション、連合アプリケーション、またはその他アクセス種類であってよい。つまりダッシュボードはアクセス種類に関わりなくアプリケーションを表示でき、アプリケーションの統一的展望と単一のアクセスポイントをユーザに提示する。
ダッシュボードに表示されるアプリケーションには1つ以上のポリシーや1つ以上の認証情報を対応付けることができる。ポリシーはどのようにしてアプリケーションにアクセスできるかを定めるものであり、認証情報はアプリケーションにアクセスするユーザの認証に使える情報を提供する。いくつかの実施形態では、ユーザのダッシュボードを準備できる。例えば会社の新入社員は、eメールアプリケーションやビジネスアプリケーションのアイコン等、自身が今後利用するいくつかのアプリケーションアイコンが設定されたダッシュボードを持つことができる。ユーザのダッシュボードでアプリケーションが設定され見えるようになると、各アプリケーションのポリシー種類/認証情報種類はユーザに見えないよう隠される。ユーザはアプリケーションを選択するだけでアプリケーションにアクセスでき、アプリケーションへのアクセスにあたって詳細を管理する必要はない。
いくつかの実施形態において、ウェブログオンマネージャはユーザが利用できるアプリケーションを様々な形で表示でき、ユーザは、ダッシュボードにおけるアプリケーションの表示のあり方を変えたり整理したりすることによってダッシュボードのレイアウトをカスタマイズできる。例えばウェブログオンマネージャは検索機能604を提供し、ユーザが特定のアプリケーションを(例えば名前、種類、または他の特性で)検索できるようにし、一致するアプリケーションを含む検索ビューを表示できる。いくつかの実施形態において、ユーザは全表示606アイコンを選択して利用可能な全アプリケーションをダッシュボードに表示できる。ユーザは様々な次元(例えば最も頻繁にアクセスされるアプリケーション順、追加された時間順、アルファベット順、その他)でアプリケーションを並べ替えることを選ぶこともできる。いくつかの実施形態において、ユーザは特定のアプリケーションをお気に入りとして指定し、お気に入りアイコン608を選択することによってお気に入りに指定されたアプリケーションだけを見ることができる。いくつかの実施形態において、ユーザは最近アイコン610を選択することによって最近追加されたアプリケーションを見ることができる。
いくつかの実施形態において、ユーザはウェブログオンマネージャに新たなアプリケーションを手作業で追加612できる。例えばユーザはポリシーや認証情報を追加したり削除したりすることによってアプリケーションの追加や削除を行える。いくつかの実施形態において、ユーザはログオンマネージャを通じて自身の認証情報を更新できる。いくつかの実施形態では編集ビュー614を表示でき、ユーザはお気に入り616の指定やアプリケーションの設定を行える。例えばユーザは設定618を選択してアプリケーションに関する設定を手作業で更新(例えば認証情報やポリシーを更新)できる。ユーザはダッシュボードからアプリケーション名を選択(例えばクリック、またはタップ)することによってアプリケーションを起動できる。
いくつかの実施形態において、ユーザはカタログから使用可能なアプリケーションを選択してしかるべき認証情報を提供することによって自身のダッシュボードにアプリケーションを追加できる。アプリケーションにはそれぞれ種類の異なる認証情報を使用できる。ウェブログオンマネージャは選択されるアプリケーションに応じて認証情報の種類を判断し、しかるべき認証情報を求めるメッセージをユーザに向けて表示できる。いくつかの実施形態において、ユーザはアプリケーションについて独自の表示名や説明文やその他の詳細を提供できる。いくつかの実施形態において、表示名はユーザのために前もって表示できる。ユーザは必要に応じてこれを修正することを選べる。いくつかの実施形態では、同じウェブアプリケーションで複数の認証情報(例えばeコマースアプリケーションの複数のアカウントに相当)を提供できる。認証情報はダッシュボードの中でアプリケーションアイコンで表すことができ、自動的に数字やその他の標識を付けて区別できる。前記に加えて、または前記の代わりに、いくつかの実施形態では、ある1つのアプリケーションで複数のログオン認証情報を設定できる。例えばログオンマネージャは、ウェブアプリケーションにおけるユーザの活動を監視し、ユーザから提供される追加の認証情報を捕捉できる。
いくつかの実施形態において、ユーザはアプリケーションに対応付けられた認証情報を削除できる。認証情報が削除されると、ユーザのダッシュボードからアプリケーションが自動的に削除される。いくつかの実施形態において、ユーザがアプリケーションをお気に入りとして指定していた場合は、ユーザのダッシュボードのお気に入りビューにアプリケーションを表示し続けることもできる。ユーザは後ほどアプリケーションの新たな認証情報を追加し、アプリケーションをユーザのダッシュボードに戻すことができる。いくつかの実施形態において、ある1つのアプリケーションに対し複数の認証情報が蓄積されている場合、ユーザはそれぞれの認証情報を個別に削除できる。いくつかの実施形態において、ユーザはある1つのアプリケーションに対応付けられている全ての認証情報の削除を要求できる。
いくつかの実施形態において、ユーザは自身の認証情報を共用したり別のユーザに委譲したりすることができる。ダッシュボードは共用できるアプリケーションに「共用」アイコンを表示できる。アプリケーション開発者および/またはアドミニストレータはアプリケーションを共用する形に構成できる。いくつかの実施形態において、共用はアプリケーション単位で無効にできる。ユーザが自身の認証情報の共用を選ぶ場合は、認証情報を共用することとなるユーザに関するユーザ情報の提供をユーザに要求するプロンプトを表示できる。いくつかの実施形態において、プロンプトはユーザのリストを含むことができる(例えばエンタープライズユーザデータベースから挿入)。認証情報が委譲された場合は、委譲された者がその認証情報を別のユーザと共用することを阻止することもできる。いくつかの実施形態では、認証情報を共用できるユーザ数を最大数に制限できる。
ユーザは「取り消し」アイコンを選択することによっていつでも委譲を取り消すことができる。この取り消しアイコンは認証情報が別のユーザと共用される場合に表示できる。いくつかの実施形態において、認証情報を委譲するユーザは委譲期間を設定でき、この委譲期間を過ぎると認証情報は自動的に取り消される。
いくつかの実施形態において、ウェブログオンマネージャにはパスワード変更(PWC)ウィザードを組み込むことができる。上述したように、PWCウィザードには、ユーザが新しいパスワードを指定する手動モードと、PWCウィザードがユーザに代わって新しいパスワードを自動的に選択する自動モードを盛り込むことができる。
図7は、本発明の一実施形態に係る、ログオンマネージャインターフェース700を示す。ユーザがスマートフォンやタブレット等のモバイルデバイスからログオンマネージャにアクセスすると、インターフェースは自動的にユーザのデバイスのサイズおよび寸法要件に適応できる。モバイルログオンマネージャインターフェース700は図6に関して上述したフルスクリーンインターフェースやデスクトップインターフェースと同様の機能を提供できる。アイコン702および704等、それぞれのアプリケーションアイコンはサイズを変えてスクロール可能リストに表示できる。ユーザはアプリケーションの表示名の横にあるアイコン704を選択してアプリケーションの詳細を見ることができる。いくつかの実施形態において、詳細には、アプリケーションを編集(例えばアプリケーションに対応付けられた認証情報および/またはポリシーを更新)するオプションをユーザに提示できる。いくつかの実施形態では、アイコン704を選択することによってアプリケーションを起動できる。
図8は、本発明の一実施形態に係る、ログオンマネージャアーキテクチャを示す。図6および7に図示されたアイコンは、ウェブアプリケーション、ローカルアプリケーション、リモートアプリケーション等、それぞれ異なるアプリケーションを代表できる。上述したように、それぞれのアイコンには、SSOシステムがアプリケーションとどのようにやり取りするかを規定するポリシーと、アプリケーションへのアクセスをユーザに提供する認証情報とを対応付けることができる。図8に見られるように、ユーザはユーザのデバイス106Bで実行するSSOクライアント106を通じてログオンマネージャにアクセスできる。いくつかの実施形態において、クライアントはスタンドアロンクライアントであってよく、あるいはブラウザベースのクライアントであってよい。
いくつかの実施形態において、ユーザはウェブログオンマネージャのURLを訪ねることによってクライアントデバイス上のブラウザからログオンマネージャにアクセスできる。いくつかの実施形態において、ウェブログオンマネージャはSSOゲートウェイ108とSSOシステム102にまたがって分散させることができる。フロントエンドウェブログオンコンポーネント112AはSSOゲートウェイ108で実行でき、グラフィカルユーザインターフェース(GUI)を提供でき、このグラフィカルユーザインターフェースを通じてクライアント106からのリクエストを受信できる。いくつかの実施形態では、認証情報(例えばユーザ名とパスワード)をログオンマネージャに直接提供するようユーザに催促でき、あるいはユーザをリダイレクトしてSSOシステム102でログオンすることをユーザに催促することもできる。一旦ログオンすると、ユーザのブラウザにクッキーやその他の識別子を加えることができる。これはユーザがログインし、ログオンマネージャにアクセスでき、ダッシュボードを見ることができることを意味する。いくつかの実施形態において、タブレット、ラップトップ、またはスマートフォン等のデバイスにログインしたユーザは、さらなる認証情報を提供せずにログオンマネージャにアクセスできる。ログインしたユーザはダッシュボードに表示されたアプリケーションに対するアクセスをリクエストでき、さらなるログインは必要ない。
いくつかの実施形態において、ウェブログオンマネージャ112Aは、例えばユーザがダッシュボードに表示されたアプリケーションを選択したときに、ダッシュボードのアプリケーションにアクセスするためのリクエストを受信できる。リクエストはHTTP/HTTPSを介してフロントエンドウェブログオンコンポーネント112Aで受信でき、フロントエンドウェブログオンコンポーネント112Aでアクセスプロトコル(カリフォルニア州レッドウッドショアズのOracle International Corporationから入手できるOracle Access Protocol等)に変換でき、後置ウェブログオンコンポーネント112Bに転送できる。変換されたリクエストは、ウェブインターフェースのため、アプリケーションに対応付けられたポリシーのため、および/またはユーザに対応付けられた認証情報のため、フォーマットされたリクエストを含むことができる。後置ウェブログオンコンポーネント112Bはポリシーおよび/または認証情報リクエストを抽出し、それらをウェブインターフェース104を通じてSSOサービス100へ送信できる。ポリシーおよび/または認証情報はウェブインターフェース104を通じて後置ウェブログオンコンポーネント112Bへ返すことができる。ウェブログオンコンポーネント112Bはポリシーおよび/または認証情報を含むレスポンスメッセージを生成し、そのメッセージをアクセスプロトコルを介してウェブログオンコンポーネント112Aへ送信できる。ウェブログオンマネージャ112Aは、例えばアプリケーションのURLのHTTPリクエストを送信することによって、アプリケーションを起動できる。ウェブログオンマネージャ112Aは、アプリケーションに対応付けられたポリシーを使用し、アプリケーションから受信したレスポンスにポリシーを照合できる。ウェブログオンマネージャ112Aはポリシーに従って自動的にユーザ認証情報をアプリケーションに提供できる。
図9は、本発明の一実施形態に係る、ウェブログオンインターフェースを通じてウェブアプリケーションにアクセスする方法900のブロック図を示す。ブロック902では、ウェブログオンマネージャユーザインターフェースを通じてアプリケーションにアクセスするためのリクエストを受信できる。いくつかの実施形態において、リクエストは、ユーザのクライアントデバイス(デスクトップまたはモバイルコンピューティングデバイス等)で実行するブラウザアプリケーションを通じてウェブベースインターフェースを介して受信できる。いくつかの実施形態において、ユーザはブラウザアプリケーションでウェブログオンマネージャユーザインターフェースのURLを入力することによってウェブログオンマネージャユーザインターフェースへ進むことができる。いくつかの実施形態では、ブラウザアプリケーションを通じてウェブページやウェブアプリケーションのリクエストを送信する際に、ユーザを自動的にウェブログオンマネージャユーザインターフェースへリダイレクトできる。ウェブログオンマネージャユーザインターフェースはユーザインターフェースにアクセスするための認証情報をユーザにリクエストできる。
ブロック904では、アプリケーションに対応付けられたポリシーを特定できる。ポリシーはアプリケーションのアクセス要件を規定できる。例えばポリシーは、アプリケーションへのアクセスに必要な認証情報の種類を規定でき、また認証情報がどのようにしてアプリケーションに提供されるか(例えばどのフィールドで認証情報を受け取るか)を規定できる。いくつかの実施形態において、ウェブログオンマネージャは、ポリシーリクエストメッセージを生成し、ウェブインターフェースを通じてSSOシステムへポリシーリクエストメッセージを送信することによって、ポリシーを特定できる。ブロック906では、アプリケーション要件に基づいてユーザ認証情報を特定できる。いくつかの実施形態において、ウェブログオンマネージャは受信したポリシーに基づいて認証情報を特定できる。ウェブログオンマネージャは、認証情報リクエストメッセージを生成し、ウェブインターフェースを通じてSSOシステムへ認証情報リクエストメッセージを送信することによって、認証情報を引き出すことができる。
ブロック908で、適切なポリシーと認証情報を受信したウェブログオンマネージャは自動的にユーザ認証情報をアプリケーションに提供できる。いくつかの実施形態において、アプリケーションから着信ウェブページレスポンスを受け取ったウェブログオンマネージャは、ポリシーに基づいて認証情報を挿入するウェブページレスポンスのフィールドを特定し、ウェブアプリケーションへ認証情報を送出できる。いくつかの実施形態において、ポリシーリクエストに応じてフォームフィルポリシーを受け取ったウェブログオンマネージャは、アプリケーションに対応するグラフィカルユーザインターフェースのフィールドにユーザ認証情報を自動的に挿入し、グラフィカルユーザインターフェースを通じてアプリケーションへユーザ認証情報を送出できる。ウェブログオンマネージャはログオンのときにログオンが成功したことを確認し、ユーザへレスポンスウェブページを返すことができる。
いくつかの実施形態において、ユーザまたはアドミニストレータはログオンマネージャに新たなアプリケーションを追加できる。例えば新入社員が雇われる場合に、会社標準のアプリケーションやよく使われるアプリケーションを新入社員のダッシュボードに準備できる。新たなアプリケーションを追加することは、ログオンマネージャに新たなアプリケーションを追加するためのリクエストを受信することを含み得、このリクエストはユーザの認証情報とポリシーを含み得る。ウェブログオンマネージャは、ポリシーと認証情報を蓄積するため、ウェブインターフェースを通じてデータマネージャへリクエストを送信できる。データマネージャがポリシーと認証情報が正常に蓄積されたことを確認すると、ログオンマネージャは新たなアプリケーションに相当するアプリケーションアイコンをログオンマネージャに追加でき、そのアイコンはログオンマネージャで表示される。いくつかの実施形態では、複数のアプリケーションを一度に一括して追加できる。かかるリクエストは、ユーザのため複数のアプリケーションを準備するため、各アプリケーションのポリシーおよび認証情報を含むリクエストを受信することを含み得る。ウェブログオンマネージャはその後、各アプリケーションのポリシーおよび認証情報を蓄積するため、複数のリクエスト(または一括リクエスト)をデータマネージャへ送信できる。正常に蓄積されたことの確認を受け取ったウェブログオンマネージャは、複数のアプリケーションの各々に相当するアイコンをログオンマネージャに追加でき、ユーザがログオンマネージャにログインするとそれらのアイコンが表示される。
いくつかの実施形態において、ログオンマネージャインターフェースは様々な種類の認証情報が対応付けられたアプリケーションの統一的展望を提示する。例えば、ユーザのダッシュボードに表示されるアプリケーションアイコンはまとめて表示できる。アプリケーションを起動するためアプリケーションアイコンが選択されると、ウェブログオンマネージャはSSOシステムと通信し、しかるべき認証情報を使ってアプリケーションを起動できる。いくつかの実施形態において、ユーザのダッシュボードは認証情報の種類に基づいてアプリケーションを表示でき、あるいは複数のビューを表示でき、それぞれのビューには各種の認証情報に対応するアプリケーションが表示される。
上述したように、SSOサービスは、様々な経路を通じて(例えばユーザのブラウザにインストールされたSSOアプリケーションを通じて、ウェブログオンマネージャを通じて、または他の経路を通じて)、ユーザによってアクセスされ、ユーザに提供され得る。リクエストは、クライアントに依存しない標準的なSSOサービス提供方法を提供する1つ以上のウェブインターフェースを通じてSSOサーバ102に伝達できる。
シングルサインオンのためのウェブベースインターフェース統合
一実施形態によると、認証情報管理やポリシー管理を含むシングルサインオンサービスは、1つ以上のウェブインターフェースを通じてウェブベースまたはクラウドベースSSOシステムに一体化できる。クライアントは、ウェブを通じ、RESTインターフェース等の1つ以上のウェブインターフェースを介し、SSOシステムから提供されるSSOサービスにアクセスできる。従来、SSOサービスはローカルで(例えばローカルマシンやローカルネットワークで実行するSSOサービスを通じて)提供され、安全なポリシー・認証情報転送を提供するプロトコルを使って通信するように構成されていた。ただし、後方互換性を維持しながらウェブベースまたはクラウドベースのリモートSSOシステムからこれらのサービスにアクセスするには、込み入った通信課題がある。クライアントはHTTPかHTTPSでウェブリクエストを送信し、ウェブレスポンスを受信するように通常構成されるが、SSOサービスのリクエストとレスポンスはアクセスプロトコル(ネットワークアクセスプロトコルやOracle Access Protocol等)を通常使用する。本発明の実施形態はリクエストのトンネリングを助長し、クライアントからNAPを介してアクセスマネージャサーバへレスポンスをトンネルできる。
図10は、本発明の一実施形態に係る、シングルサインオンサービスが組み込まれたSSOサーバアーキテクチャ1000を示す。ウェブベースであれデスクトップベースであれ、シングルサインオンにはポリシー管理サービスと認証情報管理サービスが必要である。上述したように、ポリシーはシングルサインオンシステムがアプリケーションとどのようにやり取りするかを定めるものであり、認証情報はアプリケーションにアクセスするユーザの認証に使われる。本発明の実施形態はウェブベースシングルサインオンの提供を目的とする。それぞれのシングルサインオンサービス100はRESTインターフェース等のウェブインターフェース104を使って露出できる。上述したように、ウェブインターフェースを使用することで様々な種類のクライアント106がシングルサインオンサービス100にアクセスできるほか、新たなクライアントを容易に追加できる。いくつかの実施形態において、それぞれのSSOサービス100には異なるウェブインターフェースを対応付けることができる。ウェブインターフェースはポリシーや認証情報の作成、読み取り、更新、および削除(CRUD)を行う簡素な方式を提供する。
クライアント106は、シングルサインオンサービスのリクエストを、例えばポリシーや認証情報のリクエストを、SSOゲートウェイ108を通じてSSOシステム102へ送信できる。図10に見られるように、クライアント106からのリクエストは、アクセスエージェント110、ウェブログオンマネージャインターフェース112A、および/またはSSOアプリケーション114を通じてSSOゲートウェイ108で受信できる。リクエストは、例えばアクセスプロトコル(NAP、OAP等)でトンネルされるRESTリクエストであってよい。いくつかの実施形態では、1つのウェブインターフェースを使ってシングルサインオンサービスにアクセスできる。いくつかの実施形態では、それぞれのシングルサインオンサービスにサービス専用ウェブインターフェースを対応付けることができる。
いくつかの実施形態において、アクセスエージェント、ログオンマネージャ、またはプロキシを通じてSSOサービスのリクエストがなされる場合は、クライアントからHTTPまたはHTTPSリクエストとしてリクエストを受信できる。SSOゲートウェイ108にはトンネルプロキシ1002Aを組み込むことができ、トンネルプロキシ1002AはNAP(ネットワークアクセスプロトコル)かOAP(Oracle Access Protocol)を介してSSOサーバ102へHTTPリクエストをトンネルできる。SSOゲートウェイ108とSSOサーバ102にあるNAP/OAPエンドポイント1004との間にNAPまたはOAP接続を開通できる。いくつかの実施形態において、NAP/OAPエンドポイント1004は指定URLでアクセスされるウェブインターフェースであってよい。SSOサーバ102にあるトンネルプロキシ1002Bはリクエストを変換してHTTPまたはHTTPSに戻し、変換したリクエストをSSOサーバ102にあるしかるべきSSOサービス100へ送信できる。いくつかの実施形態において、サービスは、トンネルされたリクエストを受信し、かつトンネルプロキシを通じてトンネルされたレスポンスを送信するため、トンネルプロキシ1002Bに登録できる。SSOサーバ102からリクエスト側クライアントへ至るレスポンスも同様にトンネルバックできる(例えばリクエストされたサービス100によって生成されるHTTPまたはHTTPSレスポンスは、リクエストをNAP/OAPに変換できるトンネルプロキシ1002Bで受信でき、トンネルされたレスポンスはウェブインターフェース1004を通じてトンネルプロキシ1002Aへ送信できる)。
例えばURLはSSOゲートウェイ108からSSOサーバ102へトンネルされるよう設定できる。いくつかの実施形態において、URLはSSOサーバ102でSSOサービス100に対応するサーブレットまたはJSPページにマップできる。HTTP/SリクエストがURLへ送信されると、HTTP/SリクエストはNAP/OAPリクエストに変換され、NAP/OAP接続を介してSSOサーバ102へ転送される。SSOサーバ102のエンドポイント1004はNAP/OAPリクエストを受信し、このリクエストをトンネルプロキシ1002Bに引き渡す。トンネルプロキシ1002BはNAP/OAPリクエストをHTTP/Sリクエストに変換し、このリクエストを適切なサービスへ送信できる。例えばトンネルプロキシはNAP/OAPリクエストをHTTPServletRequestに変換し、適切なサーブレットを呼び出すことができる(JSPの場合はJSPファイルからコンパイルされたServlet)。レスポンスはトンネルプロキシ1002BでNAP/OAPに戻し、NAP/OAPエンドポイント1004へ引き渡すことができる。NAP/OAPレスポンスはその後SSOゲートウェイへ返され、そこでトンネルプロキシ1002AはNAP/OAPレスポンスをHTTP/HTTPSレスポンスに戻すことができ、HTTP/HTTPSレスポンスは、ユーザのブラウザ等、クライアントへ返される。
いくつかの実施形態では、ウェブインターフェース層1004(REST層等)を通じて受信されるリソースのリクエスト(アプリケーション、認証情報、ポリシー、またはその他データへのアクセス等)を解析し、所望のリソースが保護されているか否かを、またリクエストに認証クッキーが付属しているか否かを、判断できる。認証クッキーが提供されない、もしくは期限切れで、所望のリソースが保護されている場合は、認証サービスへ、例えばカリフォルニア州レッドウッドショアズのOracle International Corporationから入手できるOracle Authentication Managerへ、リクエストをリダイレクトできる。認証サービスはユーザに認証情報(例えばユーザ名とパスワード)をリクエストできる。認証情報を受け取った認証サービスは認証情報を検証し、認証情報が有効ならば、認証クッキーをユーザのブラウザに返すことができる。リソースリクエストはその後ウェブインターフェース層へリダイレクトでき、認証クッキーは所望のリソースへのアクセスを提供する。いくつかの実施形態において、タイムアウトか積極的ログアウトによりユーザがセッションを終了する場合、ウェブインターフェース層はセッション情報を破壊してユーザをログオン画面に戻すことができる。
図11Aおよび11Bは、本発明の一実施形態に係る、ポリシーマネージャアーキテクチャ1100と認証情報マネージャアーキテクチャ1102を示す。図11Aに見られるように、ポリシーマネージャ1104は、複数のポリシーリポジトリ/システムにわたるポリシーの蓄積や引き出し等、SSOポリシー管理サービス1106への集約的アクセスを提供できる。ポリシーマネージャ1104にはウェブインターフェース104(例えばRESTインターフェース)を対応付けることができ、そうすることでポリシーマネージャはウェブを介してリクエストを受信したりレスポンスを送信したりできる。これによりポリシーマネージャプラットフォームは独立し、ウェブベースのメッセージを送受できるどのクライアントともやり取りできるようになる。いくつかの実施形態では、ポリシーマネージャ1104を使ってユーザポリシーや運営ポリシーを管理できる。ポリシーマネージャ1104はプラグイン1106を使って様々な種類のアクセス制御をサポートする形に構成できる。それぞれのプラグインは、ポリシーの種類に応じてポリシーを作成、読み取り、更新、および削除する1つ以上の独自の方法を含むことができる。新たなアクセス制御種類のサポートを加えるため、新たなプラグインをポリシーマネージャに提供できる。
いくつかの実施形態において、ポリシーマネージャ1104は特定のポリシー種類からの抽象化層を提供でき、例えばクライアントはウェブインターフェース104を通じてポリシーマネージャ1104と通信する方法さえ知っていればよく、基礎となるポリシー種類と通信する方法を知る必要はない。リクエストを受け取ったポリシーマネージャ1104は、リクエストに対応するポリシー種類を判断でき、該当するプラグイン1106を使用し、ポリシー種類に合ったリクエストを生成できる。ポリシーマネージャ1104はポリシー種類に合ったリクエストをデータマネージャ122へ送信できる。後述するように、データマネージャ122は様々なデータソースへの抽象化層を提供する。データマネージャはリクエストに応じてデータを特定し、特定したデータをポリシーマネージャへ返すことができる。例えばポリシーマネージャからの検索リクエストは、リクエストに含まれる検索条件(例えばフィルタ、ポリシー識別子、ポリシー種類、その他)に応じてポリシーのリストを返すことができる。いくつかの実施形態において、条件が提供されない場合は全てのポリシーを取り出して返すことができる。新たなポリシーが追加されると、ポリシーマネージャ1104は識別子を作り、新たなポリシーに識別子を割り当てることができる。いくつかの実施形態では、複数のポリシーに同じ識別子を割り当てることができる。ポリシーマネージャ1104はその後、識別子とポリシーを含むリストをデータマネージャ122に引き渡すことができる。同様に、更新操作は、1つ以上の既存ポリシーに割り当てられた識別子と更新されたポリシー情報を含んでよい。ポリシーマネージャ1104は識別子と更新されたポリシーをデータマネージャ122へ送信でき、データマネージャ122は更新されたポリシーを蓄積できる。削除リクエストは1組の識別子を含んでよく、データマネージャ122は特定されたポリシーを削除し、削除のステータス情報を返すことができる。いくつかの実施形態において、ポリシー管理リクエストは、エンドユーザからクライアントデバイスを通じて、および/またはアドミニストレータからアドミンコンソールを通じて、受信できる。
いくつかの実施形態において、ポリシーマネージャ1104はアプリケーションテンプレートを管理できる。それぞれのアプリケーションテンプレートは、アプリケーションにSSOサービスをどのように提供するかを定める定義を含むオブジェクトであってよい。例えばアプリケーションテンプレートは、SSOシステムがSSOサービスとやり取りし照合し、挿入し、特定のアプリケーションに提供する方法を定義できる。所与のアプリケーションテンプレートには様々な照合種類に各々相当する1つ以上のサブフォームを対応付けることができる(例えばログインUI、パスワード変更UI、成功/失敗UI、相互作用の方法、その他)。いくつかの実施形態において、特定のアプリケーションテンプレートには多数のユーザを対応付けることができ、ユーザは多数のアプリケーションテンプレートにアクセスできる。さらに、いくつかの実施形態において、アプリケーションテンプレートには多数の認証情報を対応付けることができる。いくつかの実施形態において、アプリケーションテンプレートには1つ以上の他のポリシーを対応付けることができる(例えばパスワードポリシー、認証情報共用ポリシー、その他)。
いくつかの実施形態において、ポリシーマネージャ1104はパスワードポリシーを管理できる。上述したように、それぞれのパスワードポリシーにはパスワードポリシーを共用する1つ以上のアプリケーションテンプレートを対応付けることができる。パスワードポリシーは、アプリケーションのパスワードを設定したり更新したりする際にプロビジョニングマネージャ1112および/またはパスワードリセットマネージャ1114で使用できる。いくつかの実施形態では、プロビジョニングおよび/またはパスワードリセットのときにパスワードを自動的に生成するためパスワードポリシーを使用できるほか、ユーザから受け取ったパスワードを検証するためパスワードポリシーを使用できる。いくつかの実施形態において、ポリシーマネージャ1104は、ユーザ設定やローカルに配備された設定より優先する運営ポリシーを管理できる。
図11Bに見られるように、認証情報マネージャ1110は別々のリポジトリ120に蓄積された1種類以上の認証情報にわたるエンドユーザ認証情報管理のための集約的アクセスを提供できる。認証情報マネージャ1110はクライアントからの認証情報管理操作を抽象化でき、必要なロジック量を減らして新たなクライアントの開発を簡素化する。認証情報マネージャ1110はプラットフォームから独立しており、ウェブ上でメッセージを送受できるどのクライアントとも通信できる。
いくつかの実施形態において、認証情報マネージャ1110は複数のリポジトリ120にわたる認証情報の蓄積と引き出しを管理でき、既存のユーザ認証情報にアクセスするための後方互換性を提供する。認証情報マネージャ1110は、クライアントが委譲認証情報や特権認証情報を含む様々な種類のSSO認証情報を管理することを可能にできる。認証情報マネージャはウェブインターフェース104を通じてAPIを公開することができ、APIは、認証情報の取得、追加、更新、削除といったCRUD操作を提供する。これは認証情報ストアからの抽象化層を提供し、例えばクライアントは認証情報マネージャと通信する方法さえ知っていればよく、多数のサポートされた認証情報データストアと通信する方法を知る必要はない。ウェブインターフェース104を通じて認証情報リクエストを受け取った認証情報マネージャ1110は、認証情報の種類に応じた1つ以上のサブマネージャ(特権認証情報マネージャ1114、委譲認証情報マネージャ1118、SSO認証情報マネージャ1120等)を使ってリクエストを解析でき、適切なデータストアを特定し、認証情報リクエストを履行する。
いくつかの実施形態において、認証情報マネージャ1110は所与のユーザの認証情報リクエストを受信できる。認証情報マネージャ1110はそれぞれのサブマネージャ1114、1118、1120へリクエストを送信でき、ユーザに対応付けられた認証情報を特定し、一致する認証情報を返す。いくつかの実施形態において、認証情報マネージャ1110は、特権アカウント認証情報等の認証情報を取得するためのリクエストを受信できる。認証情報マネージャは認証情報を取得するため、認証情報を取得するためのリクエストを該当するサブマネージャへ送信できる(例えば特権アカウント認証情報を追加する場合、認証情報マネージャは特権認証情報マネージャ1114へリクエストを送信できる)。該当するサブマネージャは(例えば特権サーバ1116から)認証情報を調べ出し、この認証情報を認証情報マネージャ1110へ返すことができる。いくつかの実施形態において、機密扱いにするべき認証情報のフィールドは、認証情報マネージャ1110へ認証情報を送信する前に暗号化できる。
いくつかの実施形態において、認証情報マネージャ1110は、認証情報取得操作を受け取る場合に、リクエストに基づいて認証情報(例えばリクエストで指定されるユーザ、認証情報ID、認証情報種類、またはその他基準に対応する認証情報)のリストをリクエストできる。いくつかの実施形態において、リクエストで基準が指定されない場合、認証情報マネージャ1110はリクエストするユーザに対応付けられた全ての認証情報をリクエストできる。いくつかの実施形態において、認証情報マネージャ1110はユーザの認証情報を追加するためのリクエストを受信できる。認証情報マネージャ1110は認証情報ごとに認証情報識別子を生成し、追加すべき認証情報の種類に応じて該当するサブマネージャを呼び出すことができる。サブマネージャは受け取った認証情報を検証でき、適切なデータリポジトリ120に認証情報を蓄積するためデータマネージャ122へリクエストを送信できる。データマネージャは追加された認証情報のステータスを返すことができる。同様に、認証情報マネージャ1110は認証情報を更新するためのリクエストを受信できる。認証情報マネージャ1110は、更新された認証情報を含むリクエストを該当するサブマネージャへ送信できる。サブマネージャは更新された認証情報を検証でき、更新された認証情報を蓄積するためデータマネージャ122へリクエストを送信できる。更新ステータスを返すことができる。いくつかの実施形態において、認証情報マネージャ1110は認証情報を削除するためのリクエストを受信できる。認証情報マネージャ1110は該当するサブマネージャを特定し、そのサブマネージャへ認証情報を削除するためのリクエストを送信できる。いくつかの実施形態において、認証情報が委譲されている場合は、削除に先立ち委譲を取り消すことができる。
図12は、本発明の一実施形態に係る、ウェブベースインターフェースを通じてSSOサービスを提供する方法1200のブロック図を示す。ブロック1202では、シングルサインオンサービスに対するリクエストが受信される。リクエストは、クライアントデバイス、アドミンコンソール、アプリケーション、または他の何らかのエンティティから受信できる。リクエストはシングルサインオンサービスに対応付けられたウェブインターフェースを介して受信できる。いくつかの実施形態では、1つのウェブインターフェースが1つ以上のSSOサービスへ向けられた全リクエストの集中入口点として機能できる。リクエストが受信されると、そのリクエストに対応するSSOサービスを特定でき、そのSSOサービスに対応するエンドポイントへリクエストを転送できる。
いくつかの実施形態において、プロキシは第1のプロトコルでリクエストを受信でき、プロキシはリクエストを第1のプロトコルから第2のプロトコルに変換し、変換されたリクエストをシングルサインオンサービスへ転送する。例えばリクエストはHTTP/Sリクエストであってよく、プロキシはNAPやOAP等のアクセスプロトコルでHTTP/Sリクエストをトンネルできる。いくつかの実施形態では、第2のプロキシがトンネルされたリクエストを受信し、SSOサービスへ引き渡すHTTP/Sリクエストを抽出できる。いくつかの実施形態では、レスポンスも同様にトンネルされてリクエスト側クライアントへ返すことができる。例えば第2のプロキシはSSOサービスからレスポンス(例えばリクエストされた認証情報、ポリシー、確認メッセージ等を含む)を受信できる。レスポンスはHTTP/Sレスポンスであってよい。プロキシはNAP、OAP、または類似アクセスプロトコルを使ってHTTP/Sレスポンスをトンネルし、トンネルされたレスポンスをプロキシを介してリクエスト側クライアントへ返すことができる。
ブロック1204では、ポリシーまたは認証情報を管理するためのリクエストに基づきデータマネージャへデータリクエストを送信できる。いくつかの実施形態において、SSOサービスに対するリクエストは、例えばポリシー管理リクエスト(ポリシーを作成、読み取り、更新、または削除するためのリクエスト等)であってよく、あるいは認証情報管理リクエスト(認証情報を作成、読み取り、更新、または削除するためのリクエスト等)であってよい。
種類の異なるポリシーは、データソース専用のインターフェースでアクセスできる別々のデータソースに蓄積されるため、従来、SSOシステムで扱えるポリシーの種類には限りがあった。これはエンドユーザが選べるオプションを制限し、あるいは多数のアプリケーションをサポートすることをエンドユーザに強いた。ただし上述したように、本発明の実施形態が提供するポリシーマネージャは第1の(汎用)インターフェースを通じてリクエストを受信できる。リクエストはインターフェースに従って遂行すべきポリシー管理操作(例えばCRUD操作)を指定できる。ポリシー管理リクエストはデータソースに依存しなくてよい(例えばリクエストはポリシーがどこにどのように蓄積されるかを指定しなくてよい、あるいはリクエストはデータソースによって異なる操作を含まなくてよい)。ポリシーマネージャはその後、ポリシー管理リクエストに対応するポリシー管理プラグインを特定し、特定したポリシー管理プラグインに基づき第2の(データソース専用)インターフェースの形式にポリシー管理リクエストを変換できる。ポリシーマネージャはその後、1つ以上のポリシー管理操作に基づいてデータリクエストを生成できる。
同様に、認証情報は、それぞれ専用のインターフェースでアクセスできる様々な認証情報ストアに蓄積できる。これは従来、SSOアプリケーションを同種の認証情報を使用するものに限定していた。本発明の実施形態が提供する認証情報マネージャは、別々の認証情報ストアに蓄積された様々な種類の認証情報を管理する形に構成できる。認証情報管理リクエストを受信したら、これを認証情報マネージャへ送信できる。ポリシーマネージャと同様、認証情報マネージャは汎用インターフェースを通じてリクエストを受信できる。これは、認証情報管理リクエストを出すクライアントとそのリクエストに応じる認証情報ストアとの間で抽象化層として機能する。いくつかの実施形態において、認証情報マネージャは認証情報管理リクエストに対応するサブマネージャを特定し、特定したサブマネージャに基づき第2のインターフェースの形式に認証情報管理リクエストを変換できる。第2のインターフェースはサブマネージャによって管理される特定の認証情報ストアに一致し得る。認証情報マネージャはその後、1つ以上のポリシー管理操作に基づいてデータリクエストを生成できる。
ブロック1206では、対応するウェブインターフェースを介してレスポンスが返される。レスポンスはリクエストに従って引き出されたデータ(例えばポリシー、認証情報)を含むことができる。いくつかの実施形態において、レスポンスは作成、更新、または削除操作が成功したか失敗したかを伝えることができる。
仮想データストレージとポリシーおよび認証情報データソースの管理
上述したように、本発明の実施形態は、フォームフィル、連合、保護等、種々のアクセスを利用する1つ以上の異なるアプリケーションでシングルサインオンをサポートできる。アクセスの種類が異なるポリシーや認証情報は種類の異なるリポジトリに蓄積できる。一実施形態によると、統一インターフェースを通じて種々のアクセスをサポートするため、実際の物理的ストレージ(OID、AD、ADAM、データベース、その他)に依存しない仮想データ管理システムが提供される。データ管理システムは認証情報とポリシーを管理するためSPI層を提供できる。データ管理システムはまた、CRUD操作を遂行するためAPIを提供でき、使用するデータストアコンテナに依存せず権限(ACL権限、データレベル権限等)を管理できる。いくつかの実施形態において、データ管理システムはデータアクセスを高速化するためマルチハッシュマップ方式のキャッシュを使用できる。
いくつかの実施形態において、データ管理システムは、認証情報、ポリシー、運営サービス、および他の構成およびセキュリティサービスを管理できる集約的リポジトリを提供する。これは、ユーザが様々なクライアント106を通じてSSOサービスにアクセスしSSOサービスを消費することを可能にする。データ管理システムは、Oracle Directory Servers(OID、ODSEE、OUD)、Microsoft Active Directory、Microsoft ADAM/AD−LDS、および他のLDAP適合ディレクトリ、ならびにSQLデータベース、およびローカルまたはネットワークファイルシステム等、様々なリポジトリおよびサービスに対し統一的なインターフェースを提示できる。データ管理は拡張可能であり、適合プラグインを実装することによって新たなデータソースやサービスをデータ管理システムに組み入れることができる。
いくつかの実施形態において、データ管理システムは、クライアントによってローカルに蓄積された認証情報を、データ管理システムによって管理される1つ以上の認証情報データストアに蓄積された認証情報に同期させることができる。(例えば起動時に、または認証情報が追加、削除、または更新されるときに)同期イベントがトリガーされると、データ管理システムは、クライアントキャッシュに蓄積された認証情報データを、データ管理システムによって管理されるリポジトリに蓄積された認証情報データに比較できる。認証情報は、(例えばユーザにより)クライアントでローカルに更新でき、あるいは(例えばアドミニストレータにより、またはサードパーティ認証情報サービスにより)認証情報リポジトリで直接更新できる。同期のときには、ローカルに蓄積された認証情報と1つ以上の認証情報データストアに蓄積された認証情報に矛盾が見つかる可能性がある。矛盾ポリシーはどの認証情報を保存すべきかを規定できる。いくつかの実施形態では、最後に更新された認証情報を保存でき、他の認証情報は破棄できる。いくつかの実施形態では、認証情報データストアに蓄積された認証情報を保存でき、ローカルに蓄積された他の認証情報は破棄できる。同期はデスクトップベースSSOサービスとの後方互換性も維持する。デスクトップベースサービスはローカルに保管された認証情報とポリシーを使ってSSOサービスを提供するため、ローカルストアとウェブベースリポジトリとの同期を維持することで、デスクトップベースSSOサービスは最新のSSOサービスを提供し続けることができる。
図13は、本発明の一実施形態に係る、データマネージャアーキテクチャ1300を示す。図13に見られるように、データマネージャ122は、拡張可能プラグイン1304を通じて1つ以上の異なる物理的ストレージシステム1302をサポートできるSSOデータ管理のための集約的インターフェースを提供する。それぞれのプラグインは、SSOサービスから受信するデータリクエストを該当する物理的ストレージシステムで遂行することを可能にできる。データマネージャは拡張可能であるため、該当するプラグインを追加することで新たな種類の物理的データソースをサポートできる。データマネージャはデスクトップベースSSOサービスに対し後方互換性を有する。
データマネージャ122は、複数のリポジトリ1302にわたってポリシーの蓄積と引き出しを可能にする単一のインターフェースを提供する。データリクエストは、特定のリポジトリ情報やリポジトリ固有操作を必要としない単一のAPIを通じてデータマネージャ122で受信できる。代わりに、データマネージャ122はリクエストに適したリポジトリを特定し、該当するプラグイン1304を通じてそのリポジトリへリクエストを送信できる。いくつかの実施形態において、データマネージャ122はそれぞれのプラグインと連係するSPI層を提供する。データマネージャ122は、ポリシー、認証情報、およびプロビジョニングデータに関わるCRUD操作のための統一的なインターフェースを露出する。
SPI層はCRUD操作の種類に基づいてプラグインインスタンスを自動初期化できる。いくつかの実施形態において、データマネージャ122は、データストア1202を指定せずにCRUD操作を遂行するために使われる汎用インターフェースを提供できる。いくつかの実施形態では、各種の操作(例えば認証情報、ポリシー、およびプロビジョニング操作)のために汎用インターフェースを提供できる。汎用インターフェースを通じてリクエストが受信されると、データマネージャ122は、SSOシステム102によって(例えばデータマネージャ122によって)管理される設定情報からデータストアに特化した操作や接続情報を特定できる。データマネージャ122はその後、データストアと通信するため該当するプラグインを初期化できる。
いくつかの実施形態において、プラグインインスタンスが初めて呼び出されて初期化が行われるときには、データストアのためコンテクストオブジェクトプールを作成できる。これは高度なアベイラビリティとスレッド安全性を提供できる。CRUD操作ごとに別々のコンテクストオブジェクトをプールから割り当てることができ、操作が完了したらプールに戻すことができる。データマネージャ122は、コネクションプーリング(例えばJNDIサービスプロバイダによって提供)とコンテクストプーリングを使用でき、アプリケーションが起動するときに接続のプールを作り、接続を作るのにかかる時間や切断するのにかかる時間を短縮することによってリソースを節約する。また、コネクションプールを開始することで、接続作成、アプリケーションの最大接続数、接続の最大アイドル時間、およびその他構成詳細をコネクションプールマネージャに委任できるため、データストアへの接続の管理を簡素化できる。
いくつかの実施形態では、様々なデータリポジトリ1302に蓄積されたポリシーや認証情報を調べるときのパフォーマンスを向上させるため、1つ以上のハッシュマップをデータマネージャ122で使用できる。いくつかの実施形態において、ある1つのハッシュマップはポリシー種類を識別子とポリシーオブジェクトにマップできる。別のハッシュマップはポリシー名をポリシーリファレンスにマップできる。別のハッシュマップはキーをポリシーオブジェクトにマップできる。別のハッシュマップは値をポリシーオブジェクトのリストにマップできる。
いくつかの実施形態では、認証情報、ポリシー、およびプロビジョニングサービスで作成、読み取り、更新、および削除(CRUD)操作をサポートできる。データマネージャ122はウェブインターフェースを通じてCRUD操作を露出できる。例えば認証情報操作は、指定されたオブジェクト(例えばアプリケーション、サービス)の新たな認証情報を作成すること、ユーザおよび少なくとも1つのアプリケーションに対応付けられた認証情報を読み取ること(例えば引き出すこと)、指定された認証情報を更新すること(例えば認証情報を修正すること、または新たな認証情報を提供すること)、および指定されたオブジェクトの認証情報を削除することを含み得る。ポリシーおよびプロビジョニングサービスでも同様の操作を提供できる。
いくつかの実施形態において、データマネージャ122は、アプリケーションテンプレート、パスワードポリシー、認証情報共用グループ、および運営データを含むポリシーデータへのCRUD操作をサポートできる。いくつかの実施形態において、データマネージャ122はさらに、認証情報データ、プロビジョニングデータ(例えば命令/キー)、ユーザ設定、データ管理設定、ユーザシークレット(UAM)、暗号鍵(UAM)、およびエンロールメント認証情報(UAM)へのCRUD操作をサポートできる。
図14は、本発明の一実施形態に係る、複数のデータストアに蓄積された認証情報を管理する方法1400のブロック図を示す。ブロック1402で、拡張可能データマネージャは1つ以上のシングルサインオンサービスに対し1つ以上のストレージシステムの統一的展望を提供できる。いくつかの実施形態において、それぞれのシングルサインオンサービスにはウェブインターフェースが対応付けられる。
ブロック1404では、シングルサインオンサービスから認証情報を求めるデータリクエストを拡張可能データマネージャで受信できる。拡張可能データマネージャは1つ以上のストレージシステムに対し抽象化層として機能できるため、リクエストはストレージシステムに依存しない。例えばデータリクエストは、所望の認証情報を特定するための基準を含むことができる。基準は様々な種類の認証情報に一致するため広範であってよい。従来のシステムでは、ユーザがそれぞれの認証情報ストアで一致する認証情報を別々に検索しなければならない。しかし本発明の一実施形態によると、データマネージャは1つのリクエストを受信し、複数の認証情報ストアにまたがって検索できる。
ブロック1406では、リクエストに対応する少なくとも1つのストレージシステムを特定できる。例えばデータマネージャは、認証情報ID、認証情報種類、その他基準等、リクエストに含まれる基準に基づき、1つ以上の対応するストレージシステムを特定できる。いくつかの実施形態において、データマネージャはハッシュマップを使用し、基準を基に該当するストレージシステムを特定できる。
ブロック1408では、少なくとも1つのストレージシステムの各々に対応するストレージシステムプラグインを特定できる。データマネージャは、プラグインを提供することによって多数のストレージシステムが連係できるSPI層を含むことができる。それぞれのプラグインは、第1の(汎用)インターフェースを通じてデータマネージャで受信するデータリクエストを、対応するストレージシステムに適合する形に変換できる。いくつかの実施形態では、データマネージャにプラグインを加えることで新たなストレージシステムのサポートを提供できる。データマネージャはアドミニストレータから新たなストレージシステムに対応するストレージシステムプラグインを受け取ることができる。いくつかの実施形態において、プラグインはデータマネージャによって提供されるSPIを実装できる。データマネージャはプラグインを検査し(例えば必要な方法や構成ファイルが提供されていることを確認)、ストレージシステムプラグインをSPI層に加えることができる。
ブロック1410では、ストレージシステムプラグインを使ってストレージシステムからデータリクエストに対応するデータを引き出すことができる。いくつかの実施形態では、データリクエストに対応するデータを作成、読み取り、更新、または削除するため、第2の(ストレージシステム専用)インターフェースを通じてストレージシステムへ変換されたデータリクエストを送信できる。引き出されるデータは、所望の認証情報またはポリシーを、または作成、更新、または削除操作の成否の確認を、含むことができる。
ブロック1412では、リクエストされたデータをSSOサービスへ返すことができる。いくつかの実施形態において、リクエストされたデータは検索リクエストに一致する1つ以上の認証情報を含んでよい。いくつかの実施形態において、リクエストされたデータは作成、更新、または削除操作の成否の確認を含んでよい。いくつかの実施形態において、データマネージャは、ストレージシステムから第2の(ストレージシステム専用)インターフェースを通じて認証情報を含むレスポンスを受信できる。データマネージャは認証情報の少なくとも一部分は暗号化でき、第1のインターフェースに基づいてレスポンスの形式を変えた後、第1のインターフェースを通じてレスポンスを返すことができる。
いくつかの実施形態において、データマネージャはアプリケーションのポリシーに関わるデータリクエストを受信することもできる。データマネージャは、リクエストに対応する少なくとも1つのストレージシステムと、少なくとも1つのストレージシステムに対応する少なくとも1つのストレージシステムプラグインを、特定できる。データマネージャはその後、少なくとも1つのストレージシステムプラグインを通じて少なくとも1つのストレージシステムでアプリケーションの1つ以上のポリシーを作成、読み取り、更新、または削除できる。いくつかの実施形態において、データマネージャは、リクエストを第1の(例えば汎用)インターフェースから第2の(例えばポリシーストア専用)インターフェースに変換でき、第2のデータリクエストに応じて少なくとも1つのポリシーを引き出すため、変換されたデータリクエストを第2のインターフェースを通じてストレージシステムへ送信できる。レスポンスも同様に第2のインターフェースから第1のインターフェースに形式を変えることができ、その後リクエスト側アプリケーションに返される。
図15は、実施形態のいずれか1つを実装する分散システム1500の簡略図を示す。図示された実施形態で、分散システム1500は1つ以上のクライアントコンピューティングデバイス1502、1504、1506、および1508を含み、クライアントコンピューティングデバイス1502、1504、1506、および1508は、1つ以上のネットワーク1510を介してウェブブラウザや独自クライアント(例えばOracle Forms)等のクライアントアプリケーションを実行し操作するように構成される。サーバ1512はネットワーク1510経由で遠隔地のクライアントコンピューティングデバイス1502、1504、1506、および1508と通信する形に結合され得る。
様々な実施形態において、サーバ1512は、システムの1つ以上のコンポーネントによって提供される1つ以上のサービスまたはソフトウェアアプリケーションを実行するよう設定されてよい。いくつかの実施形態において、これらのサービスは、ウェブベースサービスとして、またはクラウドサービスとして、またはSoftware as a Service(SaaS)モデルのもとで、クライアントコンピューティングデバイス1502、1504、1506、および/または1508のユーザに提供されてよい。クライアントコンピューティングデバイス1502、1504、1506、および/または1508を操作するユーザは、1つ以上のクライアントアプリケーションを利用してサーバ1512とやり取りし、これらのコンポーネントによって提供されるサービスを利用してよい。
図示された構成で、システム1500のソフトウェアコンポーネント1518、1520、および1522はサーバ1512で実装されたものとして示されている。他の実施形態において、システム1500の1つ以上のコンポーネントは、および/またはこれらのコンポーネントによって提供されるサービスは、1つ以上のクライアントコンピューティングデバイス1502、1504、1506、および/または1508によって実装されてもよい。クライアントコンピューティングデバイスを操作するユーザは1つ以上クライアントアプリケーションを利用してこれらのコンポーネントによって提供されるサービスを使用してよい。これらのコンポーネントはハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせで実装されてよい。分散システム1500とは異なる様々なシステム構成が可能であることを理解されたい。図示された実施形態は実施形態システムを実装する分散システムの一例であり、限定を意図するものではない。
クライアントコンピューティングデバイス1502、1504、1506、および/または1508は、Microsoft Windows Mobile(登録商標)等のソフトウェアを、および/またはiOS、Windows Phone、Android、BlackBerry 10、Palm OS等の種々モバイルオペレーティングシステムを、実行し、かつインターネット、eメール、ショートメッセージサービス(SMS)、Blackberry(登録商標)、またはその他通信プロトコルに対応する、手持ち型可搬デバイス(例えばiPhone(登録商標)、携帯電話機、iPad(登録商標)、コンピューティングタブレット、個人用デジタル補助装置(PDA))またはウェアラブルデバイス(例えばGoogle Glass(登録商標)ヘッドマウントディスプレイ)であってよい。クライアントコンピューティングデバイスは、例えばMicrosoft Windows(登録商標)、Apple Macintosh(登録商標)、および/またはLinux(登録商標)オペレーティングシステムの種々バージョンを実行するパーソナルコンピュータおよび/またはラップトップコンピュータを含む、汎用パーソナルコンピュータであってよい。クライアントコンピューティングデバイスは、様々なGNU/Linuxオペレーティングシステムを、例えばGoogle Chrome OSを含み、ただしこれらに限定されない、様々な市販UNIX(登録商標)またはUNIX系オペレーティングシステムのいずれかを実行する、ワークステーションコンピュータであってよい。前記の代わりに、または前記に加えて、クライアントコンピューティングデバイス1502、1504、1506、および1508は、ネットワーク1510を介して通信できる、シンクライアントコンピュータ、インターネット対応ゲームシステム(例えばKinect(登録商標)ジェスチャ入力デバイスを有する、または有さない、Microsoft Xboxゲームコンソール)、および/またはパーソナルメッセージングデバイス等、他の何らかの電子デバイスであってよい。
4つのクライアントコンピューティングデバイスを含む例示的分散システム1500が図示されているが、いくつものクライアントコンピューティングデバイスをサポートできる。他のデバイスも、例えばセンサーを有するデバイス等も、サーバ1512とやり取りできる。
分散システム1500のネットワーク1510は、TCP/IP(伝送制御プロトコル/インターネットプロトコル)、SNA(システムネットワークアーキテクチャ)、IPX(インターネットパケット交換)、AppleTalk等を含み、ただしこれらに限定されない、様々な市販プロトコルのいずれかを使ってデータ通信をサポートできる、当業者にとって周知の、どのような種類のネットワークであってよい。ほんの一例として、ネットワーク1510はローカルエリアネットワーク(LAN)であってよく、例えばイーサネット(登録商標)、トークンリング、および/または同様のものに基づくローカルエリアネットワークであってよい。ネットワーク1510はワイドエリアネットワークであってよく、またインターネットであってもよい。これは、仮想プライベートネットワーク(VPN)、イントラネット、エクストラネット、公衆交換電話網(PSTN)、赤外線ネットワーク、無線ネットワーク(例えば電気電子協会(IEEE)802.11プロトコル、Bluetooth(登録商標)、および/または他の何らかの無線プロトコルのいずれかで作動するネットワーク)、および/またはこれらのネットワークおよび/または他のネットワークの組み合わせを含み、ただしこれらに限定されない、仮想ネットワークを含み得る。
サーバ1512は、1つ以上の汎用コンピュータ、専用サーバコンピュータ(例えばPC(パーソナルコンピュータ)サーバ、UNIX(登録商標)サーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウント型サーバ、その他を含む)、サーバファーム、サーバクラスタ、または他の何らかの適切な構成および/または組み合わせから成ってよい。様々な実施形態において、サーバ1512は上述した1つ以上のサービスまたはソフトウェアアプリケーションを実行する形に構成されてよい。例えばサーバ1512は、本開示の一実施形態に従って上述した処理を遂行するサーバであってよい。
サーバ1512は、上述したオペレーティングシステムを含むオペレーティングシステムや何らかの市販サーバオペレーティングシステムを実行してよい。サーバ1512はまた、様々なサーバプリケーションおよび/またはミッドティアアプリケーションのいずれかを実行してよく、HTTP(ハイパーテキスト転送プロトコル)サーバ、FTP(ファイル転送プロトコル)サーバ、CGI(共通ゲートウェイインターフェース)サーバ、JAVA(登録商標)サーバ、データベースサーバ等を含む。例示的データベースサーバは、Oracle、Microsoft、Sybase、IBM(International Business Machines)等から入手できるデータベースサーバを含み、ただしそれらに限定されない。
いくつかの実施形態において、サーバ1512には、クライアントコンピューティングデバイス1502、1504、1506、および1508のユーザから受信するデータフィードおよび/またはイベントアップデートを解析し整理する1つ以上のアプリケーションを組み込むことができる。一例として、データフィードおよび/またはイベントアップデートは、Twitter(登録商標)フィード、Facebook(登録商標)アップデート、または1つ以上のサードパーティ情報源および連続データストリームから受信されるリアルタイムアップデートを含み得、ただしこれらに限定されず、リアルタイムアップデートは、センサーデータアプリケーション、ファイナンシャルティッカー、ネットワーク性能測定ツール(例えばネットワーク監視アプリケーション、トラフィック管理アプリケーション)、クリックストリーム解析ツール、自動車交通モニタリング等に関するリアルタイムイベントを含み得る。サーバ1512には、クライアントコンピューティングデバイス1502、1504、1506、および1508の1つ以上のディスプレイデバイスでデータフィードおよび/またはリアルタイムイベントを表示する1つ以上のアプリケーションを組み込むことができる。
分散システム1500はまた、1つ以上のデータベース1514および1516を含んでよい。データベース1514および1516は様々な場所に存在してよい。例えばデータベース1514および1516のいずれか1つ以上は、サーバ1512内に局在(および/または存在)する非一時的記憶媒体に存在してよい。あるいはデータベース1514および1516はサーバ1512から離れていて、ネットワーク接続か専用接続でサーバ1512と通信してよい。1組の実施形態において、データベース1514および1516はストレージエリアネットワーク(SAN)に存在してよい。同様に、サーバ1512に関わる機能を遂行するのに必要なファイルは、サーバ1512内に、および/または遠隔地に、適宜蓄積されてよい。1組の実施形態において、データベース1514および1516は、Oracleによって提供されるデータベース等、SQL形式のコマンドに応じてデータを蓄積、更新、および引き出すように構成されたリレーショナルデータベースを含み得る。
図16は、本開示の一実施形態によるシステム環境1600の1つ以上のコンポーネントの簡略ブロック図であり、実施形態システムの1つ以上のコンポーネントから提供されるサービスはクラウドサービスとして提供され得る。図示された実施形態において、システム環境1600は1つ以上のクライアントコンピューティングデバイス1604、1606、および1608を含み、ユーザはクライアントコンピューティングデバイスを使ってクラウドサービスを提供するクラウドインフラシステム1602とやり取りできる。クライアントコンピューティングデバイスは、ウェブブラウザ、独自クライアントアプリケーション(例えばOracel Forms)、または他の何らかのアプリケーション等、クライアントアプリケーションを操作するように構成されてよく、クライアントコンピューティングデバイスのユーザはクライアントアプリケーションを使ってクラウドインフラシステム1602とやり取りし、クラウドインフラシステム1602から提供されるサービスを利用できる。
図示されたクラウドインフラシステム1602が図示されたコンポーネント以外のコンポーネントを有し得ることを理解されたい。また、図示された実施形態は、本発明の一実施形態を採用し得るクラウドインフラシステムの一例に過ぎない。他の実施形態において、クラウドインフラシステム1602は図示されたコンポーネントより多い、または少ない、コンポーネントを有してよく、2つ以上のコンポーネントを組み合わせてよく、あるいは異なるコンポーネント構成または配置を有してよい。
クライアントコンピューティングデバイス1604、1606、および1608は、1502、1504、1506、および1508について上述したデバイスと同様のデバイスであってよい。
3つのクライアントコンピューティングデバイスを含む例示的システム環境1600が図示されているが、いくつものクライアントコンピューティングデバイスをサポートできる。他のデバイスも、例えばセンサーを有するデバイス等も、クラウドインフラシステム1602とやり取りできる。
ネットワーク1610はクライアント1604、1606、および1608とクラウドインフラシステム1602との通信とデータ交換を促進してよい。それぞれのネットワークは、ネットワーク1510について上述したものを含む、様々な市販プロトコルのいずれかを使ってデータ通信をサポートできる、当業者にとって周知の、どのような種類のネットワークであってよい。
クラウドインフラシステム1602は、サーバ1512について上述したものを含む、1つ以上のコンピュータおよび/またはサーバを備えてよい。
いくつかの実施形態において、クラウドインフラシステムによって提供されるサービスは、オンラインデータ蓄積およびバックアップソリューション、ウェブベースeメールサービス、ホステッドオフィススイートおよびドキュメントコラボレーションサービス、データベース処理、マネジドテクニカルサポートサービス等、クラウドインフラシステムのユーザにオンデマンド方式で提供される多数のサービスを含み得る。クラウドインフラシステムによって提供されるサービスは動的に拡張してユーザのニーズを満たすことができる。クラウドインフラシステムによって提供されるサービスのインスタンス化は本書で「サービスインスタンス」と呼ばれる。概して、クラウドサービスプロバイダのシステムからインターネット等の通信ネットワークを介してユーザに提供されるサービスは「クラウドサービス」と呼ばれる。通常、パブリッククラウド環境においてクラウドサービスプロバイダのシステムを構成するサーバおよびシステムは、顧客自身の敷地内サーバおよびシステムと異なる。例えば、クラウドサービスプロバイダのシステムはアプリケーションをホストでき、ユーザはインターネット等の通信ネットワークを介して当該アプリケーションをオンデマンド方式で注文し利用することができる。
いくつかの例において、コンピュータネットワーククラウドインフラにおけるサービスは、ストレージ、ホステッドデータベース、ホステッドウェブサーバ、ソフトウェアアプリケーションに対する保護コンピュータネットワークアクセス、またはクラウドベンダーからユーザに提供されるその他サービス、または当技術で周知のサービスを含み得る。例えば、サービスはインターネットを通じてクラウド上のリモートストレージにアクセスするパスワード保護アクセスを含み得る。もうひとつの例として、サービスはネットワーク開発者専用のスクリプト言語ミドルウェアエンジンやウェブサービスベースのホステッドリレーショナルデータベースを含み得る。もうひとつの例として、サービスはクラウドベンダーのウェブサイトでホストされたeメールソフトウェアアプリケーションへのアクセスを含み得る。
いくつかの実施形態において、クラウドインフラシステム1602は、セルフサービス形式で契約方式で拡張的に間違いなく確実に安全に顧客へ提供される1組のアプリケーション、ミドルウェア、およびデータベースサービス商品を含み得る。譲受人によって提供されているOracle Public Cloudはかかるクラウドインフラシステムの一例である。
様々な実施形態において、クラウドインフラシステム1602は、クラウドインフラシステム1602によって提供されるサービスに対する顧客の契約を自動的に準備、管理、および追跡するように構成されてよい。クラウドインフラシステム1602は様々な配備モデルでクラウドサービスを提供してよい。例えばサービスはパブリッククラウドモデルで提供されてよく、この場合はクラウドインフラシステム1602がクラウドサービスを販売する組織によって所有され(例えばOracleによって所有され)、一般大衆や企業にサービスが提供される。もうひとつの例として、サービスはプライベートクラウドモデルで提供されてよく、この場合はクラウドインフラシステム1602が1つの組織のために運営され、組織内の1つ以上のエンティティにサービスを提供してよい。クラウドサービスはコミュニティクラウドモデルで提供されてもよく、この場合は関連コミュニティの中の複数の組織によってクラウドインフラシステム1602とクラウドインフラシステム1602によって提供されるサービスが共用される。2つ以上の異なるモデルを組み合わせたハイブリッドクラウドモデルでクラウドサービスが提供されてもよい。
いくつかの実施形態において、クラウドインフラシステム1602によって提供されるサービスは、Software as a Service(SaaS)カテゴリ、Platform as a Service(PaaS)カテゴリ、Infrastructure as a Service(IaaS)カテゴリ、またはハイブリッドサービスを含むその他サービスカテゴリで提供される1つ以上のサービスを含み得る。顧客は契約注文によりクラウドインフラシステム1602によって提供される1つ以上のサービスを注文できる。クラウドインフラシステム1602は、顧客の契約注文に含まれるサービスを提供するための処理を遂行する。
いくつかの実施形態において、クラウドインフラシステム1602によって提供されるサービスは、アプリケーションサービス、プラットフォームサービス、およびインフラサービスを含み得、ただしこれらに限定されない。いくつかの例において、アプリケーションサービスはクラウドインフラシステムからSaaSプラットフォームを通じて提供されてよい。SaaSプラットフォームはSaaSカテゴリに該当するクラウドサービスを提供する形に構成されてよい。例えばSaaSプラットフォームは、統合開発・配備プラットフォームで一連のオンデマンドアプリケーションを構築し引き渡す能力を提供できる。SaaSプラットフォームは、SaaSサービスを提供するため基礎となるソフトウェアとインフラを管理し制御することができる。SaaSプラットフォームによって提供されるサービスを利用することにより、顧客はクラウドインフラシステムで実行するアプリケーションを利用できる。顧客はライセンスやサポートを購入しなくてもアプリケーションサービスを得ることができる。様々なSaaSサービスが提供され得る。例は、大規模組織の販売業績管理、企業統合、およびビジネスフレキシビリティのためのソリューションを提供するサービスを含み、ただしこれらに限定されない。
いくつかの実施形態において、プラットフォームサービスはクラウドインフラシステムからPaaSプラットフォームを通じて提供されてよい。PaaSプラットフォームはPaaSカテゴリに該当するクラウドサービスを提供する形に構成されてよい。プラットフォームサービスの例は、組織(Oracle等)が共通の共用アーキテクチャで既存のアプリケーションを整理統合することを可能にするサービス、ならびにプラットフォームによって提供される共用サービスを利用する新たなアプリケーションを構築する能力を含み得、ただしこれらに限定されない。PaaSプラットフォームは、PaaSサービスを提供するため基礎となるソフトウェアとインフラを管理し制御することができる。顧客はライセンスやサポートを購入しなくてもクラウドインフラシステムによって提供されるPaaSサービスを得ることができる。プラットフォームサービスの例は、Oracle Java Cloud Service(JCS)、Oracle Database Cloud Service(DBCS)、およびその他を含み、ただしこれらに限定されない。
PaaSプラットフォームによって提供されるサービスを利用することにより、顧客はクラウドインフラシステムでサポートされたプログラミング言語やツールを使用できるほか、配備されたサービスをコントロールすることもできる。いくつかの実施形態において、クラウドインフラシステムによって提供されるプラットフォームサービスは、データベースクラウドサービス、ミドルウェアクラウドサービス(例えばOracle Fusion Middlewareサービス)、およびJavaクラウドサービスを含み得る。いくつかの実施形態において、データベースクラウドサービスは、組織がデータベースリソースをプールし、データベースクラウドの形でDatabase as a Serviceを顧客に提供することを可能にする共用サービス配備モデルをサポートできる。ミドルウェアクラウドサービスは顧客が様々なビジネスアプリケーションを開発し配備するためのプラットフォームを提供でき、Javaクラウドサービスは顧客がクラウドインフラシステムでJavaアプリケーションを配備するためのプラットフォームを提供できる。
クラウドインフラシステムではIaaSプラットフォームによって様々なインフラサービスが提供されてよい。インフラサービスは、SaaSプラットフォームやPaaSプラットフォームによって提供されるサービスを利用する顧客のため、ストレージ、ネットワーク、およびその他基礎的コンピューティングリソース等、基礎となるコンピューティングリソースの管理と制御を助長する。
いくつかの実施形態において、クラウドインフラシステム1602はまた、クラウドインフラシステムの顧客に様々なサービスを提供するために使われるリソースを提供するインフラリソース1630を含んでよい。一実施形態において、インフラリソース1630は、PaaSプラットフォームやSaaSプラットフォームによって提供されるサービスを実行するため、サーバ、ストレージ、およびネットワーキングリソース等、予め統合され最適化されたハードウェアの組み合わせを含んでよい。
いくつかの実施形態において、クラウドインフラシステム1602内のリソースは複数のユーザによって共用されてよく、デマンドに応じて動的に再配分されてよい。加えて、リソースは様々な時間帯にあるユーザに配分されてよい。例えばクラウドインフラシステム1630は、第1の時間帯にある第1のユーザ群にクラウドインフラシステムのリソースを所定の時間にわたって利用させ、その後別の時間帯にある別のユーザ群に同じリソースを再配分することにより、リソースの利用効率を最大限に高めることができる。
いくつかの実施形態では、クラウドインフラシステム1602のコンポーネントやモジュールによって共用され、またクラウドインフラシステム1602によって提供されるサービスによって共用される、いくつかの内部共用サービス1632が提供されてよい。これらの内部共用サービスは、セキュリティおよびアイデンティティサービス、統合サービス、エンタープライズリポジトリサービス、エンタープライズマネージャサービス、ウイルススキャンおよびホワイトリストサービス、高アベイラビリティ、バックアップおよびリカバリサービス、クラウドサポートを可能にするサービス、eメールサービス、通知サービス、ファイル転送サービス等を含み得、ただしこれらに限定されない。
いくつかの実施形態において、クラウドインフラシステム1602はクラウドインフラシステムにおける総合クラウドサービス(例えばSaaS、PaaS、およびIaaSサービス)管理を提供してよい。一実施形態において、クラウド管理機能は、クラウドインフラシステム1602で受信される顧客の契約等を準備、管理、および追跡する能力を含み得る。
一実施形態では、図示されているように、注文管理モジュール1620、注文調整モジュール1622、注文プロビジョニングモジュール1624、注文管理監視モジュール1626、およびアイデンティティ管理モジュール1628等、1つ以上のモジュールによってクラウド管理機能が提供されてよい。これらのモジュールは、1つ以上のコンピュータおよび/またはサーバを含んでよく、または1つ以上のコンピュータおよび/またはサーバを用いて提供されてよく、1つ以上のコンピュータおよび/またはサーバは、汎用コンピュータ、専用サーバコンピュータ、サーバファーム、サーバクラスタ、または他の何らかの適切な構成および/または組み合わせであってよい。
例示的操作1634において、クライアントデバイス1604、1606、または1608等のクライアントデバイスを使用する顧客は、クラウドインフラシステム1602によって提供される1つ以上のサービスをリクエストし、クラウドインフラシステム1602によって提供される1つ以上のサービスの契約注文を入れることにより、クラウドインフラシステム1602とやり取りできる。いくつかの実施形態において、顧客はクラウドユーザインターフェース(UI)、クラウドUI 1612、クラウドUI 1614、および/またはクラウドUI 1616にアクセスし、これらのUIを通じて契約注文を入れることができる。顧客が入れた注文に応じてクラウドインフラシステム1602で受信される注文情報は、顧客を特定する情報と、顧客が契約しようとするクラウドインフラシステム1602から提供される1つ以上のサービスを特定する情報を含んでよい。
顧客が注文を入れた後には、クラウドUI 1612、1614、および/または1616を通じて注文情報が受信される。
操作1636では、注文が注文データベース1618に蓄積される。注文データベース1618は、クラウドインフラシステム1618によって操作され、かつ他のシステムエレメントと連動される、いくつかのデータベースのいずれか1つであってよい。
操作1638では、注文情報が注文管理モジュール1620へ転送される。いくつかの実施形態において、注文管理モジュール1620は、注文を検査し、検査した注文を記帳する等、注文に関わる課金・会計機能を遂行するように構成されてよい。
操作1640では、注文に関する情報が注文調整モジュール1622へ伝達される。注文調整モジュール1622は注文情報を基にし、顧客が入れた注文に応じたサービスやリソースの準備を調整できる。いくつかの例において、注文調整モジュール1622は、注文プロビジョニングモジュール1624のサービスを使ってリソースの準備を調整し、契約されたサービスを支援できる。
いくつかの実施形態において、注文調整モジュール1622は注文に関わるビジネスプロセスの管理を可能にし、ビジネスロジックを適用して注文を準備段階に進めるべきか否かを判断する。操作1642で、新たな契約注文を受信した注文調整モジュール1622は、契約注文を履行するにあたって必要なリソースを配分し構成するため、注文プロビジョニングモジュール1624へリクエストを送信する。注文プロビジョニングモジュール1624は顧客が注文するサービスのためのリソース配分を可能にする。注文プロビジョニングモジュール1624は、クラウドインフラシステム1600によって提供されるクラウドサービスと、リクエストされたサービスを提供するためリソースを準備するのに使われる物理的実装層との間に、抽象化レベルを提供する。このため、サービスやリソースが臨機応変に準備されるか、それとも予め準備されリクエストに応じて配分/割り当てられるかといった実装の詳細から注文調整モジュール1622を分離することができる。
サービスおよびリソースが準備されると、操作1644で、クラウドインフラシステム1602の注文プロビジョニングモジュール1624によって、クライアントデバイス1604、1606、および/または1608の顧客へ、提供されるサービスの通知が送信されてよい。
操作1646では、顧客の契約注文が注文管理監視モジュール1626によって管理され追跡されてよい。いくつかの例において、注文管理監視モジュール1626は、使用ストレージ数、転送データ量、ユーザ数、システム稼動・不稼働時間等、契約注文に含まれるサービスについて運用統計を収集する形に構成されてよい。
いくつかの実施形態において、クラウドインフラシステム1600はアイデンティティ管理モジュール1628を含んでよい。アイデンティティ管理モジュール1628は、クラウドインフラシステム1600でアクセス管理サービスや認可サービス等のアイデンティティサービスを提供するように構成されてよい。いくつかの実施形態において、アイデンティティ管理モジュール1628は、クラウドインフラシステム1602によって提供されるサービスの利用を望む顧客に関する情報を制御できる。かかる情報は、かかる顧客のアイデンティティを認証する情報と、それらの顧客が種々システムリソース(ファイル、ディレクトリ、アプリケーション、通信ポート、メモリセグメント、その他)に対して遂行することを許可されるアクションを記述する情報を含んでよい。アイデンティティ管理モジュール1628はまた、それぞれの顧客に関する記述的情報と、その記述的情報を誰がどのようにアクセスし修正するかに関する記述的情報の管理を含んでよい。
図17は、本発明の種々実施形態を実装し得る例示的コンピュータシステム1700を示す。システム1700は上述したコンピュータシステムのいずれかを実装するために使用されてよい。図に見られるように、コンピュータシステム1700は、バスサブシステム1702を通じていくつかの周辺サブシステムと通信する処理装置1704を含む。これらの周辺サブシステムは、処理加速装置1706、I/Oサブシステム1708、ストレージサブシステム1718、および通信サブシステム1724を含んでよい。ストレージサブシステム1718は有形コンピュータ読取可能記憶媒体1722とシステムメモリ1710とを含む。
バスサブシステム1702は、コンピュータシステム1700の様々なコンポーネントやサブシステムが互いに意図した通りに通信するためのメカニズムを提供する。バスサブシステム1702は1本のバスとして概略的に図示されているが、バスサブシステムの代替実施形態は複数のバスを利用してよい。バスサブシステム1702は、メモリバスまたはメモリコントローラ、周辺バス、および種々バスアーキテクチャのいずれかを使用するローカルバスを含む、数種のバス構造のいずれかであってよい。例えば、かかるアーキテクチャは、インダストリースタンダードアーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、エンハンストISA(EISA)バス、ビデオエレクトロニクススタンダーズアソシエーション(VESA)ローカルバス、およびIEEE P1386.1規格に従って製造されメザニンとして実装できるペリフェラルコンポーネントインターコネクト(PCI)バスを含み得る。
1つ以上の集積回路(例えば従来のマイクロプロセッサやマイクロコントローラ)として実装できる処理装置1704はコンピュータシステム1700の操作を制御する。処理装置1704には1つ以上のプロセッサを組み込むことができる。これらのプロセッサはシングルコアまたはマルチコアプロセッサを含み得る。いくつかの実施形態において、処理装置1704は、シングルまたはマルチコアプロセッサを各々含む1つ以上の独立した処理装置1732および/または1734として実装されてよい。他の実施形態において、処理装置1704は、1つのチップに2つのデュアルコアプロセッサを集積することによって形成されるクアドコア処理装置として実装されてもよい。
様々な実施形態において、処理装置1704はプログラムコードに応じて様々なプログラムを実行でき、複数の同時に実行するプログラムやプロセスを維持できる。実行されるプログラムコードの一部または全部は、プロセッサ1704に、および/またはストレージサブシステム1718に、随時入れることができる。プロセッサ1704は、適切なプログラミングにより、上述した様々な機能を提供できる。コンピュータシステム1700は処理加速装置1706をさらに含んでよく、処理加速装置1706は、デジタル信号プロセッサ(DSP)、専用プロセッサ、および/または同類のものを含んでよい。
I/Oサブシステム1708はユーザインターフェース入力デバイスとユーザインターフェース出力デバイスとを含んでよい。ユーザインターフェース入力デバイスは、キーボード、マウスまたはトラックボール等のポインティングデバイス、ディスプレイに一体化されたタッチパッドまたはタッチスクリーン、スクロールホイール、クリックホイール、ダイヤル、ボタン、スイッチ、キーパッド、音声コマンド認識システムを備えた音声入力デバイス、マイクロフォン、および他種入力デバイスを含み得る。ユーザインターフェース入力デバイスは、例えばユーザが自然なユーザインターフェースを通じてジェスチャや音声コマンドによりMicrosoft Xbox(登録商標)360ゲームコントローラ等の入力デバイスを操作することを可能にするMicrosoft Kinect(登録商標)モーションセンサー等のモーション感知および/またはジェスチャ認識デバイスを含み得る。ユーザインターフェース入力デバイスはまた、ユーザの眼の動き(例えば写真を撮影するとき、および/またはメニューを選択するときの「瞬き」)を検出し、眼のジェスチャを入力デバイス(例えばGoogle Glass(登録商標))への入力に変換するGoogle Glass(登録商標)ブリンクディテクタ等の眼ジェスチャ認識デバイスを含み得る。加えて、ユーザインターフェース入力デバイスは、ユーザが音声コマンドで音声認識システム(例えばSiri(登録商標)ナビゲータ)とやり取りすることを可能にする音声認識感知デバイスを含み得る。
ユーザインターフェース入力デバイスはまた、三次元(3D)マイス、ジョイスティックまたはポインティングスティック、ゲームパッドおよびグラフィックタブレット、およびスピーカー、デジタルカメラ、デジタルカムコーダー、ポータブルメディアプレイヤー、ウェブカメラ、画像スキャナ、指紋スキャナ、バーコードリーダー3Dスキャナ、3Dプリンタ、レーザー測距器、および視線追跡デバイス等の視聴覚デバイスを含み得、ただしこれらに限定されない。加えてユーザインターフェース入力デバイスは、例えばコンピュータ断層撮影、磁気共鳴撮影、ポジション放出断層撮影、および医療用超音波検査装置等の医療用画像入力デバイスを含み得る。ユーザインターフェース入力デバイスはまた、例えばMIDIキーボード、デジタル楽器等の音響入力デバイスを含み得る。
ユーザインターフェース出力デバイスは、ディスプレイサブシステム、インジケータライト、または音響出力デバイス等の非視覚ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)やプラズマディスプレイ等を使用するフラットパネルデバイス、投影装置、タッチスクリーン等であってよい。概して、用語「出力デバイス」は、コンピュータシステム1700からユーザまたは他コンピュータへ情報を出力するあらゆる種類のデバイスまたはメカニズムを含む。例えばユーザインターフェース出力デバイスは、モニター、プリンタ、スピーカー、ヘッドフォン、自動車ナビゲーションシステム、プロッタ、音声出力デバイス、モデム等、文字、画像、および視聴覚情報を視覚的に伝える様々なディスプレイデバイスを含み得、ただしこれらに限定されない。
コンピュータシステム1700はストレージサブシステム1718を備えてよく、ストレージサブシステム1718はシステムメモリ1710内に位置するものとして現在図示されているソフトウェアエレメントを備える。システムメモリ1710は、処理装置1704に読み込まれて実行されるプログラム命令を格納できるほか、これらのプログラムの実行中に収集されるデータを格納できる。
コンピュータシステム1700の構成や種類に応じて、システムメモリ1710は揮発性(ランダムアクセスメモリ(RAM)等)であってよく、および/または不揮発性(読み取り専用メモリ(ROM)、フラッシュメモリ等)であってよい。RAMは通常、処理装置1704によって速やかにアクセスされるデータおよび/またはプログラムモジュールを、および/または処理装置1704によって目下操作され実行されているデータおよび/またはプログラムモジュールを、格納する。いくつかの実装において、システムメモリ1710は、スタティックランダムアクセスメモリ(SRAM)やダイナミックランダムアクセスメモリ(DRAM)等、複数の異種メモリを含み得る。いくつかの実装において、起動時等にコンピュータシステム1700の中でエレメント間の情報転送を支援する基礎的ルーチンを含む基本入出力システム(BIOS)は、ROMに通常格納されてよい。限定ではなく例示を目的とし、システムメモリ1710には、アプリケーションプログラム1712と、プログラムデータ1714と、オペレーティングシステム1716とが図示されており、アプリケーションプログラム1712は、クライアントアプリケーション、ウェブブラウザ、ミッドティアアプリケーション、リレーショナルデータベース管理システム(RDBMS)、その他を含み得る。例えばオペレーティングシステム1716は、Microsoft Windows(登録商標)、Apple Macintosh(登録商標)、および/またはLinuxオペレーティングシステムの種々バージョン、様々な市販UNIX(登録商標)またはUNIX系オペレーティングシステム(様々なGNU/Linuxオペレーティングシステム、Google Chrome(登録商標)OS等を含み、ただしこれらに限定されない)、および/またはiOS、Windows(登録商標)Phone、Android(登録商標)OS、BlackBerry(登録商標)17 OS、Palm(登録商標)OSオペレーティングシステム等の種々モバイルオペレーティングシステムを、含み得る。
ストレージサブシステム1718はまた、いくつかの実施形態の機能を提供する基礎的プログラミングおよびデータ構造を格納する有形コンピュータ読取可能記憶媒体を提供してよい。プロセッサによって実行されたときに上述した機能を提供するソフトウェア(プログラム、コードモジュール、命令)はストレージサブシステム1718に格納されてよい。これらのソフトウェアモジュールは処理装置1704によって実行されてよい。ストレージサブシステム1718はまた、本発明に従って使用されるデータを格納するリポジトリを提供してよい。
ストレージサブシステム1700はまた、コンピュータ読取可能記憶媒体1722へ接続できるコンピュータ読取可能記憶媒体読取装置1720を含んでよい。コンピュータ読取可能記憶媒体1722は、システムメモリ1710と連携することで、リモート、ローカル、固定、および/または取り外し可能ストレージデバイスであると同時に、コンピュータ読取可能情報を一時的におよび/または永久的に格納、蓄積、伝送、および引き出す記憶媒体に成り得る。
コードを、またはコードの一部を、格納するコンピュータ読取可能記憶媒体1722はまた、何らかの情報の格納および/または伝送方法または技術で実装される揮発性および不揮発性、取り外し可能または取り外し不能媒体等であって、ただしこれらに限定されない、記憶媒体および通信媒体を含む、当技術で周知の、または当技術で使用されている、何らかの適切な媒体を含み得る。これは、RAM、ROM、電子的消去プログラム可能ROM(EEPROM)、フラッシュメモリ、またはその他メモリ技術、CD−ROM、デジタル多用途ディスク(DVD)、またはその他光学式ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、またはその他磁気式ストレージデバイス、またはその他有形コンピュータ読取可能媒体等の有形コンピュータ読取可能記憶媒体を含み得る。これはまた、情報を伝送するために使用できかつコンピュータシステム1700からアクセスできるデジタル信号、データ伝送、または他の何らかの媒体等、無形コンピュータ読取可能媒体を含み得る。
例えばコンピュータ読取可能記憶媒体1722は、取り外し不能不揮発性磁気媒体で読み書きを行うハードディスクドライブ、取り外し可能不揮発性磁気ディスクで読み書きを行う磁気ディスクドライブ、およびCD ROM、DVD、およびBlu−Ray(登録商標)ディスク、またはその他光媒体等の取り外し可能不揮発性光ディスクで読み書きを行う光ディスクドライブを含み得る。コンピュータ読取可能記憶媒体1722は、Zip(登録商標)ドライブ、フラッシュメモリカード、ユニバーサルシリアルバス(USB)フラッシュドライブ、セキュアデジタル(SD)カード、DVDディスク、デジタルビデオテープ等を含み得、ただしこれらに限定されない。コンピュータ読取可能記憶媒体1722はまた、フラッシュメモリ型SSD、エンタープライズフラッシュドライブ、ソリッドステートROM等、不揮発性メモリを基礎とするソリッドステートドライブ(SSD)、ならびにソリッドステートRAM、ダイナミックRAM、スタティックRAM、DRAM型SSD、磁気抵抗RAM(MRAM)SSD、およびDRAM型SSDとフラッシュメモリ型SSDを組み合わせたハイブリッドSSD等、揮発性メモリを基礎とするSSDを含み得る。ディスクドライブと関連コンピュータ読取可能媒体は、コンピュータシステム1700のコンピュータ読取可能命令、データ構造、プログラムモジュール、およびその他データの不揮発性格納を提供できる。
通信サブシステム1724は他のコンピュータシステムやネットワークに対するインターフェースを提供する。通信サブシステム1724は、他システムからデータを受信しコンピュータシステム1700から他システムへデータを伝送するインターフェースとして機能する。例えば通信サブシステム1724は、コンピュータシステム1700がインターネットを介して1つ以上のデバイスへ接続することを可能にできる。いくつかの実施形態において、通信サブシステム1724は、無線音声および/またはデータネットワークにアクセスする無線周波(RF)送受信コンポーネント(例えば携帯電話技術、3G、4G、またはEDGE(グローバル進化のための改良データレート)等の先進データネットワーク技術、WiFi(IEEE 802.11系規格、またはその他モバイル通信技術、またはこれらの組み合わせを使用するもの)、全地球測位システム(GPS)受信コンポーネント、および/またはその他コンポーネントを含み得る。いくつかの実施形態において、通信サブシステム1724は、無線インターフェースに加えて、または無線インターフェースの代わりに、有線ネットワーク接続(例えばイーサネット)を提供できる。
いくつかの実施形態において、通信サブシステム1724はまた、コンピュータシステム1700を使用する1名以上のユーザに代わって、構造化および/または非構造化データフィード1726、イベントストリーム1728、イベントアップデート1730等の形で入力通信を受信してよい。
例えば通信サブシステム1724は、Twitter(登録商標)フィード、Facebook(登録商標)アップデート、リッチサイトサマリー(RSS)フィード等のウェブフィード等、データフィード1726をソーシャルネットワークおよび/またはその他通信サービスのユーザからリアルタイムで受信する形に、および/または1つ以上のサードパーティ情報源からリアルタイムアップデートを受信する形に、構成されてよい。
加えて、通信サブシステム1724は連続データストリームの形でデータを受信する形に構成されてもよく、連続データストリームは、明確な終わりがない、本質的に連続する、または際限のない、リアルタイムイベントおよび/またはイベントアップデート1730のイベントストリーム1728を含み得る。連続データを生成するアプリケーションの例は、例えばセンサーデータアプリケーション、ファイナンシャルティッカー、ネットワーク性能測定ツール(例えばネットワーク監視アプリケーション、トラフィック管理アプリケーション)、クリックストリーム解析ツール、自動車交通モニタリング等を含み得る。
通信サブシステム1724はまた、コンピュータシステム1700へ結合された1つ以上のストリーミングデータソースコンピュータと通信する1つ以上のデータベースへ、構造化および/または非構造化データフィード1726、イベントストリーム1728、イベントアップデート1730等を出力する形に構成されてよい。
コンピュータシステム1700は、手持ち型可搬デバイス(例えばiPhone(登録商標)、携帯電話機、iPad(登録商標)コンピューティングタブレット、PDA)、ウェアラブルデバイス(例えばGoogle Glass(登録商標)ヘッドマウントディスプレイ)、PC、ワークステーション、メインフレーム、キオスク、サーバラック、または他の何らかのデータ処理システムを含む、様々な種類のいずれか1つであってよい。
コンピュータやネットワークは絶えず変化しているため、図示されたコンピュータシステム1700の説明は一例に過ぎない。このほかにも、図示されたシステムより多い、または少ない、コンポーネントを有する数多くの構成が可能である。例えば、カスタマイズされたハードウェアを使用することもでき、および/または特定のエレメントをハードウェア、ファームウェア、ソフトウェア(アプレットを含む)、または組み合わせで実装することもできる。また、ネットワーク入力/出力デバイス等の他のコンピューティングデバイスへの接続を使用できる。当業者なら、本書の開示と教示を基に様々な実施形態を実装する他のやり方および/または方法を理解するであろう。
以上の明細書では本発明の特定の実施形態を参照しながら本発明の態様が説明されているが、当業者なら、本発明がこれらの実施形態に限定されないことを理解するであろう。上述した本発明の様々な特徴や態様は個別に、またはまとめて、使用できる。例えば他の態様においては開示された特徴を適当に組み合わせることができる。また、これらの実施形態は、明細書の幅広い精神と範囲から逸脱することなく、ここに記載されていないいくつもの環境や用途に利用できる。明細書と図面は限定ではなく例証とみなすべきものである。

Claims (22)

  1. コンピュータが実行する方法であって、
    シングルサインオンサービスに対するリクエストを前記シングルサインオンサービスに対応付けられたウェブインターフェースを介して受信することと、
    ポリシーまたは認証情報を管理する前記リクエストに基づきデータマネージャへデータリクエストを送信することと、を含み、
    前記ポリシーまたは認証情報を管理することは、前記コンピュータが備えるコンピュータ読取可能記憶媒体に前記ポリシーまたは認証情報を蓄積することを含み、
    対応付けられたウェブインターフェースを介してレスポンスを返すこととを含み、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され
    前記方法は、さらに、
    前記リクエストをプロキシによって第1のプロトコルで受信すること、
    受信した前記リクエストをプロキシによって前記第1のプロトコルから第2のプロトコルに変換すること、
    変換した前記リクエストを前記シングルサインオンサービスへ転送すること、を含む、方法。
  2. 前記レスポンスは前記プロキシによって前記第2のプロトコルで受信され、前記プロキシは前記レスポンスを前記第2のプロトコルから前記第1のプロトコルに変換し、前記変換したレスポンスを返す、請求項に記載の方法。
  3. シングルサインオンサービスに対する前記リクエストはポリシー管理リクエストであり、
    1つ以上のポリシー管理操作を含む前記ポリシー管理リクエストをポリシーマネージャへ送信することと、
    前記1つ以上のポリシー管理操作に基づいて前記データリクエストを生成することとをさらに含む、請求項1または2に記載の方法。
  4. 前記ポリシー管理リクエストは第1のインターフェース向けにフォーマットされ、前記ポリシーマネージャは前記ポリシー管理リクエストに対応付けられたポリシー管理プラグインを特定し、前記特定したポリシー管理プラグインに基づき前記ポリシー管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項に記載の方法。
  5. シングルサインオンサービスに対する前記リクエストは認証情報管理リクエストであり、
    1つ以上の認証情報管理操作を含む前記認証情報管理リクエストを認証情報マネージャへ送信することと、
    前記1つ以上の認証情報管理操作に基づいて前記データリクエストを生成することとをさらに含む、請求項1〜のいずれか1項に記載の方法。
  6. 前記認証情報管理リクエストは第1のインターフェース向けにフォーマットされ、前記認証情報マネージャは前記認証情報管理リクエストに対応付けられたサブマネージャを特定し、前記特定したサブマネージャに基づき前記認証情報管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項に記載の方法。
  7. コンピュータ読取可能記憶媒体とプロセッサとを含むコンピュータと、
    前記コンピュータで実行する複数のシングルサインオンサービスとを備え、シングルサインオンサービスの各々にはウェブインターフェースが対応付けられ、
    前記複数のシングルサインオンサービスの各々は、
    クライアントデバイスから前記対応付けられたウェブインターフェースを介してポリシーまたは認証情報を管理するリクエストを受信し、
    前記ポリシーまたは認証情報を管理する前記リクエストに基づいてデータマネージャへデータリクエストを送信し、
    前記対応付けられたウェブインターフェースを介して前記クライアントデバイスへレスポンスを返すように構成され、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され
    前記リクエストを第1のプロトコルで受信し、前記リクエストを前記第1のプロトコルから第2のプロトコルに変換し、前記変換したリクエストを前記シングルサインオンサービスへ転送する、第1のトンネルプロキシをさらに備える、システム。
  8. 前記レスポンスを前記第2のプロトコルで受信し、前記レスポンスを前記第2のプロトコルから前記第1のプロトコルに変換し、前記変換したレスポンスを返す、第2のトンネルプロキシをさらに備える、請求項に記載のシステム。
  9. シングルサインオンサービスに対する前記リクエストはポリシー管理リクエストであり、前記複数のシングルサインオンサービスの各々はさらに、
    1つ以上のポリシー管理操作を含む前記ポリシー管理リクエストをポリシーマネージャへ送信し、
    前記1つ以上のポリシー管理操作に基づいて前記データリクエストを生成する、ように構成される、請求項7または8に記載のシステム。
  10. 前記ポリシー管理リクエストは第1のインターフェース向けにフォーマットされ、前記ポリシーマネージャは前記ポリシー管理リクエストに対応付けられたポリシー管理プラグインを特定し、前記特定したポリシー管理プラグインに基づき前記ポリシー管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項に記載のシステム。
  11. シングルサインオンサービスに対する前記リクエストは認証情報管理リクエストであり、前記複数のシングルサインオンサービスの各々はさらに、
    1つ以上の認証情報管理操作を含む前記認証情報管理リクエストを認証情報マネージャへ送信し、
    前記1つ以上の認証情報管理操作に基づいて前記データリクエストを生成するよう構成される、請求項10のいずれか1項に記載のシステム。
  12. 前記認証情報管理リクエストは第1のインターフェース向けにフォーマットされ、前記認証情報マネージャは前記認証情報管理リクエストに対応付けられたサブマネージャを特定し、前記特定したサブマネージャに基づき前記認証情報管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項11に記載のシステム。
  13. 命令を有するコンピュータ可読ログラムであって、前記命令がプロセッサによって実行されると前記プロセッサは、
    シングルサインオンサービスに対するリクエストを前記シングルサインオンサービスに対応付けられたウェブインターフェースを介して受信するステップと、
    ポリシーまたは認証情報を管理する前記リクエストに基づきデータマネージャへデータリクエストを送信するステップと、
    対応付けられたウェブインターフェースを介してレスポンスを返すステップとを行し、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され
    前記プロセッサは、さらに、前記リクエストをプロキシによって第1のプロトコルで受信し、前記プロキシによって前記リクエストを前記第1のプロトコルから第2のプロトコルに変換し、前記変換したリクエストを前記シングルサインオンサービスへ転送するステップを実行する、コンピュータ可読ログラム。
  14. コンピュータが実行する方法であって、
    シングルサインオンサービスに対するリクエストを前記シングルサインオンサービスに対応付けられたウェブインターフェースを介して受信することと、
    ポリシーまたは認証情報を管理する前記リクエストに基づきデータマネージャへデータリクエストを送信することと、を含み、
    前記ポリシーまたは認証情報を管理することは、前記コンピュータが備えるコンピュータ読取可能記憶媒体に前記ポリシーまたは認証情報を蓄積することを含み、
    対応付けられたウェブインターフェースを介してレスポンスを返すこととを含み、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報を含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され、
    シングルサインオンサービスに対する前記リクエストはポリシー管理リクエストを含み
    1つ以上のポリシー管理操作を含む前記ポリシー管理リクエストをポリシーマネージャへ送信することと、
    前記1つ以上のポリシー管理操作に基づいて前記データリクエストを生成することとをさらに含む、方法。
  15. 前記ポリシー管理リクエストは第1のインターフェース向けにフォーマットされ、前記ポリシーマネージャは前記ポリシー管理リクエストに対応付けられたポリシー管理プラグインを特定し、前記特定したポリシー管理プラグインに基づき前記ポリシー管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項14に記載の方法。
  16. コンピュータが実行する方法であって、
    シングルサインオンサービスに対するリクエストを前記シングルサインオンサービスに対応付けられたウェブインターフェースを介して受信することと、
    ポリシーまたは認証情報を管理する前記リクエストに基づきデータマネージャへデータリクエストを送信することと、を含み、
    前記ポリシーまたは認証情報を管理することは、前記コンピュータが備えるコンピュータ読取可能記憶媒体に前記ポリシーまたは認証情報を蓄積することを含み、
    対応付けられたウェブインターフェースを介してレスポンスを返すこととを含み、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報を含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され、
    シングルサインオンサービスに対する前記リクエストは認証情報管理リクエストを含み、
    1つ以上の認証情報管理操作を含む前記認証情報管理リクエストを認証情報マネージャへ送信することと、
    前記1つ以上の認証情報管理操作に基づいて前記データリクエストを生成することとをさらに含む、方法。
  17. 前記認証情報管理リクエストは第1のインターフェース向けにフォーマットされ、前記認証情報マネージャは前記認証情報管理リクエストに対応付けられたサブマネージャを特定し、前記特定したサブマネージャに基づき前記認証情報管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項16に記載の方法。
  18. コンピュータ読取可能記憶媒体とプロセッサとを含むコンピュータと、
    前記コンピュータで実行する複数のシングルサインオンサービスとを備え、シングルサインオンサービスの各々にはウェブインターフェースが対応付けられ、
    前記複数のシングルサインオンサービスの各々は、
    クライアントデバイスから前記対応付けられたウェブインターフェースを介してポリシーまたは認証情報を管理するリクエストを受信し、
    前記ポリシーまたは認証情報を管理する前記リクエストに基づいてデータマネージャへデータリクエストを送信し、
    前記対応付けられたウェブインターフェースを介して前記クライアントデバイスへレスポンスを返すように構成され、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報を含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され、
    シングルサインオンサービスに対する前記リクエストはポリシー管理リクエストを含み、前記複数のシングルサインオンサービスの各々はさらに、
    1つ以上のポリシー管理操作を含む前記ポリシー管理リクエストをポリシーマネージャへ送信し、
    前記1つ以上のポリシー管理操作に基づいて前記データリクエストを生成する、ように構成される、システム。
  19. 前記ポリシー管理リクエストは第1のインターフェース向けにフォーマットされ、前記ポリシーマネージャは前記ポリシー管理リクエストに対応付けられたポリシー管理プラグインを特定し、前記特定したポリシー管理プラグインに基づき前記ポリシー管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項18に記載のシステム。
  20. コンピュータ読取可能記憶媒体とプロセッサとを含むコンピュータと、
    前記コンピュータで実行する複数のシングルサインオンサービスとを備え、シングルサインオンサービスの各々にはウェブインターフェースが対応付けられ、
    前記複数のシングルサインオンサービスの各々は、
    クライアントデバイスから前記対応付けられたウェブインターフェースを介してポリシーまたは認証情報を管理するリクエストを受信し、
    前記ポリシーまたは認証情報を管理する前記リクエストに基づいてデータマネージャへデータリクエストを送信し、
    前記対応付けられたウェブインターフェースを介して前記クライアントデバイスへレスポンスを返すように構成され、前記リクエストは、前記リクエストに応じたポリシーまたは認証情報を含み、アプリケーションに自動的にログインするためクライアントデバイスによって使用され、
    シングルサインオンサービスに対する前記リクエストは認証情報管理リクエストを含み、前記複数のシングルサインオンサービスの各々はさらに、
    1つ以上の認証情報管理操作を含む前記認証情報管理リクエストを認証情報マネージャへ送信し、
    前記1つ以上の認証情報管理操作に基づいて前記データリクエストを生成するよう構成される、システム。
  21. 前記認証情報管理リクエストは第1のインターフェース向けにフォーマットされ、前記認証情報マネージャは前記認証情報管理リクエストに対応付けられたサブマネージャを特定し、前記特定したサブマネージャに基づき前記認証情報管理リクエストを第2のインターフェース向けのフォーマットに変換する、請求項20に記載のシステム。
  22. 命令を有するコンピュータ可読ログラムであって、前記命令がプロセッサによって実行されると、前記プロセッサに請求項1〜6および14〜17のいずれか1項に記載の方法を実行させるコンピュータ可読ログラム。
JP2016515494A 2013-09-20 2014-09-22 シングルサインオンのためのウェブベースインターフェース統合 Active JP6438940B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361880800P 2013-09-20 2013-09-20
US61/880,800 2013-09-20
PCT/US2014/056835 WO2015042547A1 (en) 2013-09-20 2014-09-22 Web-based interface integration for single sign-on

Publications (3)

Publication Number Publication Date
JP2016536656A JP2016536656A (ja) 2016-11-24
JP2016536656A5 JP2016536656A5 (ja) 2017-09-28
JP6438940B2 true JP6438940B2 (ja) 2018-12-19

Family

ID=51703400

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016515494A Active JP6438940B2 (ja) 2013-09-20 2014-09-22 シングルサインオンのためのウェブベースインターフェース統合
JP2016515489A Active JP6662766B2 (ja) 2013-09-20 2014-09-22 フォームフィルプロキシアプリケーションによるウェブベースシングルサインオン

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2016515489A Active JP6662766B2 (ja) 2013-09-20 2014-09-22 フォームフィルプロキシアプリケーションによるウェブベースシングルサインオン

Country Status (5)

Country Link
US (8) US10079820B2 (ja)
EP (2) EP3047628B1 (ja)
JP (2) JP6438940B2 (ja)
CN (3) CN105684388B (ja)
WO (2) WO2015042547A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10693865B2 (en) 2013-09-20 2020-06-23 Oracle International Corporation Web-based interface integration for single sign-on

Families Citing this family (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015328B2 (en) 2013-03-07 2015-04-21 Fiserv, Inc. Single sign-on processing for associated mobile applications
US9641498B2 (en) * 2013-03-07 2017-05-02 Fiserv, Inc. Single sign-on processing for associated mobile applications
US9495534B2 (en) 2013-03-26 2016-11-15 International Business Machines Corporation OCR-based single sign-on
US9544293B2 (en) 2013-09-20 2017-01-10 Oracle International Corporation Global unified session identifier across multiple data centers
US9866640B2 (en) 2013-09-20 2018-01-09 Oracle International Corporation Cookie based session management
CN104580074B (zh) * 2013-10-14 2018-08-24 阿里巴巴集团控股有限公司 客户端应用的登录方法及其相应的服务器
JP6216458B2 (ja) * 2014-01-24 2017-10-18 マカフィー, エルエルシー 自動プレースホルダファインダ及びフィラー
US9529657B2 (en) 2014-02-07 2016-12-27 Oracle International Corporation Techniques for generating diagnostic identifiers to trace events and identifying related diagnostic information
EP3103239B1 (en) 2014-02-07 2023-10-11 Oracle International Corporation Cloud service custom execution environment
KR102247410B1 (ko) 2014-02-07 2021-05-04 오라클 인터내셔날 코포레이션 모바일 클라우드 서비스 아키텍처
US9529658B2 (en) 2014-02-07 2016-12-27 Oracle International Corporation Techniques for generating diagnostic identifiers to trace request messages and identifying related diagnostic information
JP6336110B2 (ja) 2014-03-31 2018-06-06 オラクル・インターナショナル・コーポレイション モバイルデバイスをモバイルクラウドサービスと同期させるためのインフラストラクチャ
US10313264B2 (en) * 2014-05-28 2019-06-04 Apple Inc. Sharing account data between different interfaces to a service
US9819668B2 (en) * 2014-10-22 2017-11-14 Ca, Inc. Single sign on for native and wrapped web resources on mobile devices
US9807079B2 (en) 2014-10-23 2017-10-31 Palo Alto Network, Inc. Single sign on proxy for regulating access to a cloud service
US10460313B1 (en) * 2014-12-15 2019-10-29 United Services Automobile Association (Usaa) Systems and methods of integrated identity verification
US9432354B2 (en) * 2015-01-01 2016-08-30 Bank Of America Corporation Role-based access tool
US10063661B2 (en) 2015-01-14 2018-08-28 Oracle International Corporation Multi-tenant cloud-based queuing systems
US9916140B2 (en) * 2015-03-23 2018-03-13 International Business Machines Corporation Method of generating end-to-end web application from tooling
US9692745B2 (en) * 2015-04-10 2017-06-27 Microsoft Technology Licensing, Llc Single sign-on without a broker application
US10229262B2 (en) * 2015-04-20 2019-03-12 Bomgar Corporation Systems, methods, and apparatuses for credential handling
US10397233B2 (en) 2015-04-20 2019-08-27 Bomgar Corporation Method and apparatus for credential handling
CN104881597B (zh) * 2015-04-27 2018-09-25 深圳市海浦蒙特科技有限公司 变频器及其用户密码加密方法
US10432592B2 (en) * 2015-05-10 2019-10-01 Citrix Systems, Inc. Password encryption for hybrid cloud services
US9769147B2 (en) 2015-06-29 2017-09-19 Oracle International Corporation Session activity tracking for session adoption across multiple data centers
US9961062B2 (en) * 2015-07-21 2018-05-01 Sap Se Centralized authentication server for providing cross-domain resources via a rest-based tunnel
US10693859B2 (en) 2015-07-30 2020-06-23 Oracle International Corporation Restricting access for a single sign-on (SSO) session
WO2017058956A1 (en) * 2015-09-29 2017-04-06 Weebly, Inc. Application dashboard
US10581826B2 (en) 2015-10-22 2020-03-03 Oracle International Corporation Run-time trust management system for access impersonation
US10505982B2 (en) 2015-10-23 2019-12-10 Oracle International Corporation Managing security agents in a distributed environment
US10454936B2 (en) 2015-10-23 2019-10-22 Oracle International Corporation Access manager session management strategy
US10509574B2 (en) * 2016-02-08 2019-12-17 Microsoft Technology Licensing, Llc Container credentialing by host
US10313351B2 (en) 2016-02-22 2019-06-04 At&T Intellectual Property I, L.P. Dynamic passcodes in association with a wireless access point
US10581823B2 (en) * 2016-03-21 2020-03-03 Vmware, Inc. Web client plugin manager in vCenter managed object browser
CN109074265B (zh) 2016-03-28 2020-06-09 甲骨文国际公司 移动云服务的预先形成的指令
US10367643B2 (en) * 2016-03-28 2019-07-30 Symantec Corporation Systems and methods for managing encryption keys for single-sign-on applications
US10339153B2 (en) * 2016-04-12 2019-07-02 International Business Machines Corporation Uniformly accessing federated user registry topologies
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10425386B2 (en) * 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US9838377B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
WO2018005879A1 (en) * 2016-06-29 2018-01-04 Interactive Intelligence Group, Inc. Technologies for managing application configurations and associated credentials
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10530578B2 (en) * 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10516672B2 (en) 2016-08-05 2019-12-24 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US10505941B2 (en) 2016-08-05 2019-12-10 Oracle International Corporation Virtual directory system for LDAP to SCIM proxy service
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10375053B2 (en) 2016-09-09 2019-08-06 Microsoft Technology Licensing, Llc Cross-platform single sign-on accessibility of a productivity application within a software as a service platform
EP3528454B1 (en) * 2016-09-14 2020-08-26 Oracle International Corporation Single sign-on and single logout functionality for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10623501B2 (en) 2016-09-15 2020-04-14 Oracle International Corporation Techniques for configuring sessions across clients
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
CN107872439B (zh) * 2016-09-28 2021-02-05 腾讯科技(深圳)有限公司 一种身份识别方法、装置及系统
US11314688B2 (en) * 2016-10-31 2022-04-26 Salesforce.Com, Inc. Providing access to transformed user data to maintain user privacy
US10754962B2 (en) * 2016-12-15 2020-08-25 Blackberry Limited System for secure context-aware password management
US10404689B2 (en) 2017-02-09 2019-09-03 Microsoft Technology Licensing, Llc Password security
US11233867B2 (en) * 2017-03-13 2022-01-25 Microsoft Technology Licensing, Llc On-demand push notification mechanism
US10791119B1 (en) * 2017-03-14 2020-09-29 F5 Networks, Inc. Methods for temporal password injection and devices thereof
JP2018156559A (ja) * 2017-03-21 2018-10-04 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法、およびプログラム
US10250723B2 (en) * 2017-04-13 2019-04-02 BlueTalon, Inc. Protocol-level identity mapping
US10455418B2 (en) 2017-04-27 2019-10-22 Afero, Inc. Securely providing a password using an internet of things (IOT) system
US10824709B2 (en) * 2017-06-04 2020-11-03 Apple Inc. Autofill for application login credentials
US10970385B2 (en) 2017-06-04 2021-04-06 Apple Inc. Multiple device credential sharing
US10715513B2 (en) 2017-06-30 2020-07-14 Microsoft Technology Licensing, Llc Single sign-on mechanism on a rich client
US11290438B2 (en) 2017-07-07 2022-03-29 Oracle International Corporation Managing session access across multiple data centers
CN109428877B (zh) * 2017-09-01 2021-07-09 上海优扬新媒信息技术有限公司 一种用于通过用户设备访问业务系统的方法和装置
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US11050730B2 (en) 2017-09-27 2021-06-29 Oracle International Corporation Maintaining session stickiness across authentication and authorization channels for access management
US10157275B1 (en) 2017-10-12 2018-12-18 Oracle International Corporation Techniques for access management based on multi-factor authentication including knowledge-based authentication
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10956593B2 (en) * 2018-02-15 2021-03-23 International Business Machines Corporation Sharing of data among containers running on virtualized operating systems
US11023573B2 (en) 2018-04-20 2021-06-01 Microsoft Technology Licensing, Llc Password reset for multi-domain environment
US11153172B2 (en) * 2018-04-30 2021-10-19 Oracle International Corporation Network of nodes with delta processing
US10909258B2 (en) * 2018-04-30 2021-02-02 Oracle International Corporation Secure data management for a network of nodes
CN108683648A (zh) * 2018-05-02 2018-10-19 珠海横琴盛达兆业科技投资有限公司 一种基于微信小程序与服务器之间通过不断地变换验证码来实现安全通信的方法
US11489843B2 (en) 2018-05-16 2022-11-01 Equifax Inc. Controlling access to secured data via timed filtering of data
CN110753020A (zh) * 2018-07-24 2020-02-04 北京京东尚科信息技术有限公司 网络请求处理方法和装置
US11328086B2 (en) * 2018-09-06 2022-05-10 Microsoft Technology Licensing, Llc Privacy disclosure
US11190502B2 (en) 2018-09-20 2021-11-30 Microsoft Technology Licensing, Llc. Automated single sign-on configuration for service providers
US11005891B2 (en) 2018-11-12 2021-05-11 Citrix Systems, Inc. Systems and methods for live SaaS objects
US11228577B2 (en) * 2018-12-04 2022-01-18 International Business Machines Corporation Cloud application acting on behalf of user
US11409948B2 (en) 2018-12-10 2022-08-09 Block, Inc. Centralized brand asset management
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
IT201900005876A1 (it) * 2019-04-16 2020-10-16 Roberto Griggio Sistema e metodo per la gestione delle credenziali di accesso multi-dominio di un utente abilitato ad accedere ad una pluralità di domini
CN110245063B (zh) * 2019-06-25 2023-01-31 北京搜房科技发展有限公司 用户行为统计方法及装置
CN110287682B (zh) * 2019-07-01 2020-12-04 北京芯盾时代科技有限公司 一种登录方法、装置及系统
US11089005B2 (en) 2019-07-08 2021-08-10 Bank Of America Corporation Systems and methods for simulated single sign-on
US11323432B2 (en) 2019-07-08 2022-05-03 Bank Of America Corporation Automatic login tool for simulated single sign-on
US11115401B2 (en) 2019-07-08 2021-09-07 Bank Of America Corporation Administration portal for simulated single sign-on
US11134078B2 (en) 2019-07-10 2021-09-28 Oracle International Corporation User-specific session timeouts
CN112291183B (zh) * 2019-07-23 2022-04-29 腾讯科技(深圳)有限公司 一种账号登录方法、系统及相关设备
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
CN112714144B (zh) * 2019-10-25 2022-06-21 拉扎斯网络科技(上海)有限公司 列表信息处理方法、装置、电子设备及计算机存储介质
BR112021011320A2 (pt) * 2019-12-27 2022-09-13 Basf Coatings Gmbh Servidor, sistema e método para controlar qualidade de cor, e, meio de armazenamento legível por computador
US11514147B2 (en) * 2019-12-30 2022-11-29 EMC IP Holding Company LLC Increasing security of a computing device based on determining a user's state of consciousness
CN111241504B (zh) * 2020-01-16 2024-01-05 远景智能国际私人投资有限公司 身份验证方法、装置、电子设备及存储介质
US11689523B2 (en) 2020-03-13 2023-06-27 Kyndryl, Inc. Facilitating password creation via a secure device
TWI768307B (zh) * 2020-03-18 2022-06-21 傑睿資訊服務股份有限公司 開源軟體整合方法
US11140148B1 (en) * 2020-03-30 2021-10-05 Konica Minolta Business Solution U.S.A., Inc. Method and system for instant single sign-on workflows
EP3896590A1 (de) * 2020-04-17 2021-10-20 Siemens Aktiengesellschaft Verfahren und systeme zum übertragen von software-artefakten aus einem quellnetzwerk zu einem zielnetzwerk
US11790075B1 (en) * 2020-06-29 2023-10-17 Amazon Technologies, Inc. Managed lifecycle roles for secure credential vending
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
US11409909B1 (en) 2020-09-09 2022-08-09 Robert Alderton Data privacy enforcers
CN112165482B (zh) * 2020-09-24 2021-07-27 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机设备及介质
US20220141044A1 (en) 2020-11-05 2022-05-05 Intermedia.Net, Inc. Video Conference Calendar Integration
EP3996342A1 (fr) * 2020-11-09 2022-05-11 Bull SAS Procede et systeme d'acces a une application distante
CN112688937A (zh) * 2020-12-22 2021-04-20 武汉烽火众智数字技术有限责任公司 一种跨应用的异构应用下系统单点登录的登录方法
US20220261761A1 (en) * 2021-02-17 2022-08-18 Atlassian Pty Ltd. Displaying content in a collaborative work environment
US20220294788A1 (en) * 2021-03-09 2022-09-15 Oracle International Corporation Customizing authentication and handling pre and post authentication in identity cloud service
US20230037854A1 (en) * 2021-08-06 2023-02-09 Eagle Telemedicine, LLC Systems and Methods for Automating Processes for Remote Work
CN113779528A (zh) * 2021-09-16 2021-12-10 平安信托有限责任公司 多系统前端页面集成方法、装置、设备及介质
US20230099355A1 (en) * 2021-09-29 2023-03-30 Dell Products L.P. Single sign-on services for database clusters
CN114124382B (zh) * 2021-12-01 2024-04-09 深圳市闪剪智能科技有限公司 凭证更新方法、系统、设备及存储介质

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5987179U (ja) 1982-11-30 1984-06-13 日本電気ホームエレクトロニクス株式会社 蓋体取付け装置
US6243816B1 (en) * 1998-04-30 2001-06-05 International Business Machines Corporation Single sign-on (SSO) mechanism personal key manager
US6892307B1 (en) 1999-08-05 2005-05-10 Sun Microsystems, Inc. Single sign-on framework with trust-level mapping to authentication requirements
US6668322B1 (en) 1999-08-05 2003-12-23 Sun Microsystems, Inc. Access management system and method employing secure credentials
US6609198B1 (en) * 1999-08-05 2003-08-19 Sun Microsystems, Inc. Log-on service providing credential level change without loss of session continuity
AU2001230933A1 (en) * 2000-01-14 2001-07-24 Catavault Method and system for secure personal authentication credentials data over a network
JP2002328904A (ja) 2001-03-01 2002-11-15 Appresso:Kk アプリケーションサービスプロバイダ管理システム
US7412720B1 (en) 2001-11-02 2008-08-12 Bea Systems, Inc. Delegated authentication using a generic application-layer network protocol
US20040158746A1 (en) * 2003-02-07 2004-08-12 Limin Hu Automatic log-in processing and password management system for multiple target web sites
US7496953B2 (en) * 2003-04-29 2009-02-24 International Business Machines Corporation Single sign-on method for web-based applications
CN1323508C (zh) * 2003-12-17 2007-06-27 上海市高级人民法院 一种基于数字证书的单点登录方法
US7480718B2 (en) * 2004-06-28 2009-01-20 International Business Machines Corporation Method for providing single sign-on user names for Web cookies in a multiple user information directory environment
WO2006034476A1 (en) 2004-09-24 2006-03-30 Siemens Medical Solutions Usa, Inc. A system for activating multiple applications for concurrent operation
US7721328B2 (en) 2004-10-01 2010-05-18 Salesforce.Com Inc. Application identity design
JP4779444B2 (ja) 2005-05-26 2011-09-28 株式会社日立製作所 シングルサインオン実現方法
US8223938B2 (en) 2005-09-30 2012-07-17 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for providing caller identification services
US9407662B2 (en) * 2005-12-29 2016-08-02 Nextlabs, Inc. Analyzing activity data of an information management system
US7739744B2 (en) 2006-03-31 2010-06-15 Novell, Inc. Methods and systems for multifactor authentication
US8689287B2 (en) 2006-08-17 2014-04-01 Northrop Grumman Systems Corporation Federated credentialing system and method
JP4652350B2 (ja) * 2007-01-29 2011-03-16 Necソフト株式会社 リバースプロキシサーバ、その制御方法及びプログラム
JP5551938B2 (ja) 2007-02-09 2014-07-16 ノキア コーポレイション クライアントデバイスに表示する情報コンテンツを提供する方法及び装置
US8365282B2 (en) 2007-07-18 2013-01-29 Research In Motion Limited Security system based on input shortcuts for a computer device
US7970943B2 (en) 2007-08-14 2011-06-28 Oracle International Corporation Providing interoperability in software identifier standards
WO2009035674A1 (en) 2007-09-14 2009-03-19 Security First Corporation Systems and methods for managing cryptographic keys
US20090199277A1 (en) 2008-01-31 2009-08-06 Norman James M Credential arrangement in single-sign-on environment
CN101588348A (zh) * 2008-05-22 2009-11-25 中国电信股份有限公司 一种基于Web的系统登录方法和装置
US8141140B2 (en) 2008-05-23 2012-03-20 Hsbc Technologies Inc. Methods and systems for single sign on with dynamic authentication levels
US8438382B2 (en) 2008-08-06 2013-05-07 Symantec Corporation Credential management system and method
US20100174758A1 (en) * 2009-01-05 2010-07-08 International Business Machines Corporation Automatic management of single sign on passwords
JP5169866B2 (ja) * 2009-01-22 2013-03-27 富士電機株式会社 中継サーバを有するネットワークシステム、その中継サーバ、プログラム
US8555359B2 (en) 2009-02-26 2013-10-08 Yodlee, Inc. System and methods for automatically accessing a web site on behalf of a client
GB0904559D0 (en) * 2009-03-17 2009-04-29 British Telecomm Web application access
US8498618B2 (en) * 2009-06-22 2013-07-30 Mourad Ben Ayed Systems for intelligent authentication based on proximity
US8763104B2 (en) * 2009-08-27 2014-06-24 International Business Machines Corporation Establishing and maintaining an improved Single Sign-on (SSO) facility
US20110138453A1 (en) 2009-12-03 2011-06-09 Samsung Electronics Co., Ltd. Single sign-on in mixed http and sip environments
US8789152B2 (en) * 2009-12-11 2014-07-22 International Business Machines Corporation Method for managing authentication procedures for a user
WO2011089712A1 (ja) 2010-01-22 2011-07-28 富士通株式会社 認証方法、認証システムおよび認証プログラム
JP5581820B2 (ja) * 2010-06-04 2014-09-03 富士通株式会社 中継サーバ装置、クッキー制御方法およびクッキー制御プログラム
US8863001B2 (en) * 2010-06-11 2014-10-14 Microsoft Corporation Web application home button
US8793650B2 (en) * 2010-06-11 2014-07-29 Microsoft Corporation Dynamic web application notifications including task bar overlays
US9560036B2 (en) 2010-07-08 2017-01-31 International Business Machines Corporation Cross-protocol federated single sign-on (F-SSO) for cloud enablement
WO2012023050A2 (en) 2010-08-20 2012-02-23 Overtis Group Limited Secure cloud computing system and method
US9230006B2 (en) * 2010-09-30 2016-01-05 Bullhorn, Inc. Remote access to tracking system contact information
JP2012185651A (ja) 2011-03-04 2012-09-27 Canon Inc 情報処理装置、情報処理システム、情報処理装置の制御方法、及びプログラム
CN107070843A (zh) 2011-04-28 2017-08-18 交互数字专利控股公司 一种用户设备以及在用户设备中的方法
US9130935B2 (en) * 2011-05-05 2015-09-08 Good Technology Corporation System and method for providing access credentials
WO2012154595A1 (en) 2011-05-06 2012-11-15 Citrix Systems, Inc. Systems and methods for cloud bridging between public and private clouds
CN102790712B (zh) * 2011-05-17 2015-07-15 北京航空航天大学 Web服务安全处理方法及系统
JP5824744B2 (ja) 2011-09-28 2015-11-25 西日本電信電話株式会社 情報処理システム、及び情報処理方法
US9495533B2 (en) * 2011-09-29 2016-11-15 Oracle International Corporation Mobile application, identity relationship management
US8881229B2 (en) * 2011-10-11 2014-11-04 Citrix Systems, Inc. Policy-based application management
US20140013409A1 (en) * 2012-07-06 2014-01-09 Milind I. Halageri Single sign on for cloud
JP5535184B2 (ja) 2011-12-09 2014-07-02 株式会社日立システムズ ブラウザ実行スクリプト変換システムおよびブラウザ実行スクリプト変換プログラム
US8776209B1 (en) 2012-03-09 2014-07-08 Juniper Networks, Inc. Tunneling session detection to provide single-sign on (SSO) functionality for a VPN gateway
CN102638454B (zh) 2012-03-14 2014-05-21 武汉理工大学 一种面向http身份鉴别协议的插件式单点登录集成方法
CN102868704B (zh) * 2012-10-11 2015-11-11 北京新媒传信科技有限公司 一种单点登录的方法和系统
US8726343B1 (en) * 2012-10-12 2014-05-13 Citrix Systems, Inc. Managing dynamic policies and settings in an orchestration framework for connected devices
US8484711B1 (en) * 2012-10-31 2013-07-09 Fmr Llc System and method for providing access to a software application
CN103812820B (zh) * 2012-11-06 2018-09-04 腾讯科技(深圳)有限公司 登录方法及系统
US9110659B2 (en) 2012-11-20 2015-08-18 International Business Machines Corporation Policy to source code conversion
US9038149B2 (en) * 2012-12-18 2015-05-19 Virtual Keyring, LLC Cloud based password management
US8893230B2 (en) * 2013-02-22 2014-11-18 Duo Security, Inc. System and method for proxying federated authentication protocols
US9009806B2 (en) 2013-04-12 2015-04-14 Globoforce Limited System and method for mobile single sign-on integration
CN103414684A (zh) * 2013-06-05 2013-11-27 华南理工大学 一种单点登录方法及系统
CN105684388B (zh) 2013-09-20 2019-04-09 甲骨文国际公司 利用表单填充代理应用的基于网络的单点登录

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10693865B2 (en) 2013-09-20 2020-06-23 Oracle International Corporation Web-based interface integration for single sign-on

Also Published As

Publication number Publication date
CN105659557A (zh) 2016-06-08
US20150089580A1 (en) 2015-03-26
US20170195317A1 (en) 2017-07-06
US9628468B2 (en) 2017-04-18
US20170289135A1 (en) 2017-10-05
US10079820B2 (en) 2018-09-18
US10116643B2 (en) 2018-10-30
JP6662766B2 (ja) 2020-03-11
US20190166115A1 (en) 2019-05-30
US20150089619A1 (en) 2015-03-26
EP3047629A1 (en) 2016-07-27
US20150089620A1 (en) 2015-03-26
CN105684388B (zh) 2019-04-09
US10225244B2 (en) 2019-03-05
US10693865B2 (en) 2020-06-23
EP3047628B1 (en) 2018-08-29
US20150089579A1 (en) 2015-03-26
EP3047628A1 (en) 2016-07-27
US20190166114A1 (en) 2019-05-30
US9722990B2 (en) 2017-08-01
CN105659557B (zh) 2019-11-01
US10075426B2 (en) 2018-09-11
CN109617933A (zh) 2019-04-12
EP3047629B1 (en) 2019-11-06
JP2016537696A (ja) 2016-12-01
WO2015042546A1 (en) 2015-03-26
JP2016536656A (ja) 2016-11-24
CN109617933B (zh) 2021-09-17
WO2015042547A1 (en) 2015-03-26
CN105684388A (zh) 2016-06-15

Similar Documents

Publication Publication Date Title
JP6438940B2 (ja) シングルサインオンのためのウェブベースインターフェース統合
US11019103B2 (en) Managing security agents in a distributed environment
US10735196B2 (en) Password-less authentication for access management
US10693864B2 (en) Single sign-on between multiple data centers
US10572649B2 (en) Session activity tracking for session adoption across multiple data centers
US10693859B2 (en) Restricting access for a single sign-on (SSO) session
US11658958B2 (en) Maintaining session stickiness across authentication and authorization channels for access management
JP2018533141A (ja) エンドユーザによって起動されるアクセスサーバ真正性チェック

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170818

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180710

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181010

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181119

R150 Certificate of patent or registration of utility model

Ref document number: 6438940

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