JP6556943B2 - アプライアンスセキュアシェルのためのシングルサインオン方法 - Google Patents

アプライアンスセキュアシェルのためのシングルサインオン方法 Download PDF

Info

Publication number
JP6556943B2
JP6556943B2 JP2018516410A JP2018516410A JP6556943B2 JP 6556943 B2 JP6556943 B2 JP 6556943B2 JP 2018516410 A JP2018516410 A JP 2018516410A JP 2018516410 A JP2018516410 A JP 2018516410A JP 6556943 B2 JP6556943 B2 JP 6556943B2
Authority
JP
Japan
Prior art keywords
client device
session
storage device
ssh
establish
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
JP2018516410A
Other languages
English (en)
Other versions
JP2018538592A (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 JP2018538592A publication Critical patent/JP2018538592A/ja
Application granted granted Critical
Publication of JP6556943B2 publication Critical patent/JP6556943B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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
    • 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
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、セキュアネットワーク通信の分野、より具体的には、ウェブリソースにアクセスするためのセキュアシェル接続を効率的に確立することに関する。
関連技術の説明
初期のクライアントサーバコンピューティングモデルは、複数のクライアントコンピューティングデバイスの各々の上で、及び支持されたクライアントサーバアプリケーション用のリモートサーバ上で、コードを利用した。クライアントコンピューティングデバイス用のコードは、ユーザインターフェイスを提供し、そのコードは、複数のクライアントコンピューティングデバイスの各々上でインストールされた。アップグレードは、複数のクライアントコンピューティングデバイスの各々上で、そのコードに変化を引き起こした。更に、クライアントコンピューティングデバイス及びサーバ用のコードは、典型的には、所与の命令セットアーキテクチャ(ISA)及びオペレーティングシステム(OS)に依存した。
ウェブベースアプリケーションは、標準言語フォーマットによって作成されるウェブページを利用することによって、上記の問題のうちの多くに対処した。クライアントコンピューティングデバイス上のウェブブラウザは、要求されたウェブページを記憶するリモートウェブサーバに要求を伝送する。ウェブブラウザは、ハイパーテキスト転送プロトコル(HTTP)を使用して、要求を転送する。リモートウェブサーバ上でホストされるアプリケーション用のクライアントコードは、特定のウェブページが成功してアクセスされるとき、クライアントコンピューティングデバイスにダウンロードされる。
アプリケーションをホストするリモートウェブサーバは、ユーザの特定のグループに対して、アプリケーションへのアクセスを制限し得る。クライアント−サーバコンピューティングモデルに対する初期のセキュリティ実行は、HTTP基本認証を使用したもので、ユーザは、ユーザがホストされたアプリケーションにアクセスすることを可能にする前に、ユーザを認証するために使用される資格情報を提供した。この種の認証は、ユーザが既に認証されたが、リモートウェブサーバを通して利用可能である他のリソースの各アクセスに関する資格情報をユーザに促す。更に、一旦ユーザが認証されると、コード化されたフォーマットにおいて資格情報を含み得るアプリケーションプログラミングインターフェイス(API)キーが、各要求のヘッダにおいて使用される。認証されたユーザによって使用されるコンピューティングデバイスへのアクセスを取得する悪意のあるユーザは、コンピューティングデバイス上でアプリケーション用のクライアントコードをリバースエンジニアリングして、記憶されたAPIキーを取得し得る。
トークン認証は、リモートウェブサーバ上でホストされるウェブベースアプリケーションにアクセスする各接続されたコンピューティングデバイスのトラッキングを提供し、ユーザが既に認証されたときに、リモートウェブサーバを通して利用可能である他のリソースのアクセスに関する資格情報を促さない。オペレーティングシステムは、アクセストークンのストレージを非表示にすることによって、追加のセキュリティを提供する。加えて、悪意のあるユーザがアクセストークンを取得する場合、アクセストークンは、潜在的な損失を制限する有効期限を有する。認証サービスを使用して、ユーザ資格情報を検証し、リモートウェブサーバ上のセッションの最中に使用されることになる一時的なアクセストークンを生成する。
トークン認証の生成及び維持は、複雑である。開発者は、トークン認証を支持及び維持するためのコードを書き込むことにかなりの量の時間を消費することよりもむしろ、ウェブベースアプリケーションを作成して、アプリケーションをオンラインにし、迅速に実行させることに時間を費やすことを好む。更に、多くの種類のタスク及び対応するウェブベースアプリケーションに対して、システム管理者などの特定のユーザは、セキュアシェル(SSH)ユーザインターフェイスを使用することを好む。SSHユーザインターフェイスは、OS及びウェブベースアプリケーションにコマンドラインインターフェイス(CLI)を提供する。しかしながら、システム管理者がウェブベースアプリケーションをホストするリモートウェブサーバ上でHTTPセッションを既に確立しているにもかかわらず、SSHアクセスは、典型的には、別のログインの試みをユーザに促す。認証サービスは、また、資格情報を検証する一方で、HTTPリダイレクションを使用し得る。SSHユーザインターフェイスは、HTTPリダイレクションを支持することができない。
上記を考慮して、ウェブリソースにアクセスするためのセキュアシェル接続を効率的に確立するための改善されたシステム及び方法が所望される。
ウェブリソースにアクセスするためのセキュアシェル接続を効率的に確立するためのシステム及び方法が想到されている。様々な実施形態では、ストレージサービスデバイスは、比較的小さなビジネス環境、又は代替的に、大きな企業環境などのビジネス環境において、複数のデバイスの間に配置される。ストレージサービスデバイスは、ストレージデバイスとも称され得る。複数のクライアントコンピューティングデバイスは、インターネット又はクラウドベースネットワークなどのネットワークにわたって、ストレージデバイスにリモート接続され得る。その環境は、第三者認証サービスを含み得、それは、制限されたアクセスでリモートストレージデバイス上のウェブリソースに対してユーザを認証することなどのユーザ管理に対処するためのアイデンティティプロバイダとも称される。
第三者アイデンティティプロバイダ(IDP)は、1つ以上のハイパーテキスト転送プロトコル(HTTP)リダイレクションを使用する一方で、ユーザを認証する工程を実行する。HTTPリダイレクションは、クライアントコンピューティングデバイス上のユーザのウェブブラウザによって、及びストレージデバイス上のウェブサービスによって支持される。しかしながら、HTTPリダイレクションは、クライアントコンピューティングデバイスとリモートストレージデバイスとの間でセキュアシェル接続を確立するために使用されるセキュアシェル(SSH)コード(プロセス)によって支持されない。
成功した認可がSSOアイデンティティプロバイダを用いて達成された後、ストレージデバイスは、クライアントコンピューティングデバイスにアクセストークン及びオプションのリフレッシュトークンを送信し得る。更に、ストレージデバイスは、セッションクッキー、インターネットプロトコル(IP)アドレス、及び媒体アクセス制御(MAC)アドレスのうちの1つ以上を含むクライアントデバイス識別子(ID)を送信し得る。ストレージデバイスは、アクセストークン及び/又はオプションのリフレッシュトークン、並びにクライアントデバイスIDを記憶し得る。少なくとも記憶されたアクセストークン及び記憶されたクライアントデバイスIDは、ユーザがテキストベースセキュアシェルセッションを要求するとき、第三者アイデンティティプロバイダを使用せずにユーザを認証するために、後で使用され得る。少なくとも記憶されたアクセストークンを使用して、ストレージデバイス上でウェブリソースに対してクライアントデバイスからのアクセス要求を認証し得る。。この点において、セキュアHTTPセッションは、クライアントコンピューティングデバイスとリモートストレージデバイスとの間でユーザのために確立される。ユーザは、セキュアHTTPセッションを使用して要求を送信し得、要求は、少なくともアクセストークン及び/又はオプションのリフレッシュトークン、並びにクライアントデバイスIDを含む。
後で、ユーザは、ストレージデバイス上のウェブアプリケーションに、クライアントコンピューティングデバイスとストレージデバイスとの間のテキストベースセキュアシェル(SSH)接続を確立することを要求し得る。様々な実施形態では、要求は、ユーザ名、アクセストークン及び/又はオプションのリフレッシュトークン、並びにクライアントデバイスIDを含む。テキストベースセキュアシェル(SSH)セッションに関して、リモートストレージデバイス上で要求をウェブアプリケーションに送信するとき、ユーザは、ログイン資格情報を促されない。加えて、テキストベースSSHセッションに関して、ユーザを認証する工程の最中に、ユーザは、ログイン資格情報を促されない。
リモートストレージデバイスは、テキストベースSSHセッションに関する要求を受信し、第三者アイデンティティプロバイダを使用せずにユーザをローカルに認証する。むしろ、リモートストレージデバイスは、ユーザ名と一緒に、以前に記憶されたアクセストークン及び/又はリフレッシュトークン、並びにクライアントデバイスIDを使用し得る。アイデンティティ及びアクセスマネージャ(IAM)は、ユーザを認証するためにリモートストレージデバイスによって使用され得る。HTTPリダイレクションは、認証を実行するために使用されない。いくつかの実施形態では、セキュアHTTPセッションに関して生成されるトークン(複数可)とは別個のアクセストークン及びオプションのリフレッシュトークンの対は、テキストベースセキュアシェルセッションに対して作成される。他の実施形態では、セキュアHTTPセッションに対して使用される同じアクセストークン及びオプションのリフレッシュトークンの対は、テキストベースセキュアシェルセッションに対して使用される。リモートストレージデバイスは、SSHセッションに対して認証されているユーザの通知を、クライアントコンピューティングデバイスに送信する。第三者アイデンティティプロバイダがシステム内で使用されるが、ユーザは、資格情報を要求するログイン工程を伴わずに、クライアントコンピューティングデバイスとリモートストレージデバイスとの間のテキストベースセキュアシェル接続を使用することができる。ユーザは、クライアントコンピューティングデバイス上のウェブブラウザ内でコマンドラインインターフェイス(CLI)を用いて提示され得る。
これら及びその他の実施形態は、以下の説明及び添付図面の参照によって理解されるであろう。
第三者シングルサインオン(SSO)サービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを確立する一実施形態を図解する汎用ブロック図である。
第三者SSOサービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを確立することを継続する一実施形態を図解する汎用ブロック図である。
第三者SSOサービスを使用してセキュアHTTPセッションを確立した後にリモートストレージデバイス上でテキストベースセキュアシェルセッションを確立する一実施形態を図解する汎用ブロック図である。
第三者SSOサービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを確立するための方法の一実施形態を図解する流れ図である。
第三者SSOサービスを使用してセキュアHTTPセッションを確立した後にリモートストレージデバイス上でテキストベースセキュアシェルセッションを確立するための方法の一実施形態を図解する流れ図である。
本発明は、様々な修正及び代替的な形態が可能であるが、具体的な実施形態が、図面において、例として示されており、かつ本明細書において詳細に説明される。しかしながら、図面及びその詳細な説明は、本発明を開示される特定の形態に制限することを意図するものではなく、逆に、本発明は、添付の特許請求の範囲で定義されるように、本発明の趣旨及び範囲内に入る全ての修正、同等、及び代替を網羅するものであることを理解されたい。
以下の説明では、数々の具体的な詳細が、本発明の十分な理解をもたらすために記載されている。しかしながら、当業者であれば、本発明がこれらの具体的な詳細なしで実施され得ることを認識するであろう。場合によっては、周知の回路、構造、信号、コンピュータプログラム命令、及び技術は、本発明を不明瞭にすることを避けるため、詳細に示されていない。
ストレージサービスデバイス(ストレージデバイスとも称され得る)は、様々なビジネス又は他の環境のいずれにおいても、配置され得る。いくつかの実施形態では、ストレージデバイスは、リモートウェブベースバックアップサーバである。他の実施形態では、ストレージデバイスは、バックアップ専用アプライアンス(PBBA)又はストレージアプライアンスであり得る。かかる環境では、複数のクライアントコンピューティングデバイス(クライアントデバイス)は、インターネット又はクラウドベースネットワークなどのネットワークにわたって、ストレージデバイスにリモート接続され得る。かかるクライアントコンピューティングデバイスの例としては、デスクトップコンピュータ、ラップトップ、タブレットコンピュータ、スマートフォンなどが挙げられる。
クライアントデバイスで作業をする1人以上のユーザに対して、ストレージデバイスは、ストレージデバイス上でホストされるリソースへの制限されたアクセスを提供し得る。いくつかの実施形態では、その環境は、第三者認証サービスを含み得、それは、制限されたアクセスなどのユーザ管理に対処するためのアイデンティティプロバイダとも称される。第三者アイデンティティプロバイダ(IDP)は、シングルサインオン(SSO)サービスを使用し得る。SSOサービスを用いて、ユーザは、最初のログインの後にアクセスされる別個のアプリケーションの数に関係なく、一度だけ資格情報を提供する。上記に加えて、第三者アイデンティティプロバイダ(IDP)は、1つ以上のHTTPリダイレクションを使用する一方で、ユーザを認証する工程を実行し得る。HTTPリダイレクションは、概して、クライアントデバイス上のユーザのウェブブラウザによって、及びストレージデバイス上のウェブサービスによって支持される。しかしながら、かかるHTTPリダイレクションは、ストレージデバイスに対するセキュア接続を確立するために使用されるセキュアシェル(SSH)コード(プロセス)によって支持されない。
以下の考察において、図1及び図2は、セキュアHTTPセッションを確立するための実施形態を図解する。セキュアHTTPセッションの確立の後、図3は、ユーザログインの促しを伴うことなく、かつ第三者アイデンティティプロバイダを使用することなく、セキュアシェルセッションの確立を描写する。最後に、図4及び図5の各々は、クライアントデバイスのためにストレージデバイス上でセキュアHTTPセッション及びテキストベースセキュアシェルセッションを確立するための方法を図解する。
図1を参照すると、第三者シングルサインオン(SSO)サービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを確立する一実施形態の汎用ブロック図が示される。示された実施形態では、単一クライアントコンピューティングデバイス110は、ストレージサービスデバイス120に接続される。しかしながら、様々な他の実施形態では、複数のクライアントコンピューティングデバイスは、ストレージサービスデバイス120に接続され、1つ以上の他のデバイス又はサーバに接続される。他の複数のデバイス及びサーバは、説明を容易にするために示されていない。クライアントコンピューティングデバイス110は、クライアントデバイス110とも称され得る。ストレージサービスデバイス120は、ストレージデバイス120とも称され得る。クライアントデバイス110はまた、第三者アイデンティティプロバイダ150に接続されて示される。アイデンティティプロバイダ150は、ディレクトリサービス及び認証サービスのうちの1つ以上を提供するための、1つ以上のサーバ(serves)130〜140及びソフトウェアを含み得る。
クライアントデバイス110の例としては、少なくともデスクトップコンピュータ、ラップトップ、タブレットコンピュータ、スマートフォンなどが挙げられる。いくつかの実施形態では、ストレージデバイス120は、ディスクストレージ、バックアップサーバ、ネットワークアタッチトストレージ(NAS)デバイス、ストレージエリアネットワーク(SAN)デバイス、又は他のものなどのストレージの一種である。他の実施形態では、ストレージデバイス120は、バックアップ専用アプライアンス(PBBA)である。PBBAは、ストレージアプライアンスとも称され得る。典型的に、ストレージアプライアンスは、ソフトウェアと一緒に販売される、一般的に使用される認定サーバハードウェアに基づくサーバであり、ハードウェア及びソフトウェアは単一の供給メーカーによって提供される。ストレージアプライアンスは、サーバ、データストレージ、オペレーティングシステム、バックアップソフトウェア、及び重複排除ソフトウェアを含み得る。ストレージアプライアンスの一体型アプローチは、相対的に迅速なインストール(配置)時間をもたらし得る。ストレージアプライアンスは、ストレージを提供し、別のアプライアンス又は別のストレージ媒体でのストレージを可能にし、かつ/又は物理システム及び仮想システムの両方の重複排除を提供し得る。
ストレージアプライアンスは典型的に、4テラバイト(TB)〜500TBの容量を有するデータストレージを提供する。結果として、ストレージアプライアンスは、テープベースバックアップ及びリカバリプロセスに取って代わり得る。企業環境及びメインフレーム環境などの他の環境では、ストレージアプライアンスは、テープベースシステムと一緒に配置され得る。ストレージアプライアンスは、クラウドベースストレージに、又は構内ストレージで使用され得る。クライアントデバイス110とストレージデバイス120と間の接続は、少なくともインターネットを含み得、クライアントデバイス110及びストレージデバイス120の各々は、ハイパーテキスト転送プロトコル(HTTP)を使用して、メッセージを転送する。
様々な実施形態では、クライアントデバイス110は、予め定義された汎用命令セットアーキテクチャ(ISA)に従って命令を実行するための回路機構を含む1つ以上のプロセッサコアを含み得る。例えば、SPARC(登録商標)命令セットアーキテクチャ(ISA)が選択され得る。代替的に、x86、x86−64(登録商標)、Alpha(登録商標)、PowerPC(登録商標)、MIPS(登録商標)、PA−RISC(登録商標)、又は任意の他のISAが選択され得る。他の実施形態では、クライアントデバイス110は、1つ以上のプロセッサが、非常に広い単一命令多重データ(SIMD)アーキテクチャを利用して、高データ並列アプリケーションにおいて高スループットを達成するシステムオンチップ(SOC)を含み得る。例えば、クライアントデバイス110は、グラフィック処理ユニット(GPU)、デジタル信号プロセッサ(DSP)などのうちの1つ以上を含み得る。
クライアントデバイス110は、Mac OS Xオペレーティングシステム、Microsoft Windowsオペレーティングシステム、Unix系オペレーティングシステム、モバイルデバイスオペレーティングシステム、又はハードディスクが複数のオペレーティングシステムをホストするように区画化される組み合わせを使用し得る。前に説明したように、クライアントデバイス110の例としては、少なくともデスクトップコンピュータ、ラップトップ、タブレットコンピュータ、スマートフォンなどが挙げられる。クライアントデバイス110は、ウェブブラウザ112などのソフトウェアを含み得る。ウェブブラウザ112は、少なくともInternet Explorer、Firefox、Google Chrome、及びSafariなどのいくつかの利用可能なワールドワイドウェブブラウザで表したものであり得る。
様々な実施形態では、ウェブベースユーザインターフェイス114は、ストレージデバイス120上のアプリケーション124用のウェブブラウザ112内のグラフィカルユーザインターフェイス(GUI)であり得る。いくつかの実施形態では、ユーザ102が認可されるまで、ウェブベースアプリケーションユーザインターフェイス114は、クライアントデバイス110のモニタ上でユーザ102に提示されない場合がある。ウェブベースアプリケーションユーザインターフェイス114は、使い勝手のよいインターフェイスをユーザに提供し得る。当業者に周知であるように、GUIウェブベースアプリケーションユーザインターフェイス114は、バッチジョブの送信などの効率的な自動操作シーケンスに対する十分な支持を欠く場合がある。
ストレージデバイス120は、少なくともオペレーティングシステム(OS)、ウェブサービス122、及び少なくとも1つのウェブベースアプリケーション124などの複数のソフトウェア構成要素を含み得る。OS(図示せず)は、例えば、Symantec Appliance Operating System、Linux(登録商標)、又はSun Solarisなどの様々な特定のオペレーティングシステムのいずれかを表したものであり得る。このように、オペレーティングシステムは、システム管理者のために、重複排除、自動バックアップ、リカバリ操作のためのウェブベースアプリケーション124などの様々なプログラムの実行を支持するように動作可能なソフトウェアフレームワークを提供するように動作可能であり得る。ウェブサービス122は、認証を検証し、認可されたユーザのためにウェブベースセッション及びテキストベースシェルセッションを作成し得る。
ストレージデバイス120によって実行される企業情報管理において使用される操作などのデータ管理操作は、企業コンプライアンスを提供する。企業コンプライアンスは、ファイル及びレポートに保持されるデータの精度及び完全性、並びに企業全体での一貫性のあるデータを保証する。企業環境及びスモールビジネス環境の両方とも、上記のデータ管理操作を提供するために複数のストレージデバイスを配置し得る。前に説明したように、ストレージデバイスはストレージアプライアンスである。加えて、環境は、ローカルに及び/又はリモートに1つ以上のストレージデバイスにログインし得る複数のユーザを支持するために、複数のクライアントデバイスを配置し得る。
ユーザは、概して、特権、許可、及び役割を含む構成情報を有する。多くの事例では、このユーザ構成情報は、いくつかのデバイスにわたり、所与のユーザに関して一貫性であり得る。企業環境は典型的に、ユーザディレクトリサービスを使用して、デバイス上で認可されたユーザのアイデンティティを管理する。示されるように、ストレージデバイス120は、ディレクトリサービス操作及びユーザ認証操作のために第三者アイデンティティプロバイダ150を使用する。第三者アイデンティティプロバイダ150を使用して、開発者が、ディレクトリサービス及び認証サービスも支持するよりはむしろ、ストレージデバイス120上でホストされるウェブベースアプリケーションを作成することに主眼を置くことを可能にし得る。
第三者アイデンティティプロバイダ150は、また、ウェブサービス132を使用して、少なくともクライアントデバイス110と通信する。クライアントデバイス110、ストレージデバイス120、及びアイデンティティプロバイダ150の各々は、少なくともハイパーテキスト転送プロトコル(HTTP)を利用して、通信する。いくつかの実施形態では、第三者アイデンティティプロバイダ150は、シングルサインオン(SSO)サービス134を使用する。他の実施形態では、第三者プロバイダは、集中認証プロセスを使用し得る。ユーザが認可されたHTTPセッションを有するときでさえ、ユーザ102が別個のアプリケーションの各アクセスに関する資格情報を促される集中認証プロセスとは対照的に、ユーザ102は、SSOサービス134を用いて認可されたHTTPセッションに対して一度だけ認証される。
SSOサービス134を用いて、ユーザ102は、認可されたHTTPセッションに対する最初のログインの後にアクセスされる別個のアプリケーションの数に関係なく、ユーザ名及びパスワードなどの資格情報を一度だけ提供する。SSOサービス134によって提供されるアクセストークン及びオプションのリフレッシュトークンは、それらが権利を与えられた全てのアプリケーションに関して、ユーザ102を認証し、ユーザ102が、特定の認可されたHTTPセッションの最中にアプリケーションをスイッチするときの、資格情報の更なる促しを排除する。SSOアイデンティティプロバイダのいくつかの例としては、Stormpath、OneLogin、PingOne、Keycloak、及びAuth0が挙げられる。後述するように、第三者プロバイダが集中認証プロセスを使用するときでさえ、ユーザ102は、一度だけ認証されて、認証されたHTTPセッションを通して複数のアプリケーションへのアクセスを獲得して、ユーザ名及びパスワードなどの資格情報を促されることなく、認証されたテキストベースセキュアシェルセッションへのアクセスを獲得し得る。
セキュアHTTPセッションに対してユーザ102を認証するための一連の8つの工程が、図1に示される。一連の工程は、図2に継続し、ここでは、ユーザ102が、セキュアHTTPセッションを確立して、ウェブベースアプリケーション124にアクセスする。一連の工程は、図3に継続し、ここでは、ユーザ102が、ログイン資格情報を促されることなくセキュアテキストベースシェルセッションに対して認可される。少なくともクライアントデバイス110、ストレージデバイス120、及びアイデンティティプロバイダ150を使用する環境は、ウェブベースアプリケーション及びクラウドベースアプリケーションを利用して、ストレージデバイス120上のアプリケーション124などのデータを管理し得る。いくつかの実施形態では、アプリケーション124は、ウェブベースバックアップ及びリカバリアプリケーションである。代替的に、アプリケーション124は、ボリュームを作成、修正、及び除去するウェブベースアプリケーションである。加えて、アプリケーション124は、ファイルシステムを作成、マウント、及び共有し得る。
一般的に述べると、ウェブリソースは、作成、修正、レンダリング、除去、及び読み出しなどのためにウェブベース及びクラウドベースアプリケーションによって使用される、ソフトウェア構成要素、アーティファクト、又はデータ及びメタデータである。ウェブリソースは、ファイル、ドキュメント、ストレージボリューム、及びウェブベース識別子の任意の他のターゲットを含み得る。ウェブベース識別子は、ユニフォームリソースロケータ(URL)、ユニフォームリソース識別子(URI)、国際化リソース識別子(IRI)などを含み得る。ウェブリソースは、典型的には、ウェブベースアプリケーション用のルートディレクトリのサブディレクトリなどにおける位置において収集される。いくつかの例では、サブディレクトリは、リソース/リソース識別子として示され得る。
ウェブリソース識別子は、[locale−prefix/][library−name/][library−version/]resource−name[/resource−version]などの所与のフォーマットに適合する固有文字列である。URLの使用を例に取ると、ウェブリソースURLは、アプリケーション124がウェブリソースにアクセスするために使用するアドレスである。ウェブリソースがバックアップ及びリカバリアプリケーションに接続されるバックアップサーバである場合、対応するアドレスは、http://localhost:9399/api/backupServers/79460354−e7c8−6df2−45a7−01df2bcd9b2aなどのフォーマットを使用し得る。フォーマットは、ベースURL及びウェブリソース位置を含む。
ここでは、ベースURLは、バックアップ及びリカバリアプリケーションのRESTful APIへのエントリポイントであり、これは間もなく更に説明される。この例におけるベースURLは、http://localhost:9399/api/である。「localhost」という文字列は、バックアップ及びリカバリアプリケーションがインストールされている機械の名称である。例えば、この文字列は、図1に示される例において、ストレージデバイス120を特定し得る。「9399」という文字列は、ウェブリソースにアクセスするために使用されるサーバ170上で、ウェブサービスと関連付けられるREST APIと通信するために使用されるポートである。
上記の例におけるウェブリソース位置は、/backupServers/79460354−e7c8−6df2−45a7−01df2bcd9b2aである。ウェブリソース位置は、バックアップ及びリカバリアプリケーションのRESTful APIにおいて、ウェブリソース自体へのパスを特定する。ウェブリソース位置は、ベースURLに接尾辞を付け、ウェブリソース用のURLを形成する。ウェブリソース位置は、ユニフォームリソース名(URN)を含み得る。URL及びURNの両方は、ユニフォームリソース識別子(URI)である。しかしながら、URNは、また、ユーザが、作成者名、タイムスタンプ、データサイズなどのURNにおいてウェブリソースと関連付けられた記述情報を追加すること可能にするユニフォームリソース特性(URC)と関連付けられる。更に、URNは、ウェブリソースを固有に特定するエンティティ識別子(ID)又はキーを含み得る。上記の例において、キーは79460354−e7c8−6df2−45a7−01df2bcd9b2aである。名称の例として、所与のバッチ用のジョブセットアップなどのジョブの収集にアクセスすることは、URN/jobs7によって特定され得る。完全なURLは、http://localhost:9399/api/jobs7であり得る。
上記の例におけるキー値は、バックアップ及びリカバリアプリケーションのRESTful APIワークセッションの時間の最中にのみ、関連付けられたウェブリソースを特定するために有効なままであり得る。アプリケーションのRESTful APIワークセッション、又はその例におけるアプリケーション124用のワークセッションは、ハイパーテキスト転送プロトコル(HTTP)セッションとも称され得る。HTTPプロトコルは、「Web(ウェブ)」又は「web(ウェブ)」とも称されるワールドワイドウェブ上でデータ通信のために使用される。ウェブは、インターネットを介してアクセスされる、相互リンクされたハイパーテキストドキュメント(ウェブページ)、及び上記のウェブリソースなどの他のデジタルリソースの情報システムである。
様々な実施形態では、インターネットなどのネットワークにわたってクライアントデバイス110とストレージデバイス120との間で、ウェブサービスとして知られるプロセスによって維持される機械間(クライアント−サーバ)データ通信は、一組のステートレス操作を使用してウェブリソースの操作を可能にし得る。このデータ通信において使用されるウェブアプリケーションプログラミングインターフェイス(API)は、比較的単純なより単純な表現状態の転送(REST)通信を使用し得る。RESTを使用するAPIは、RESTful APIと称される。RESTful APIは、トランザクションを細分化して、各々が完全なトランザクションの特定の根底にある機能を実行する一連のより小さなトランザクションを作成する。このモジュール性は、開発者に柔軟性を提供する。
RESTアーキテクチャスタイルは、ウェブブラウザ内でウェブAPIによって使用される。ウェブベースアプリケーション及びクラウドベースアプリケーションの使用の増加に伴い、RESTful APIなどの様々なAPIは、ウェブサービスを公開するために出現している。RESTful APIは、ハイパーテキスト転送プロトコル(HTTP)にわたって、HTTP動詞又は方法を用いて通信する。HTTP方法(動詞)は、特定されたウェブリソース上で実行されるアクションを示す。ウェブリソースは、既存のデータを表し得る。代替的に、ウェブリソースは、動的に生成されたデータを表し得る。HTTP/1.0仕様は、HTTP方法(動詞)であるGET、POST、及びHEADを定義する。HTTP/1.1仕様は、HTTP方法(動詞)であるOPTIONS、PUT、DELETE、TRACE、及びCONNECTを更に定義する。
図1に示される一連の工程に戻って、工程1におけるユーザ102は、ストレージデバイス120によってホストされる特定のウェブサイト上で、アプリケーション124などのウェブリソースにアクセスすることを試みる。アクセス要求は、クライアントデバイス110とストレージデバイス120との間のセキュアHTTPセッションの要求である。工程2では、ウェブサービス122は、ユーザ102が現在認可されていないか、ストレージデバイス120とのセキュアHTTPセッションに対する有効なログインを現在有しない。ウェブサービス122は、要求されたアプリケーション124のウェブサイトに対して、インターネット上のアドレス又はユニフォームリソースロケータ(URL)などの位置識別子を記憶する。
工程3では、ウェブサービス122は、第三者アイデンティティプロバイダ(IDP)150のシングルサインオン(SSO)サービス134(ウェブリソース)を特定するウェブブラウザ112に、応答を送信する。応答は、SSOサービス134の宛先ユニフォームリソース識別子(URI)を含むヘッダを用いてのHTTPリダイレクト応答であり得る。応答は、また、URLクエリ変数としてコード化される認証要求も含み得る。工程4では、ウェブブラウザ112は、ウェブサービス122から受信される応答に基づいて、SSOサービス134に要求を送信する。SSOサービス134は、ユーザ102が、デフォルト又は要求された認証ポリシー要件を満たす既存の有効ログインHTTPセッションを有するかどうかを判定する。要件は、ウェブサービス122によって送信される認証要求において設けられ得る。
SSOサービス134は、ユーザ102が有効なHTTPセッションをまだ有していないと判定するとき、工程5において、SSOサービス134は、資格情報をユーザ102に促す。工程6では、ウェブブラウザ112は、ユーザ102によって提供されるログイン資格情報を用いて応答を送信する。資格情報は、少なくともユーザ名及びパスワードを含み得る。クライアントデバイス110からアイデンティティプロバイダ150へのログイン要求は、ユーザ102によって提供されるパスワードの暗号化されたバージョンを含み得る。クライアントデバイス110は、セキュアソケットレイヤ(SSL)を使用して、アイデンティティプロバイダ150にログイン要求を送信し得る。
工程7では、アイデンティティプロバイダ150は、ユーザ102によって提供される少なくともユーザ名及びパスワードの組み合わせなどの受信された資格情報が、ユーザ102に関する記憶された資格情報に整合するかどうかを判定する。資格情報が整合する場合、アイデンティティプロバイダ150は、また、ユーザ102に関するシステム管理者役割又は正規のユーザ役割及び対応する特権などのユーザ102に関するユーザ役割情報を取得し得る。加えて、アイデンティティプロバイダ150は、認可アサーションを生成する。認可アサーションは、ユーザに関する成功した認可を示す1つ以上のトークン、キー、又は他の値を含み得る。アイデンティティプロバイダ150は、アクセストークン及びリフレッシュトークンの両方を生成し得る。アイデンティティプロバイダ150は、SAML、SPNEGO、及びX.509などの1つ以上のセキュリティトークンの種類を支持し得る。加えて、ストレージデバイス120は、これらのセキュリティトークンの種類を支持し得る。
工程8では、アイデンティティプロバイダ150は、ユーザ102に関する成功した認可を示す応答を準備する。アイデンティティプロバイダ150におけるSSOサービス134は、少なくとも認可アサーションを用いてユーザ102に関するログオンセキュリティコンテキストなどの応答情報を含むHTML形態を作成し得る。アイデンティティプロバイダ150は、HTML形態をHTTP応答に挿入する。HTML形態は、典型的には、宛先サイトに形態を自動的に掲示するスクリプトコードを含む。HTTP応答は、クライアントデバイス110に送信される。
上記の説明が便宜上特定の一連の工程を説明するが、様々な実施形態において、行われている工程の順序が異なり得ることに留意されたい。更に、図示しない他の工程が含まれ(include)得、いくつかの実施形態では、いくつかの工程は組み合わされ得、いくつかの工程は排除され得る。例えば、上記の説明は、サービスプロバイダ開始SSOプロセスを説明し、本プロセスでは、クライアントデバイス110は、サービスプロバイダ、又は本例ではストレージデバイス120と最初に通信する。アイデンティティプロバイダ開始SSOプロセスを有することも可能であり、本プロセスでは、クライアントデバイス110は、アイデンティティプロバイダ150と最初に通信する。かかる全ての実施形態が想到されている。
ここで図2に戻ると、第三者SSOサービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを確立することを継続する一実施形態の汎用ブロック図が示される。前に記載された回路、制御論理、通信プロトコル、及びソフトウェアは、図1と同様に付番され、示される。一連の工程9〜11が示される。クライアントデバイス110は、ユーザ102に関するセキュアHTTPセッションに対する成功した認証を示す応答を受信している。工程9では、ウェブブラウザ112は、ストレージデバイス120上で、アイデンティティプロバイダ150からウェブサービス122に情報を転送する。ウェブブラウザ112は、自動送信スクリプトにより転送を実行し得る。スクリプトは、ストレージデバイス120上で、アイデンティティプロバイダ150からウェブサービス122にHTTP形態を送信するHTTP POST要求を命令する。
工程10では、ストレージデバイス120は、クライアントデバイス110からHTTP形態を受信し、デジタル署名にアクセスし、このデジタル署名を分析する。暗号デジタル署名は、アイデンティティプロバイダ150によってHTTP形態に挿入された。暗号デジタル署名は、公開キー及び対応する私用キーなどの非対称暗号化キーを使用する。私用キーは、秘密キーとも称され得る。私用キーは、アイデンティティプロバイダ150が、それが生成する認可応答に「署名する」ように、アイデンティティプロバイダ150用のデジタル署名を作成するために使用される。公開暗号化キーは、私用キーから作成されるデジタル署名を検証するために使用される。異なる公開キーが、私用キーによって作成されるデジタル署名を認証するために使用できないように、公開キー及び私用キーは互いに密接にリンクされる。
ストレージデバイス120は、デジタル署名を検査した後、アサーションコンテンツにおける情報を対応する記憶された値と比較する。アサーションコンテンツは、ユーザ役割、電子メールアドレス、及びアイデンティティ属性の他の証明などの1つ以上のユーザプロファイル属性を含む。このアクセスチェックが終わった場合、ストレージデバイス120は、ユーザ102に対してログオンセキュリティコンテキストのローカルバージョンを生成する。いくつかの実施形態では、ログオンセキュリティコンテキストは、ローカルアクセストークン及びローカルリフレッシュトークンを含む。アクセストークンは、所定の時間期間の最中にストレージデバイス120上でホストされるアプリケーション124などのリソースの各アクセスのためにセキュアHTTPセッションを使用して、ユーザ102を認証するために使用される。リフレッシュトークンは、元々のアクセストークンの期限後に新しいアクセストークンを生成するために使用される。更に、ストレージデバイス120は、セッションクッキー、別のセッション識別子、インターネットプロトコル(IP)アドレス、及び媒体アクセス制御(MAC)アドレスのうちの1つ以上を含むクライアントデバイス識別子(ID)を生成し得る。ストレージデバイス120は、クライアントデバイス110から後の要求に関して、受信されたアクセストークン及び/又はオプションのリフレッシュトークンか有効であるかどうかを判定するために、クライアントデバイス識別子を記憶し得る。いくつかの実施形態では、ウェブサービス122は、クライアントデバイス識別子(ID)を生成及び/又は記憶する。
様々な実施形態では、アプリケーション124は、ストレージデバイス120上で上記の工程を実行する。他の実施形態では、ストレージデバイス120上の別の構成要素は、図2に示される工程10に関する上記の工程を実行する。ストレージデバイス120は、記憶された位置情報から、アプリケーション124と関連付けられた要求されたリソースURLを取得する。様々な実施形態では、ウェブサービス122は、記憶された位置情報を取得する。工程11では、ストレージデバイス120は、ウェブブラウザ112にHTTPリダイレクト応答を送信して、アプリケーション124にアクセスする。様々な実施形態では、ウェブサービス122は、HTTPリダイレクト応答を送信する。この点において、ユーザ102は、クライアントデバイス110において「ログオンされる」と考えられ、ストレージデバイス120上でセキュアHTTPセッションを有し、アプリケーション124にアクセスすることができる。
ここで図3に戻ると、第三者SSOサービスを使用してセキュアHTTPセッションを確立した後にリモートストレージデバイス上でテキストベースセキュアシェルセッションを確立する一実施形態の汎用ブロック図が示される。前に記載された回路、制御論理、通信プロトコル、及びソフトウェアは、図1と同様に付番され、示される。一連の工程が示される。クライアントデバイス110で作業するユーザ102は、ストレージデバイス120上で、認可されたセキュアHTTPセッションを通して、アプリケーション124へのアクセスを獲得している。示されるように、ストレージデバイス120は、セキュアシェルインターフェイス326及び認証管理モジュール328を含む。
セキュアシェルインターフェイス326は、セキュア(暗号化された)ネットワークプロトコル用のインターフェイスを支持するプロセスを提供するためのコードである。このセキュアネットワークプロトコルは、ストレージデバイス120上でOSのサービスにアクセスすることを可能にする。セキュアシェルインターフェイス326は、ストレージデバイス120上で、OS、アプリケーション124、及び他のソフトウェアアプリケーションのサービスに対するコマンドラインインターフェイス(CLI)を提供する。ユーザ102がストレージデバイス120上でセキュアHTTPセッションに対して認可された後、ユーザ102は、ストレージデバイス120上でテキストベースセキュアシェルセッションの要求を開始し得る。いくつかの実施形態では、ウェブベースアプリケーションユーザインターフェイス114は、ストレージデバイス120上でテキストベースセキュアシェル(SSH)セッションを要求するためのボタンを含み得る。要求を開始するための他の機構が可能であり、想到されている。テキストベースセキュアシェルセッションは、暗号化されたネットワークプロトコルを使用して、クライアントデバイス110とストレージデバイス120との間でメッセージを転送し得る。テキストベースセキュアシェルセッションの例としては、Windowsオペレーティングシステム上のPuTTY、及びUnix系オペレーティングシステム上のセキュアシェル(SSH)が挙げられる。
ユーザ102は、テキストベースSSHセッションを使用して、コマンドラインインターフェイス(CLI)上でコマンドを入力し得る。例えば、ユーザ102は、ストレージデバイス120上のバッチジョブとして、固定シーケンスにおいていくつかのタスクを反復的に実行し得る。バッチジョブが条件付きコードを使用する場合、スクリプティングが言語Java(登録商標)、Perl、Pythonなどで併用され得る。CLIコマンドは、ユーザによって対話式に入力されてもよく、ファイル内のCLIに渡されてもよい。第三者アイデンティティプロバイダ150(図示せず)が、HTTPリダイレクションによりユーザ認証のために使用されるとき、典型的には、テキストベースSSHセッションを確立することは行われない。クライアントデバイス110上のウェブブラウザ112及びストレージデバイス上のウェブサービス122とは異なり、セキュアシェルインターフェイス326は、アイデンティティプロバイダ150によって実行されるHTTPリダイレクションに対処することができない。しかしながら、間もなく説明されるように、第三者アイデンティティプロバイダ150がユーザ認証のために使用されるときでさえ、他の工程は、テキストベースSSHセッションを確立するために使用される。テキストベースセッション要求に対する認可は、HTTPセッション要求に対する初期の認可に基づいているが、ユーザに資格情報を促すことなく達成され得る。
ストレージデバイス120上の認証管理モジュール328は、所与のユーザが、名乗っているユーザであることを確立又は検証するための方法を提供する。いくつかの実施形態では、認証管理モジュールは、プラグ可能認証管理(PAM)モジュールである。認証管理モジュール328は、認証関連サービス用のモジュールのライブラリを含む、汎用APIであるライブラリを含む。認証管理モジュール328は、セキュアシェルインターフェイス326及びウェブサービス122の各々と通信して、ユーザ102に資格情報を促すことなくテキストベースセキュアシェルセッションに対する認証を提供する能力を含む修正PAMモジュールであり得る。認証管理モジュール328は、ストレージデバイス120上のユーザ102又はシステム管理者などのシステム管理者が、新しいライブラリをインストールすることによって新しい認証方法を追加することを可能にする。pam.confファイルなどの構成ファイルは、どの認証サービスを選択すべきかを判定する。典型的には、ウェブサービス122、セキュアシェルインターフェイス326、及び認証管理モジュール328は、ストレージデバイス120上のソフトウェアである。代替の実施形態では、これらの構成要素は、本明細書に記載された機能を実行するようにカスタム設計された回路機構に対応する。代替的に、構成要素は、ハードウェア及びソフトウェアの組み合わせに対応し得る。かかる全ての実施形態が可能であり、想到されている。
一連の工程に戻ると、工程12において、ユーザ102は、テキストベースセキュアシェルセッションの要求を開始する。ユーザ102は、ユーザ名及びパスワードなどの資格情報を促されない。いくつかの実施形態では、ウェブベースアプリケーションユーザインターフェイス114は、ストレージデバイス120上でテキストベースセキュアシェルセッションを要求するためのボタンを有するGUIである。要求を開始するための他の機構が可能であり、想到されている。ユーザ102がテキストベースセキュアシェル(SSH)セッションに対してクライアントデバイス110上で要求を開始するとき、その要求は、ストレージデバイス120上でセキュアシェル(SSH)プロセスに対するセキュア接続を確立するためのものであり、SSHプロセスは、ストレージデバイス120上でホストされるアプリケーション124に、セキュアかつ制限されたインターフェイスを提供する。
工程13では、要求は、ストレージデバイス120に送信される。様々な実施形態では、要求は、ユーザ名、セキュアHTTPセッションのためのアクセストークン及び/又はオプションのリフレッシュトークン、並びにクライアントデバイスIDを含む。第三者アイデンティティプロバイダ150と通信するよりはむしろ、ストレージデバイス120は、テキストベースSSHセッションの受信された要求における情報を、ストレージデバイス120上で記憶される情報と比較し得る。
上記の比較のために使用される情報は、少なくともユーザ名又は他のユーザ識別子、セキュアHTTPセッションに対して使用されるアクセストークン及び/又はオプションのリフレッシュトークン、並びにセキュアHTTPセッションに対して使用されるクライアントデバイスIDを含み得る。認証のために使用される比較は、ストレージデバイス120内で実行され得る。代替的に、ストレージデバイス120は、サーバ、別のストレージデバイス、又はストレージデバイス120に接続される他のコンピューティングデバイスに、比較操作の指標及び比較するための値を送信し得る。しかしながら、第三者アイデンティティプロバイダ150は、テキストベースSSHセッションに対する認証のために使用されず、したがって比較を実行しない。ストレージデバイス120は、テキストベースSSHセッションに対する要求に対処する最中に、第三者アイデンティティプロバイダ150と通信しない。いくつかの実施形態では、ストレージデバイス120上のアプリケーション124は、テキストベースセキュアシェル(SSH)セッションに対する要求を受信して、工程14において、認証モジュール328に要求を転送する。転送は、SSHインターフェイス326を通して行われ得る。
示される例では、工程15において、認証管理モジュール328は、検証要求をウェブサービス122に送信する。検証要求は、少なくともユーザ名、セキュアHTTPセッションに対して使用されるアクセストークン及び/又はオプションのリフレッシュトークン、並びにセキュアHTTPセッションに対して使用されるクライアントデバイスIDを含み得、それらの各々は、クライアントデバイス110からの要求において送信された。検証要求はパスワードを含まず、ユーザ102は、テキストベースセキュアシェルセッションに対する要求を開始するとき、又はテキストベースセキュアシェルセッションを確立する工程の最中に、資格情報を促されなかった。
工程16では、ウェブサービス122及び認証モジュール328は、要求されたテキストベースSSHセッションに対してユーザ102を認証するために、図示されていないアイデンティティ及びアクセスマネージャ(IAM)を使用する。前の工程10に類似して、ストレージデバイス120は、受信されたユーザ名、クライアントデバイスID、並びにアクセストークン及び/又はオプションのリフレッシュトークンなどの複数の情報を使用して、アクセスチェックを実行する。前に説明したような他の情報は、また、アクセスチェックの最中に使用され得る。アクセスチェックは、少なくとも以前の比較操作を含み得る。HTTPリダイレクションは、認可を実行するために使用されない。テキストベースセキュアシェルセッションに対する工程13における要求が、以前に確立されたセキュアHTTPセッションなどの認証されたセッションに対する記憶された情報を既に含むので、ストレージデバイス120は、HTTPリダイレクションを見合わせ得る。
いくつかの実施形態では、ストレージデバイス120が、受信された情報に基づいてユーザ102に対する成功した認可を判定するとき、ストレージデバイス120は、テキストベースセキュアシェル(SSH)セッションに対する、対応するアクセストークン及びオプションのリフレッシュトークンを生成する。いくつかの実施形態では、これらのトークン値は、セキュアHTTPセッションに対して使用されるアクセストークン及びリフレッシュトークンと異なる場合がある。工程17では、ウェブサービス122は、認証管理モジュール328に、成功した認可及び任意の新しいアクセストークンの通知を送信する。代替的に、IAMは、成功した認可の通知を認証モジュール328に送信する。工程18及び19では、成功した認可、任意の新しいアクセストークン、リフレッシュトークン、及び任意の他の新しいセッション識別子の通知が、クライアントデバイス110に送信される。
工程20では、ユーザ102は、ユーザ102がユーザ名及びパスワードなどの資格情報を促されなかったが、認可されたユーザとしてテキストベースセキュアシェル(SSH)セッションを取得する。ユーザ102は、CLIへのアクセスを有し得、かつコマンドを入力し、バッチジョブを送信し得る。
トークン管理セキュリティ戦略の生成及び維持は、複雑である。開発者は、トークン認証を支持及び維持するためのコードを書き込むことにかなりの時間を消費することよりもむしろ、ウェブベースアプリケーションを作成し、アプリケーションをオンラインにし、迅速に実行させることに時間を費やすことを好む。更に、多くの種類のタスク及び対応するウェブベースアプリケーションに対して、システム管理者は、テキストベースセキュアシェル(SSH)セッションを使用することを好む。上に示されるように、ユーザ102は、資格情報を促されることなくテキストベースセキュアシェル(SSH)セッションを取得することができる一方で、ストレージデバイス120は、第三者アイデンティティプロバイダ150を使用する。
ここで図4に戻ると、第三者SSOサービスを使用してウェブリソースをホストするリモートストレージデバイス上でセキュアHTTPセッションを効率的に確立するための方法400の一実施形態が示される。考察のために、この実施形態における工程は、連続的な順序で示されている。しかしながら、一部の工程は、示されている順序とは異なる順序で行われ得、一部の工程は、同時に実行され得、一部の工程は、別の実施形態では存在しない場合がある。
ブロック402では、クライアントデバイスで作業する所与のユーザは、サービスデバイスとも称され得るリモートストレージデバイス上でウェブベースアプリケーションにアクセスすることを試みる。いくつかの実施形態では、ストレージデバイスは、ストレージアプライアンスである。他の実施形態では、ストレージデバイスは、バックアップサーバである。ストレージデバイスのためのHTTPセッション(HTTP)セッションは、所与のユーザのために要求される。所与のユーザは、所与のユーザ用の少なくともユーザ名及びパスワードなどの資格情報を促される。ブロック404では、HTTPセッションに対する要求は、ウェブベースアプリケーションをホストするストレージデバイスに送信される。
ブロック406では、所与のユーザの認証のための別の位置が特定される。例えば、第三者アイデンティティプロバイダは特定され得、対応するURLは、その位置を判定するために使用され得る。ブロック408では、資格情報を用いる要求は、ストレージデバイスからアイデンティティプロバイダまでリダイレクトされる。様々な実施形態では、リダイレクションはHTTPリダイレクションである。
いくつかの実施形態では、最終的なアイデンティティプロバイダが所与のユーザに対する認証を実行すると分かる前に使用される2つ以上のリダイレクションがある。別のリダイレクション(条件付きブロック410)がある場合、方法400の制御フローは、ブロック408に戻る。資格情報が、所与のユーザがHTTPセッション(条件付きブロック412)を通してウェブベースアプリケーションにアクセスすることを可能にする所与のユーザに対して有効であると判定される場合、ブロック414において、所与のユーザに関するユーザ役割、許可、及び他の情報が取得される。その情報は、アイデンティティプロバイダ内でディレクトリサービスから取得され得る。
ブロック416では、取得した情報と共にHTTPセッションを確立する成功した通知は、クライアントデバイスに戻される。更に、認可アサーションは、通知を用いて生成され、戻され得る。認可アサーションは、ユーザに関する成功した認可を示す1つ以上のトークン、キー、又は他の値を含み得る。資格情報が所与のユーザ(条件付きブロック412)に対して無効であると判定される場合、ブロック418において、認証が失敗したという通知は、生成され、クライアントデバイスに送信される。
ここで図5に戻ると、第三者SSOサービスを使用してセキュアHTTPセッションを確立した後にリモートストレージデバイス上でテキストベースセキュアシェルセッションを確立するための方法500の一実施形態が示される。考察のために、この実施形態における工程は、連続的な順序で示されている。しかしながら、一部の工程は、示されている順序とは異なる順序で行われ得、一部の工程は同時に実行され得、一部の工程は別の実施形態では存在しない場合がある。
ブロック502では、資格情報の認証に関する通知は、クライアントデバイスにおいて受信される。所与のユーザは、ストレージアプライアンス又はストレージバックアップサーバとも称され得るストレージデバイスなどのサービスデバイスに、HTTPセッションを獲得するための資格情報を送信した可能性がある。サービスデバイスは、サービスプロバイダとも称され得る。サービスデバイスは、クライアントデバイスに関してリモートに位置付けられ得る。サービスデバイスは、クライアントデバイスで作業をする所与のユーザによる使用のために、1つ以上のウェブベース又はクラウドベースアプリケーションをホストし得る。第三者アイデンティティプロバイダを使用して、所与のユーザを認可し得る。アイデンティティプロバイダは、所与のユーザの資格情報の認証に関する通知を送信した可能性がある。
第三者アイデンティティプロバイダにおける所与のユーザの認証が成功しなかった(条件付きブロック504)場合、ブロック506では、所与のユーザのためのログインは拒否され、他の資格情報が要求され得る。他の資格情報の拒否及び要求は、クライアントデバイスのモニタ上で提示さ得る。第三者アイデンティティプロバイダにおける所与のユーザの認証が成功した(条件付きブロック504)場合、ブロック508において、成功した認証の通知は、HTTPセッションが要求されるサービスデバイスに送信される。第三者アイデンティティプロバイダからの認可アサーションも送信される。
サービスデバイスは、クライアントデバイスで作業をする所与のユーザによる使用のために、1つ以上のウェブベース又はクラウドベースアプリケーションをホストし得る。前に説明したように、第三者アイデンティティプロバイダにおける成功した認証の通知は、少なくとも、第三者アイデンティティプロバイダからのデジタル署名、並びに所与のユーザに関するユーザ役割、電子メールアドレス、及びアイデンティティ属性の他の証明を含む、1つ以上のユーザプロファイル属性を含む認可アサーションコンテンツ、並びに、アクセストークン及びオプションのリフレッシュトークン、又は他のキー値を含み得る。サービスデバイスは、この情報に対してアクセスチェックを実行して、受信されたコンテンツのソースを検証し、サービスデバイス上でホストされる1つ以上のウェブベース又はクラウドベースアプリケーションへのアクセスを要求する所与のユーザを検証する。
アクセスチェックを成功して完了するのと同時に、ブロック512において、サービスデバイスは、所与のユーザに関するログオンセキュリティコンテキストのローカルバージョン、並びに所与のユーザに関するローカルアクセストークン及びセッション識別子のうちの1つ以上を生成する。更に、サービスデバイスは、セッションクッキー、セッション識別子、インターネットプロトコル(IP)アドレス、及び媒体アクセス制御(MAC)アドレスのうちの1つ以上を含むクライアントデバイス識別子(ID)を生成し得る。サービスデバイスは、アクセストークン及び/又はリフレッシュトークン、並びにクライアントデバイス識別子を記憶し得る。記憶された情報を使用して、サービスデバイス上でホストされるウェブリソースに関してクライアントデバイスからのその後のアクセス要求を検査し得る。加えて、記憶された情報は、テキストベースセキュアシェルセッションを確立するためのその後の要求のために使用され得る。サービスデバイスは、クライアントデバイスに情報を送信する。この点において、所与のユーザは、ローカルクライアントデバイスにおいて、リモートサービスデバイスに「ログオンされる」と考えられる。ユーザは、リモートサービスデバイス上で確立されたセキュアHTTPセッションを有し、所与のユーザが認可された許可を有するサービスデバイス上でホストされる1つ以上のウェブベース及びクラウドベースアプリケーションにアクセスすることができる。
ブロック514では、テキストベースセキュアシェルセッションは、サービスデバイス及びクライアントデバイスIDからアクセストークンを使用して要求される。いくつかの実施形態では、所与のユーザは、テキストベースセキュアシェルセッションに対する要求を開始するために、ウェブベースアプリケーションユーザインターフェイス上でボタンを選択する。要求を開始するための他の機構が可能であり、想到されている。所与のユーザがテキストベースセキュアシェル(SSH)セッションに対してクライアントデバイス上で要求を開始するとき、その要求は、サービスデバイス上でセキュアシェル(SSH)プロセスに対するセキュア接続を確立するためのものであり、SSHプロセスは、サービスデバイス上でホストされるウェブベースアプリケーションに、セキュアかつ制限されたインターフェイスを提供する。所与のユーザは、要求の最中にユーザ名及びパスワードなどの資格情報を促されない場合がある。テキストベースセキュアシェルセッションの例としては、Windowsオペレーティングシステム上のPuTTY、及びUnix系オペレーティングシステム上のSSHが挙げられる。
クライアントデバイス及びサービスデバイス上で動作するウェブブラウザ及びウェブサービスと異なり、テキストベースセキュアシェルインターフェイスは、第三者アイデンティティプロバイダによって実行されるHTTPリダイレクションに対処することができない。したがって、ブロック516では、サービスデバイスが、要求をアイデンティティプロバイダに送信するよりはむしろ、テキストベースセキュアシェルセッションを確立するために、要求を受信するとき、サービスデバイスは、所与のユーザのためにHTTPセッションを確立するために実行される初期の認可に基づいて、所与のユーザの認可に対処する。例えば、様々な実施形態では、サービスデバイス上のプラグ可能認証モジュール(PAM)及びウェブサービスは、テキストベースセキュアシェルセッションを確立するための所与のユーザの認可に対処する。アイデンティティ及びアクセスマネージャ(IAM)も使用され得る。
HTTPセッションに対する前の検証に類似して、ウェブサービス又は他の制御論理(若しくは回路機構)は、テキストベースセキュアシェルセッションを確立するための要求を受信することに応答して、アクセスチェックを実行する。アクセスチェックは、所与のユーザ及び認可されたHTTPセッションに対応する複数の情報を使用する。それらの情報は、少なくとも所与のユーザに関するユーザ名、セキュアHTTPセッションに対して使用されるアクセストークン及びオプションのリフレッシュトークン、並びにセキュアHTTPセッションに対して使用されるクライアントデバイスIDを含み得る。前に説明したような他の情報は、また、アクセスチェックの最中に使用され得る。HTTPリダイレクションは、テキストベースセキュアシェルセッションに対する認可を実行するために使用されない。
いくつかの実施形態では、サービスデバイスが、上記の情報に基づいて所与のユーザに対する成功した認可を判定するとき、サービスデバイスは、テキストベースセキュアシェルセッションに対する、対応するアクセストークンを生成する。様々な実施形態では、サービスデバイスは、受信されたアクセストークン及び/又はリフレッシュトークンを使用して、テキストベースセキュアシェルセッションに対するアクセストークンを生成する。他の実施形態では、テキストベースセキュアシェルセッションに対するアクセストークン又は別のセッション識別子は、多くの他の可能な仕方で生成され得る。サービスデバイスは、成功した認可及び任意の新しいアクセストークン又はセッション識別子の通知をクライアントデバイスに送信する。この点において、所与のユーザは、クライアントデバイスにおいて「ログオンされる」と考えられ、サービスデバイス上でテキストベースセキュアシェルセッションを有する。
ブロック518では、所与のユーザは、テキストベースセキュアシェルセッションのコマンドラインインターフェイス(CLI)を通してサービスデバイス上でホストされる1つ以上の認可されたウェブベース及びクラウドベースアプリケーションにアクセスすることができる。これらのアクセスは、テキストベースセキュアシェルセッションに対して以前に生成されたアクセストークンを使用する。所与のユーザが資格情報を促されなかったが、所与のユーザは、次いで、認可されたユーザとして、GUIベースアプリケーションインターフェイスとは別個のウィンドウ内で(例えば、一実施形態では、ブラウザ内で)、テキストベースセキュアシェルセッションを開放し得る。所与のユーザは、コマンドを入力し得るか、バッチジョブを送信するなど効率的な自動操作シーケンスを実行し得る。
様々な実施形態では、本明細書に記載されている方法及び機構の1つ以上の部分が、クラウドコンピューティング環境の一部を形成し得る。かかる実施形態では、リソースは、1つ以上の様々なモデルによるサービスとして、インターネットを介して提供され得る。かかるモデルとしては、Infrastructure as a Service(IaaS)、Platform as a Service(Paas)、及びSoftware as a Service(SaaS)が挙げられ得る。IaaSでは、コンピュータインフラストラクチャがサービスとして提供される。かかる事例では、コンピューティング機器は概してサービスプロバイダが所有し、操作する。PaaSモデルでは、開発者がソフトウェアソリューションを開発するために使用するソフトウェアツール及び基礎となる機器が、サービスとして提供され、サービスプロバイダによってホストされ得る。SaaSは典型的に、オンデマンドのサービスとしての、サービスプロバイダがライセンス発行するソフトウェアを含む。サービスプロバイダは、ソフトウェアをホストする場合も、ソフトウェアを所与の期間、顧客に配置する場合もある。上記のモデルの多様な組み合わせが可能であり、想到されている。
上記の実施形態についてかなり詳細に説明してきたが、上記の開示内容を十分理解すれば、多数の変形及び修正が当業者には明らかになるであろう。以下の特許請求の範囲は、かかる全ての変形及び修正を抱持するように解釈されることが意図されている。

Claims (20)

  1. 認証システムであって、
    一連の1つ以上のハイパーテキスト転送プロトコル(HTTP)リダイレクションを通して複数のユーザを認証するように構成されている第三者アイデンティティプロバイダ(IDP)と、
    アプリケーションをホストするストレージデバイスと、
    クライアントデバイスであって、
    前記アプリケーションにアクセスするために、前記ストレージデバイスと、セキュアHTTPセッション及びセキュアシェル(SSH)セッションの両方を確立するための要求を送信することと、
    SSHセッションを確立する所与の要求を送信することであって、前記要求が、前記第三者IDPを使用して以前に確立されたセキュアHTTPセッションに対応する少なくとも第1のアクセストークンを含む、送信することと、を行うように構成されているクライアントデバイスと、を備え、
    前記所与の要求を受信することに応答して、前記ストレージデバイスは、前記第1のアクセストークンが前記以前に確立されたセキュアHTTPセッションに対応することを検証することに更に応答して、前記所与の要求がパスワードを欠くが、前記クライアントデバイスに前記SSHセッションを確立することを認可する、認証システム。
  2. 前記ストレージデバイスが、セキュアHTTPセッションを通して前記アプリケーションにアクセスすることを要求する前記クライアントデバイス上で、前記複数のユーザのうちの所与のユーザに対する成功した認証の指標を前記第三者IDPから受信することに応答して、前記クライアントデバイスに、少なくとも前記第1のアクセストークン及びクライアントデバイス識別子(ID)を送信するように更に構成されている、請求項1に記載の認証システム。
  3. 前記ストレージデバイスが、前記第1のアクセストークン及び前記クライアントデバイスIDの各々を記憶して、前記セキュアHTTPセッションを介して前記クライアントデバイスからの前記アプリケーションのその後のアクセスを検証するために使用するように更に構成されている、請求項2に記載の認証システム。
  4. 前記クライアントデバイスIDが、セッションクッキー、インターネットプロトコル(IP)アドレス、及び媒体アクセス制御(MAC)アドレスのうちの1つ以上を含む、請求項3に記載の認証システム。
  5. 前記SSHセッションを確立する前記クライアントデバイスからの前記所与の要求が、前記クライアントデバイスIDを更に含む、請求項2に記載の認証システム。
  6. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記ストレージデバイスは、前記要求における少なくとも前記第1のアクセストークン及び前記クライアントデバイスIDが、前記記憶された第1のアクセストークン及び前記記憶されたクライアントデバイスIDに整合するかどうかを判定するように更に構成されている、請求項3に記載の認証システム。
  7. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記ストレージデバイスが、いかなるHTTPリダイレクションも見合わせるように更に構成されている、請求項3に記載の認証システム。
  8. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記ストレージデバイスが、前記第三者IDPの使用を見合わせるように更に構成されている、請求項3に記載の認証システム。
  9. プロセッサで実行するための方法であって、
    第三者アイデンティティプロバイダ(IDP)を用いて、一連の1つ以上のハイパーテキスト転送プロトコル(HTTP)リダイレクションを通して複数のユーザを認証することと、
    ストレージデバイス上でアプリケーションをホストすることと、
    前記アプリケーションにアクセスするために、前記ストレージデバイスと、セキュアHTTPセッション及びセキュアシェル(SSH)セッションの両方を確立するために、要求をクライアントデバイスから送信することと、
    SSHセッションを確立するために、所与の要求を前記クライアントデバイスから前記ストレージデバイスに送信することであって、前記所与の要求が、前記第三者IDPを使用して以前に確立されたセキュアHTTPセッションに対応する少なくとも第1のアクセストークンを含む、送信することと、
    前記第1のアクセストークンが前記以前に確立されたセキュアHTTPセッションに対応することを検証することに応答して、前記所与の要求がパスワードを欠くが、前記クライアントデバイスに前記SSHセッションを確立することを認可することと、を含む、方法。
  10. セキュアHTTPセッションを通して前記アプリケーションにアクセスすることを要求する前記クライアントデバイス上で、前記複数のユーザのうちの所与のユーザに対する成功した認証の指標を前記第三者IDPから受信することに応答して、前記クライアントデバイスに、少なくとも前記第1のアクセストークン及びクライアントデバイス識別子(ID)を送信することを更に含む、請求項9に記載の方法。
  11. 前記第1のアクセストークン及び前記クライアントデバイスIDの各々を前記ストレージデバイス内に記憶して、前記セキュアHTTPセッションを介して前記クライアントデバイスからの前記アプリケーションのその後のアクセスを検証するために使用することを更に含む、請求項10に記載の方法。
  12. 前記クライアントデバイスIDが、セッションクッキー、インターネットプロトコル(IP)アドレス、及び媒体アクセス制御(MAC)アドレスのうちの1つ以上を含む、請求項11に記載の方法。
  13. 前記SSHセッションを確立するための前記クライアントデバイスからの前記所与の要求が、前記クライアントデバイスIDを更に含む、請求項10に記載の方法。
  14. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記方法は、前記要求における少なくとも前記第1のアクセストークン及び前記クライアントデバイスIDが、前記記憶された第1のアクセストークン及び前記記憶されたクライアントデバイスIDに整合するかどうかを判定することを更に含む、請求項11に記載の方法。
  15. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記方法が、いかなるHTTPリダイレクションも見合わせることを更に含む、請求項11に記載の方法。
  16. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記方法が、前記第三者IDPの使用を見合わせることを更に含む、請求項11に記載の方法。
  17. ストレージデバイスであって、
    プロセッサと、
    メモリであって、
    アプリケーションを記憶することと、
    プログラム命令を記憶することであって、
    一連の1つ以上のハイパーテキスト転送プロトコル(HTTP)リダイレクションを通して、複数のユーザを認証するように構成されている、第三者アイデンティティプロバイダ(IDP)に要求を送信すること、
    セキュアシェル(SSH)セッションを確立するために、所与の要求をクライアントデバイスから受信することであって、前記所与の要求が、前記第三者IDPを使用して前記クライアントデバイスのために以前に確立されたセキュアHTTPセッションに対応する少なくとも第1のアクセストークンを含む、受信すること、及び
    前記第1のアクセストークンが前記以前に確立されたセキュアHTTPセッションに対応することを検証することに更に応答して、前記所与の要求がパスワードを欠くが、前記クライアントデバイスに前記SSHセッションを確立することを認可すること、を行うように、前記プロセッサによって実行可能なプログラム命令を記憶することと、を行うように構成されているメモリと、を備える、ストレージデバイス。
  18. 前記プログラム命令が、セキュアHTTPセッションを通して前記アプリケーションにアクセスすることを要求する前記クライアントデバイス上で、前記複数のユーザのうちの所与のユーザに対する成功した認証の指標を前記第三者IDPから受信することに応答して、前記クライアントデバイスに、少なくとも前記第1のアクセストークン及びクライアントデバイス識別子(ID)を送信するように前記プロセッサによって更に実行可能である、請求項17に記載のストレージデバイス。
  19. 前記SSHセッションを確立するための前記クライアントデバイスからの前記所与の要求が、前記クライアントデバイスIDを更に含む、請求項18に記載のストレージデバイス。
  20. 前記クライアントデバイスに前記SSHセッションを確立することを認可するために、前記プログラム命令は、前記要求における少なくとも前記第1のアクセストークン及び前記クライアントデバイスIDが、前記第1のアクセストークン及び前記記憶されたクライアントデバイスIDの記憶された値に整合するかどうかを判定するように更に実行可能である、請求項18に記載のストレージデバイス。
JP2018516410A 2015-10-02 2016-10-01 アプライアンスセキュアシェルのためのシングルサインオン方法 Active JP6556943B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/874,173 2015-10-02
US14/874,173 US9923888B2 (en) 2015-10-02 2015-10-02 Single sign-on method for appliance secure shell
PCT/US2016/055084 WO2017059400A1 (en) 2015-10-02 2016-10-01 Single sign-on method for appliance secure shell

Publications (2)

Publication Number Publication Date
JP2018538592A JP2018538592A (ja) 2018-12-27
JP6556943B2 true JP6556943B2 (ja) 2019-08-07

Family

ID=57145044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018516410A Active JP6556943B2 (ja) 2015-10-02 2016-10-01 アプライアンスセキュアシェルのためのシングルサインオン方法

Country Status (5)

Country Link
US (1) US9923888B2 (ja)
EP (1) EP3356981B1 (ja)
JP (1) JP6556943B2 (ja)
CN (1) CN108475312B (ja)
WO (1) WO2017059400A1 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11057395B2 (en) * 2014-03-24 2021-07-06 Micro Focus Llc Monitoring for authentication information
US11171941B2 (en) * 2015-02-24 2021-11-09 Nelson A. Cicchitto Mobile device enabled desktop tethered and tetherless authentication
US11122034B2 (en) 2015-02-24 2021-09-14 Nelson A. Cicchitto Method and apparatus for an identity assurance score with ties to an ID-less and password-less authentication system
US10335688B2 (en) * 2016-06-03 2019-07-02 Microsoft Technology Licensing, Llc Administrative control features for hosted sessions
US10462124B2 (en) 2016-12-30 2019-10-29 Google Llc Authenticated session management across multiple electronic devices using a virtual session manager
US10541992B2 (en) * 2016-12-30 2020-01-21 Google Llc Two-token based authenticated session management
US10529327B1 (en) * 2017-03-29 2020-01-07 Parallels International Gmbh System and method for enabling voice recognition for operating system
US10972453B1 (en) * 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US10735514B2 (en) * 2017-08-29 2020-08-04 Western Digital Technologies, Inc. Remote application configuration on network-attached storage
GB201717251D0 (en) * 2017-10-20 2017-12-06 Palantir Technologies Inc Serving assets in a networked environment
US11075906B2 (en) * 2017-12-28 2021-07-27 Shoppertrak Rct Corporation Method and system for securing communications between a lead device and a secondary device
CN112075061A (zh) * 2018-04-26 2020-12-11 谷歌有限责任公司 基于自动填充的网站认证
US10855669B2 (en) * 2018-05-03 2020-12-01 Vmware, Inc. Authentication service
US10855670B2 (en) 2018-05-03 2020-12-01 Vmware, Inc. Polling service
US11146543B2 (en) * 2018-07-12 2021-10-12 Vmware, Inc. Contact consolidation across multiple services
TWI725352B (zh) * 2018-11-05 2021-04-21 緯創資通股份有限公司 驗證及授權的方法及驗證伺服器
CN109639649B (zh) * 2018-11-20 2021-08-10 福建亿榕信息技术有限公司 一种单点登录方法
CN109818968B (zh) * 2019-02-28 2021-07-30 浪潮云信息技术股份公司 一种在已有web应用基础上实现单点登录的方法
CN110069909B (zh) * 2019-04-29 2020-10-13 上海上湖信息技术有限公司 一种免密登录第三方系统的方法及装置
CA3138221A1 (en) 2019-05-23 2020-11-26 Citrix Systems, Inc. Secure web application delivery platform
US11210687B2 (en) * 2019-05-23 2021-12-28 Capital One Services, Llc Intelligent preprocessing routing to decisioning services
US12273459B2 (en) * 2019-06-10 2025-04-08 Docusign, Inc. System and method for electronic claim verification
US11032381B2 (en) * 2019-06-19 2021-06-08 Servicenow, Inc. Discovery and storage of resource tags
US11271947B2 (en) * 2019-07-24 2022-03-08 The Toronto-Dominion Bank Systems and methods for authenticating data access requests
EP4022869A4 (en) * 2019-08-26 2023-09-20 Traitware, Inc. AUTHENTICATION SYSTEM FOR COMPUTER ACCESSING A REMOTE SERVER
US20210092107A1 (en) * 2019-09-23 2021-03-25 Fisher-Rosemount Systems, Inc. Secure off-premises access of process control data by a mobile device
US11546321B2 (en) * 2019-09-24 2023-01-03 Magic Labs, Inc. Non-custodial tool for building decentralized computer applications
CN111405006B (zh) * 2020-03-06 2022-07-12 北京奇艺世纪科技有限公司 一种远程登录失败的处理方法、装置及远程登录系统
US11121863B1 (en) * 2020-03-12 2021-09-14 Oracle International Corporation Browser login sessions via non-extractable asymmetric keys
US12462230B2 (en) * 2020-03-23 2025-11-04 Apple Inc. Technique for providing optimized digital information
WO2021232347A1 (en) * 2020-05-21 2021-11-25 Citrix Systems, Inc. Cross device single sign-on
US20210409403A1 (en) * 2020-06-25 2021-12-30 Microsoft Technology Licensing, Llc Service to service ssh with authentication and ssh session reauthentication
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
CN112685726A (zh) * 2021-01-20 2021-04-20 浪潮云信息技术股份公司 一种基于keycloak的单点认证方法
US12238101B2 (en) * 2021-03-09 2025-02-25 Oracle International Corporation Customizing authentication and handling pre and post authentication in identity cloud service
US11805127B1 (en) * 2021-04-16 2023-10-31 Citicorp Credit Services, Inc. (Usa) Processing tokens in identity assertions for access control to resources
US12284169B2 (en) * 2021-07-13 2025-04-22 Omnissa, Llc Accessing corporate resources through an enrolled user device
IT202100019634A1 (it) * 2021-07-23 2023-01-23 Cleafy Spa Metodo per confermare l’identità di un utente in una sessione di navigazione di un servizio online
US12278807B2 (en) * 2021-09-30 2025-04-15 Fortinet, Inc. Proxy SSH public key authentication in cloud environment
EP4420300B1 (en) 2021-10-18 2025-05-07 Sophos Limited Network appliances for secure enterprise resources
US11558251B1 (en) * 2021-12-23 2023-01-17 Rakuten Mobile, Inc. Method, apparatus, and computer readable medium
US12513133B2 (en) 2022-07-01 2025-12-30 Target Brands, Inc. Systems and methods for using enterprise IDP functionality to authorize user access across servers
US12476956B2 (en) 2024-02-05 2025-11-18 Target Brands, Inc. Authorizing and initiating secure tunneling and user-access to servers based on user group authorization information in secure communication certificates

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6668322B1 (en) * 1999-08-05 2003-12-23 Sun Microsystems, Inc. Access management system and method employing secure credentials
CA2399401A1 (en) 2000-02-11 2001-08-16 Acta Technology, Inc. High availability database system using live/load database copies
US20050240763A9 (en) * 2001-08-06 2005-10-27 Shivaram Bhat Web based applications single sign on system and method
JP2003296277A (ja) * 2002-03-29 2003-10-17 Fuji Xerox Co Ltd ネットワーク装置、認証サーバ、ネットワークシステム、認証方法
US20040002878A1 (en) * 2002-06-28 2004-01-01 International Business Machines Corporation Method and system for user-determined authentication in a federated environment
JP2004246821A (ja) * 2003-02-17 2004-09-02 Ufj Card Co Ltd 情報システム
JP2006139747A (ja) * 2004-08-30 2006-06-01 Kddi Corp 通信システムおよび安全性保証装置
US20060294366A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corp. Method and system for establishing a secure connection based on an attribute certificate having user credentials
FI20055357L (fi) 2005-06-29 2006-12-30 Ascia Oy Datakompressiojärjestely
WO2007059628A1 (en) 2005-11-24 2007-05-31 Oz Communications Inc. Method for securely associating data with http and https sessions
JP5317629B2 (ja) * 2008-11-05 2013-10-16 ヤフー株式会社 情報管理装置、情報処理システム、情報管理方法及び情報管理プログラム
US9560036B2 (en) * 2010-07-08 2017-01-31 International Business Machines Corporation Cross-protocol federated single sign-on (F-SSO) for cloud enablement
US9906838B2 (en) * 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US8474017B2 (en) * 2010-07-23 2013-06-25 Verizon Patent And Licensing Inc. Identity management and single sign-on in a heterogeneous composite service scenario
US9130935B2 (en) * 2011-05-05 2015-09-08 Good Technology Corporation System and method for providing access credentials
US8769622B2 (en) * 2011-06-30 2014-07-01 International Business Machines Corporation Authentication and authorization methods for cloud computing security
US9197623B2 (en) * 2011-09-29 2015-11-24 Oracle International Corporation Multiple resource servers interacting with single OAuth server
US9191394B2 (en) * 2012-02-08 2015-11-17 Microsoft Technology Licensing, Llc Protecting user credentials from a computing device
US8769701B2 (en) * 2012-09-05 2014-07-01 International Business Machines Corporation Single tenant audit view in a multi-tenant environment
US8615794B1 (en) * 2013-01-09 2013-12-24 Ping Identity Corporation Methods and apparatus for increased security in issuing tokens
CN103179134A (zh) * 2013-04-19 2013-06-26 中国建设银行股份有限公司 基于Cookie的单点登录方法、系统及其应用服务器
US9264436B2 (en) * 2013-05-08 2016-02-16 International Business Machines Corporation Policy-based automated consent
FR3007167A1 (fr) * 2013-06-14 2014-12-19 France Telecom Procede d'authentification d'un terminal par une passerelle d'un reseau interne protege par une entite de securisation des acces
US9491161B2 (en) * 2014-09-30 2016-11-08 Citrix Systems, Inc. Systems and methods for performing single sign-on by an intermediary device for a remote desktop session of a client

Also Published As

Publication number Publication date
US20170099280A1 (en) 2017-04-06
CN108475312B (zh) 2022-12-20
WO2017059400A1 (en) 2017-04-06
JP2018538592A (ja) 2018-12-27
US9923888B2 (en) 2018-03-20
CN108475312A (zh) 2018-08-31
EP3356981A1 (en) 2018-08-08
EP3356981B1 (en) 2021-07-28

Similar Documents

Publication Publication Date Title
JP6556943B2 (ja) アプライアンスセキュアシェルのためのシングルサインオン方法
CN107925877B (zh) 用于集中式配置和认证的系统和方法
US9401909B2 (en) System for and method of providing single sign-on (SSO) capability in an application publishing environment
US20190199707A1 (en) Using a service-provider password to simulate f-sso functionality
EP2984589B1 (en) System and method for mobile single sign-on integration
US9124569B2 (en) User authentication in a cloud environment
JP5998284B2 (ja) エンタプライズシステムへのアプリケーションの動的登録
JP6096200B2 (ja) モバイルアプリケーション、シングルサインオン管理
EP3915026B1 (en) Browser login sessions via non-extractable asymmetric keys
US10757104B1 (en) System and method for authentication in a computing system
CN107172054A (zh) 一种基于cas的权限认证方法、装置及系统
CN107690792A (zh) 未经管理的移动设备的单点登录
US20180091490A1 (en) Authentication framework for a client of a remote database
US11734408B2 (en) Remapping of uniform resource locators for accessing network applications
US8856907B1 (en) System for and methods of providing single sign-on (SSO) capability in an application publishing and/or document sharing environment
EP3069467A1 (en) Parallel on-premises and cloud-based authentication
CN115982778B (zh) Obs文件访问方法、系统、装置、电子设备及存储介质
CN103118025B (zh) 基于入网认证的单点登录方法、装置及认证服务器
CN107105046B (zh) 远程访问大数据的方法及系统
CN115834252B (zh) 一种服务访问方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180413

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180424

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190529

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190710

R150 Certificate of patent or registration of utility model

Ref document number: 6556943

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250