JP6914436B2 - 認証のためのシステムおよび方法 - Google Patents

認証のためのシステムおよび方法 Download PDF

Info

Publication number
JP6914436B2
JP6914436B2 JP2020518457A JP2020518457A JP6914436B2 JP 6914436 B2 JP6914436 B2 JP 6914436B2 JP 2020518457 A JP2020518457 A JP 2020518457A JP 2020518457 A JP2020518457 A JP 2020518457A JP 6914436 B2 JP6914436 B2 JP 6914436B2
Authority
JP
Japan
Prior art keywords
application
user
server
parameter
content item
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
JP2020518457A
Other languages
English (en)
Other versions
JP2021503637A (ja
Inventor
ジョン・デュッケリス
ツナ・トクソズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2021503637A publication Critical patent/JP2021503637A/ja
Application granted granted Critical
Publication of JP6914436B2 publication Critical patent/JP6914436B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Description

本発明は、認証のためのシステムおよび方法に関する。
アプリケーションは、アプリケーションサーバを介して、またはユーザがアプリケーションを検索、ダウンロードおよびインストールすることを可能にするアプリケーションストアを介して、コンピューティングデバイスにインストールされ得る。アプリケーションパブリッシャは、例えば、アプリケーションをカスタマイズするために、または特定のユーザ(もしくはユーザのグループ)にカスタムコンテンツを提供するために、ユーザを認証することを望み得る。ユーザを認証する1つの手法は、アプリケーションへのリンクを提供することであり、同リンクは、リンクがたどられるときにアプリケーションストアに渡されるカスタマイズされたパラメータを含む。例えば、システム管理者に提供されるリンクは、ユーザに提供されるリンクと異なるカスタムパラメータを含んでもよく、それによってアプリケーションが管理者およびユーザにとって異なってカスタマイズされることを可能にし、またはアプリケーション内で管理者およびユーザに異なるコンテンツが提供され得る。しかしながら、多くのアプリケーションストアまたはアプリケーションサーバは、カスタマイズされたパラメータ、例えばアプリケーションにリンクするコンテンツを介して提供されるパラメータなどを、インストール後にアプリケーションに渡すことを防止する。アプリケーションのカスタマイズまたはユーザ(もしくはユーザのグループ)に固有のコンテンツの提供は、不可能でなくとも、困難となることがあり、アプリケーションのインストール後にユーザとパブリッシャとの間の更なる対話を必要とし得る。
本明細書で述べられるシステムおよび方法は、パラメータ化されたアプリケーションインストールを提供する。クライアントデバイスは、ユーザの認証証明を認証サーバに提供し得、認証サーバは、ユーザと、アプリケーションにリンクし、アプリケーションによる使用のためのパラメータを識別するコンテンツアイテムとの間の関連付けを記憶し得る。クライアントデバイスは、アプリケーションサーバまたはアプリケーションストアを介してアプリケーションをダウンロードおよびインストールし得る。一旦インストールされると、アプリケーションは、認証証明を認証サーバに再提供し得、認証サーバは、関連付けを取り出し、アプリケーションによる使用のためのパラメータを提供し得る。したがって、アプリケーションサーバまたはアプリケーションストアは、アプリケーションに対するリファラ情報またはパラメータを破棄し続け得るが、アプリケーションは、更なるユーザ介入なしで、依然としてパラメータを受信および利用し得る。
1つまたは複数の実装例の詳細が、添付図面および以下の説明において述べられる。本開示の他の特徴、態様および利点は、説明、図面および特許請求の範囲から明らかになるであろう。
いくつかの実装例に係る、アプリケーションによる使用のためのパラメータを含むコンテンツアイテムの図である。 パラメータが失われるアプリケーションインストールの実装例を例示する信号フロー図である。 いくつかの実装例に係る、パラメータ化されたアプリケーションインストールおよび起動を例示する信号フロー図である。 パラメータ化されたアプリケーションインストールおよび起動での使用のためのコンピューティングデバイスの実装例を例示するブロック図である。 パラメータ化されたアプリケーションインストールおよび起動のための方法の実装例を例示するフローチャートである。
様々な図面における同様の参照番号および記号は、同様の要素を示す。
アプリケーションは、アプリケーションサーバ、またはユーザがアプリケーションを検索、ダウンロードおよびインストールすることを可能にするアプリケーションストアを介して、コンピューティングデバイスにインストールされ得る。アプリケーションパブリッシャは、例えばセキュリティ上の理由で、アプリケーションをカスタマイズすることまたは特定のユーザもしくはユーザのグループにカスタマイズされたコンテンツを提供することを望み得る。しかしながら、多くのアプリケーションストアまたはアプリケーションサーバは、カスタマイズされたパラメータ、例えばリンクを介して提供されるパラメータなどを、インストール後にアプリケーションに渡すことを防止する。アプリケーションのカスタマイズまたはユーザ(もしくはユーザのグループ)に固有のコンテンツの提供は、不可能でなくとも、困難となることがあり、アプリケーションのインストール後にユーザとパブリッシャとの間の更なる対話を必要とし得る。
例えば、図1Aは、いくつかの実装例に係る、アプリケーションによる使用のためのパラメータを含むコンテンツアイテム102の例示である。コンテンツアイテム102は、第1のアプリケーション、ホストアプリケーション、ブラウザアプリケーション、ゲームアプリケーション、参照元アプリケーションと、または任意の他のそのような用語で様々に称され得る、ウェブブラウザ、携帯ゲーム、デスクトップアプリケーションまたは任意の他のそのようなアプリケーションなどの、アプリケーション100内に提示されてよい。コンテンツアイテム102は、グラフィック、テキスト、ビデオ、アニメーションまたは他の媒体から成ってよく、新たなアプリケーション、クライアントアプリケーション、第2のアプリケーション、参照先アプリケーションと、または任意の他のそのような用語で様々に称される、関連するアプリケーションを続いてインストールおよび起動する1人または複数のユーザに宛てられて(例えば向けられて)よい。例えば、図示されるように、コンテンツアイテム102は、アプリケーションをインストールする提案を含んでよい。
コンテンツアイテム102は、アプリケーション識別子およびインストール時に新たなアプリケーションに提供されることになるアプリケーションパラメータと関連付けられてまたはそれらを含んでよい。多くの実装例では、コンテンツアイテム102は、統一リソース位置指定子(URL)または統一リソース識別子(URI)などの、アプリケーションサーバまたはアプリケーションストアを介するアプリケーションのためのリンクまたはアドレスを含んでよい。リンクを選択することにより、ユーザが新たなアプリケーションをダウンロードおよびインストールすることを許容し得る、アプリストアアプリケーションなどの別のアプリケーション内に、クライアントデバイスが対応するURLまたはURIをロードしてよい。パラメータ化されたURIとして図示されるが、多くの実装例では、アプリケーションパラメータはリファラタグまたは同様のメタデータを介して提供されてよい。
上述したように、多くの実装例では、アプリケーションサーバ、アプリケーションストアまたはアプリストアアプリケーションは、要求からパラメータを削除し、またはリファラタグを削除し、またはその他参照元コンテンツアイテム102から新たなアプリケーションにパラメータを渡すことを防止し得、それによってユーザを認証することおよびアプリケーション内にカスタマイズされたアプリケーションまたはカスタムコンテンツを提供することを困難または不可能にする。
例えば、図1Bは、パラメータが失われるアプリケーションインストールの実装例を例示する信号フロー図である。クライアントデバイスによって実行されるウェブブラウザまたはゲームなどの第1のアプリケーション100が、第2のアプリケーションへのリンクおよび同アプリケーションによって利用されることになるパラメータを含むコンテンツアイテムを表示してよい。ユーザによるコンテンツアイテムまたはリンクの選択時に、ステップ120において、アプリケーション100は、新たなアプリケーションおよびパラメータを含む要求をアプリストア104に提供してよい。アプリストア104は、クライアントデバイス上のアプリケーションまたはサーバによって提供されるウェブページもしくはネットワークアプリケーションから成ってよい。アプリストア104は、ステップ122においてパラメータまたはリファラタグを削除し、ステップ124においてアプリケーションサーバ106またはコンテンツ配信ネットワークに第2のアプリケーションを要求することによって要求を処理してよい。第2のアプリケーションの要求は、同アプリケーションに対するクライアントデバイス上のアプリストアアプリケーションからのHTTPまたはFTP要求などの、ネットワークを通じて送信される要求から成ってよい。アプリケーションサーバ106は、ステップ126において新たなアプリケーションで応答してよく、それはステップ128においてアプリストアアプリケーションまたはクライアントデバイスのオペレーティングシステムによってインストールされる。インストールは、圧縮アプリケーションを展開すること、システムライブラリをインストールもしくは修正すること、または他のそのような機能を行うことを含んでよい。新たなアプリケーション108は、多くの実装例では、インストール時に自動で起動されてよい、またはクライアントデバイスのユーザによって手動で起動されてよい。しかしながら、ステップ122において要求からパラメータが削除されたので、ユーザは、新たなアプリケーション108がパラメータを利用するためにステップ130においてパラメータを手動で再入力する必要があり得る。例えば、コンテンツアイテム102は英数字コードを含んでよく、ユーザは英数字コードを手動で入力する必要があり得る。ユーザによる一層の労力を必要とすることに加えて、ユーザが互いとロック解除コードを共有し得ると、パブリッシャによってコンテンツアイテムが提供されなかったユーザが、それにもかかわらず異なるユーザまたはユーザのグループに向けられるアプリケーションのバージョンまたはカスタマイズされたコンテンツを得ることを許容し得るので、そのような方法は不確かであり得る。
代わりに、本明細書で述べられるシステムおよび方法は、認証サーバを利用してユーザとカスタマイズされたアプリケーションまたはカスタマイズされたコンテンツとの間の関連付けを維持することによって、パラメータ化されたアプリケーションインストールに備える。クライアントデバイスがユーザの認証証明を認証サーバに提供し得、認証サーバは、ユーザと、アプリケーションによる使用のためのパラメータを識別するコンテンツアイテムとの間の関連付けを記憶してよい。クライアントデバイスは、アプリケーションサーバまたはアプリケーションストアを介してアプリケーションをダウンロードおよびインストールし得る。一旦インストールされると、アプリケーションは、認証証明を認証サーバに再提供し得、認証サーバは、関連付けを取り出し、アプリケーションによる使用のためのパラメータを提供し得る。したがって、アプリケーションサーバまたはアプリケーションストアは、アプリケーションに対するリファラ情報またはパラメータを破棄し続け得るが、アプリケーションは、更なるユーザ介入なしで、依然としてパラメータを受信および利用し得る。
例えば、図1Cは、いくつかの実装例に係る、パラメータ化されたアプリケーションインストールおよび起動を例示する信号フロー図である。コンテンツアイテム102の選択時に、第1のアプリケーション100は、ステップ150において認証サーバ110にユーザの認証証明を提供してよい。認証証明を提供することは、いくつかの実装例ではユーザにログインプロンプトを表示することを含んでよい、またはアプリケーション100によって既に使用されているログイン情報もしくは認証情報(例えば先の認証プロセス中に得られた認証トークン)を利用することを含んでよい。いくつかの実装例では、ユーザは新たなアカウントを登録することを促されてよく、ユーザおよび/またはデバイスに対して認証証明が作成されてよい。認証サーバは、認証証明とコンテンツアイテム102または新たなアプリケーションに提供されることになるコンテンツアイテムのパラメータとの間の関連付けを記憶してよい。記憶された関連付けは、デバイス識別子、暗号鍵もしくは共有秘密、または関連付けが破棄されてよい満了日などの、追加の詳細を含んでよい。
図1Bと関連して上述したように、ステップ120'において、アプリケーション100は、アプリケーションの識別子を含む(かつパラメータまたはリファラタグを潜在的に含む)要求をアプリストア104に提供してよい。上述したように、アプリストア104は、ステップ122'においてパラメータを削除し、アプリケーションサーバ106にステップ124'において新たなアプリケーションを要求し、ステップ126'において新たなアプリケーションの送信を受信し、新たなアプリケーション108をインストールしてよい。しかしながら、ユーザにパラメータを手動で入力することを要求するよりはむしろ、新たなアプリケーション108が認証サーバ110に認証証明を再提供してよい。認証証明を再提供することは、いくつかの実装例ではユーザにログインプロンプトを表示することを含んでよい、または第1のアプリケーション100からログイン情報もしくは認証情報を取り出すことを含んでよい。いくつかの実装例では、新たなアプリケーション108は、第1のアプリケーション100によって受信される権限を提供してよい。ユーザまたはデバイスの認証時に、認証サーバ110は、ステップ154においてコンテンツアイテムの対応するパラメータを取り出してよく、ステップ156において新たなアプリケーション108にパラメータを送信してよい。パラメータは、HTTP要求/応答、リモートプロシージャコールまたは他のそのような方法などの、任意の適切な手段を介して提供されてよい。いくつかの実装例では、パラメータは、認可証明と関連する共有秘密を介して送信のために暗号化されてよい。ステップ158において、新たなアプリケーション108は、パラメータを利用して、例えばパブリッシャまたはコンテンツ配信ネットワークから新たなアプリケーションのための更なるデータをダウンロード等してよい。
図2は、パラメータ化されたアプリケーションインストールおよび起動での使用のためのコンピューティングデバイスの実装例を例示するブロック図である。上述したように、クライアントデバイス250は、クライアント、デバイス、クライアントデバイス、コンピューティングデバイス、ユーザデバイスまたは任意の他のそのような用語と様々に称され得、デスクトップコンピュータ、ラップトップコンピュータ、ポータブルコンピュータ、タブレットコンピュータ、ウェアラブルコンピュータ、組込みコンピュータ、スマートテレビ、コンソール、モノのインターネット(IoT)デバイスもしくはスマートアプライアンス、または任意の他の種類および形態のコンピューティングデバイスを含む、任意の種類および形態のコンピューティングデバイスから成ってよい。
多くの実装例では、クライアントデバイス250は、プロセッサ200およびメモリ206を含む。メモリ206は、プロセッサ200によって実行されると、プロセッサ200に本明細書に記載される動作の1つまたは複数を行わせる機械命令を記憶してよい。プロセッサ200は、マイクロプロセッサ、ASIC、FPGA等、またはその組合せを含んでよい。多くの実装例では、プロセッサ200はマルチコアプロセッサまたはプロセッサのアレイでよい。メモリ206は、プロセッサ200にプログラム命令を提供することが可能な電子、光、磁気または任意の他のストレージデバイスを含んでよいが、これに限定されない。メモリ206は、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ROM、RAM、EEPROM、EPROM、フラッシュメモリ、光媒体、またはプロセッサ200が命令を読み出すことができる任意の他の適切なメモリを含んでよい。命令は、C、C++、C#、Java、JavaScript、Perl、HTML、XML、PythonおよびVisual Basicなどであるが、これらに限定されない、任意の適切なコンピュータプログラミング言語からのコードを含んでよい。
クライアントデバイス250は、1つまたは複数のネットワークインタフェース202を含んでよい。ネットワークインタフェース202は、10 Base T、100 Base Tもしくは1000 Base T(「ギガビット」)を含むイーサネット;802.11a、802.11b、802.11g、802.11nもしくは802.11acなどの、各種の802.11ワイヤレスのいずれか;CDMA、LTE、3Gもしくは4Gセルラを含む、セルラ;ブルートゥース(登録商標)もしくは他の短距離ワイヤレス接続;またはネットワークと通信するためのこれらもしくは他のインタフェースの任意の組合せを含む、任意の種類および形態のインタフェースを含んでよい。多くの実装例では、クライアントデバイス250は、複数の異なる種類のネットワークインタフェース202を含んでよく、異なるサブネットワークを介して、例えばインターネットなどの、各種のネットワークへの接続を許容する。
クライアントデバイス250は、1つまたは複数のユーザインタフェースデバイス204を含んでよい。ユーザインタフェースデバイス204は、感覚情報(例えば、ディスプレイ上の可視化、1つまたは複数の音、触覚フィードバック等)を生成することによってユーザにデータを伝達し、および/またはユーザからの受信した感覚情報を電子信号へ変換する任意の電子デバイス(例えば、キーボード、マウス、ポインティングデバイス、タッチスクリーンディスプレイ、マイクロホン等)でよい。1つまたは複数のユーザインタフェースデバイスは、様々な実装例によれば、内蔵ディスプレイ、タッチスクリーン、マイクロホン等など、クライアントデバイス250のハウジング内部、またはクライアントデバイス250に接続されるモニタ、クライアントデバイス250に接続されるスピーカ等など、クライアントデバイス250のハウジング外部でよい。
クライアントデバイス250は、アプリケーション100をメモリ206に含んでよい、またはプロセッサ200でアプリケーション100を実行してよい。アプリケーション100は、コンテンツを受信し、クライアントデバイスの出力インタフェース204(例えばディスプレイ、スピーカ等)を介してコンテンツを表示またはその他出力するためのアプリケーション、アプレット、スクリプト、サービス、デーモン、ルーチンまたは他の実行可能な論理でよい。いくつかの実装例では、アプリケーション100は、ウェブブラウザ、メールクライアント、ビデオプレーヤ、音楽プレーヤ、ビデオゲームまたは任意の他のそのようなアプリケーションでよい。アプリケーション100は、ネットワークインタフェース202を介して受信されるおよび/またはプロセッサ200によってローカルに生成されるコンテンツを表示するための機能性を含んでよい。いくつかの実装例では、アプリケーション100は、メディアプレーヤでも、またはウェブブラウザ内のプラグインもしくはネイティブメディアプレーヤなどの、組込みメディアプレーヤを含んでもよい。そのようなアプリケーション100は、コマンドラインインタフェース、グラフィカルユーザインタフェース、またはこれらもしくは他のインタフェースの任意の組合せを含んでよい。
クライアント250は、インストールアプリケーション104を実行してよい。インストールアプリケーション104は、アプリケーションを取り出してインストールするためのアプリケーション、サービス、デーモン、ルーチンまたは他の実行可能な論理から成ってよい。多くの実装例では、インストールアプリケーション104は、アプリストアアプリケーション、ブラウザまたは他のそのようなアプリケーションから成ってよい。いくつかの実装例では、インストールアプリケーション104およびアプリケーション100は同じアプリケーションでよい。いくつかの実装例では、インストールアプリケーション104は、アプリケーションサーバによって提供され、クライアントデバイス250のブラウザ内に描画されるネットワークアプリケーションまたはサービスとしてのソフトウェアアプリケーションから成ってよい。上述したように、多くの実装例では、インストールアプリケーション104は、インストールされることになるアプリケーションのURIまたはURLまたは他の識別子を受信してよく、インストール時にアプリケーションに渡されることになるパラメータを受信してよい、しかしながら、インストールアプリケーション104は、パラメータを削除しても、無視しても、またはその他インストール後に新たなアプリケーションに提供しなくてもよい。そのような実装例では、パラメータは、上述したように認証サーバ110を介して提供されてよい。
上述したように、クライアントデバイス250は、時に受信したアプリケーション、第2のアプリケーション、インストールしたアプリケーションと、または他のそのような用語で称される、新たなアプリケーション108を取り出してインストールしてよい。新たなアプリケーション108は、第2のアプリケーション、インストールしたアプリケーション、取り出したアプリケーション、ダウンロードしたアプリケーションと、または任意の他のそのような用語で称され得、インストールアプリケーション104によってアプリケーションサーバ106から取り出されてインストールされてよい。いくつかの実装例では、アプリケーションをインストールすることは、アプリケーションを展開もしくは復号すること、アプリケーションのライブラリをデバイスのオペレーティングシステムへインストールすること、またはその他アプリケーションの1つまたは複数の部分を実行のためにインストールすることを含んでよい。多くの実装例では、新たなアプリケーション108はインストール時に実行されてよい一方で、他の実装例では、新たなアプリケーション108は、インストール後にアプリケーションを実行するユーザによる選択に応答して実行されてよい。
クライアントデバイス250は、デバイス識別子208を含んでも、またはそれで識別されてもよい。デバイス識別子208は、英数字列、データ列、通し番号、メディアアクセス制御(MAC)アドレス、インターネットプロトコル(IP)アドレス、ユーザ名もしくはアカウント名、グローバル一意識別子(GUID)、クッキー、乱数もしくは擬似乱数、またはこれらもしくは他の識別子の組合せを含む、任意の他の種類および形態の識別子でよい。いくつかの実装例では、デバイス識別子208は、製造業者通し番号またはMACアドレスなど、デバイスに固定されてもまたはデバイスに事前設定されてもよい一方で、他の実装例では、デバイス識別子208は、クッキーまたはユーザ名など、コンテンツプロバイダ、ストリーミングサーバ、アプリケーション100または他のエンティティによって動的に設定されてよい。いくつかの実装例では、コンテンツプロバイダまたは認証サーバ110への各通信に対して一意のまたは新たなデバイス識別子208が設定されてよい一方で、他の実装例では、デバイス識別子208は変更されなくてよい、または定期的に(例えば毎時、毎日、毎週等)もしくは他の間隔で(例えばクライアントデバイスの再起動、インターネットサービスへのログイン時等に)変更されてよい。いくつかの実装例では、デバイス識別子208は、1つまたは複数の他のデバイス識別子208(例えば、モバイルデバイスに対するデバイス識別子、ホームコンピュータに対するデバイス識別子等)と関連付けられてよい。多くの実装例では、上述したように、デバイス識別子208は、認証サーバによってデバイス250に生成および/または送信されてよい。他の実装例では、上述したように、クライアント250は、認証サーバ110にデバイス識別子を要求してよく、コンテンツまたはアプリケーションパラメータの要求と関連付けて認証サーバ110にデバイス識別子を送信してよい。
クライアントデバイス250は、ユーザ証明210を含んでよい。ユーザ証明210は、ユーザ名、パスワード、アカウント名、アカウント識別子、パスフレーズ、指紋、顔スキャンデータ、網膜情報もしくは声紋などの生体測定データ、または任意の他の種類および形態のユーザ固有情報を含む、任意の種類および形態の識別子または証明でよい。多くの実装例では、クライアントデバイス250は、アプリケーション100および/または新たなアプリケーション108によるログインプロンプトの表示に応じてユーザ証明を受信してよい。いくつかの実装例では、クライアントデバイス250は、例えばアプリケーションの実行中または所定の時限の間、一時的にユーザ証明を記憶してよい。例えば、そのような一実装例では、ユーザは、アプリケーション100を実行し、アプリケーションに証明を提供してよく、それがデバイスのメモリ206に記憶されてよい。続いて、ユーザは、新たなアプリケーションをダウンロードおよびインストールすることを選んでよく、アプリケーション100は、メモリからユーザ証明210を取り出し、認証サーバ110にユーザ証明を提供してよい。多くの実装例では、ユーザ証明210は、ユーザプライバシーおよびセキュリティを保護するために暗号化、ハッシュまたはその他難読化されてよい。多くの実装例では、ユーザ証明が認証プロセスを介して認証サーバ110に提供されてよく、ユーザ証明、またはユーザ証明のハッシュが認証サーバ110に提供されてよく、それがハッシュまたは証明をサーバのデータベース内のものに照合してよく、一致の識別時に、認証サーバは、ユーザまたはデバイスが認可されているまたは真正であると判定してよく、認可トークンまたはデバイスが認可されていることを示す他のデータで応答してよい。デバイスは、サードパーティサーバ、アプリケーションまたは他のエンティティと認証トークンを利用してよい。
クライアントデバイス250は、1つまたは複数のネットワークを介してアプリケーションサーバ106および認証サーバ110と通信してよい。ネットワークは、ローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、衛星ネットワーク、ケーブルネットワーク、ブロードバンドネットワーク、光ファイバネットワーク、マイクロ波ネットワーク、セルラネットワーク、ワイヤレスネットワーク、またはこれらもしくは他のそのようなネットワークの任意の組合せを含む、任意の種類および形態のネットワークから成ってよい。ネットワークは、同じ種類のネットワークまたは異なる種類でよく、ゲートウェイ、モデム、ファイアウォール、ルータ、スイッチ等を含む、複数の追加デバイス(例示されない)を含んでよい。ネットワークは、ネットワーク内でデータを受信および/または送信するように構成される任意の数のコンピューティングデバイス(例えば、コンピュータ、サーバ、ルータ、ネットワークスイッチ等)も含んでよい。ネットワークは、任意の数の実配線および/またはワイヤレス接続をさらに含んでよい。クライアントデバイス250は、ネットワーク内の他のコンピューティングデバイスに実配線される(例えば、光ファイバケーブル、CAT5ケーブル等を介して)トランシーバとワイヤレスで通信してよい(例えば、WiFi、セルラ、無線等を介して)。いくつかの実装例では、ネットワークは、単一の物理マシンによって実行される複数の仮想マシン間の仮想ネットワークなどの、仮想ネットワーク、または物理的可動媒体を介するオフラインのデータ転送などの抽象ネットワーク(例えばテープ媒体、CD-ROM、フラッシュ媒体、外部ハードドライブ、フロッピーディスク等を介してデータを転送する、スニーカーネット)でよい。
同じく図2に例示されるのは、アプリケーションサーバ106の実装例のブロック図である。クライアントデバイス250と同様に、中間サーバ106は、1つまたは複数のプロセッサ200、メモリまたはストレージデバイス206、ネットワークインタフェース202およびユーザインタフェース204を含んでよい。ヘッドレスサーバと称されるいくつかの実装例では、サーバ106は、ユーザインタフェース204を含まなくてよいが、ネットワークを介してユーザインタフェース204を持つクライアント250またはコンテンツプロバイダと通信し得る。いくつかの実装例では、メモリ206は、FTPサーバ、ウェブサーバ、メールサーバ、ファイル共有サーバ、ピアツーピアサーバ、またはコンテンツもしくはリダイレクトコマンドを配信して、クライアントがコンテンツプロバイダにおいてコンテンツにアクセスすることを許容するための他のそのようなアプリケーションを含む、サーバのプロセッサ200による実行のために1つまたは複数のアプリケーションを記憶してよい。アプリケーションサーバ106は、デスクトップコンピュータ、サーバ、ワークステーション、ラップトップコンピュータ、ポータブルコンピュータ、組込みコンピュータまたは任意の他の種類および形態のコンピューティングデバイスを含む、任意の種類および形態のコンピューティングデバイスから成ってよい。多くの実装例では、アプリケーションサーバ106は、1つまたは複数の物理コンピューティングデバイスによって実行される1つまたは複数の仮想マシンから成ってよく、デバイスのサーバファーム、クラスタまたはクラウドとして構成されてよい。
アプリケーションサーバ106は、1つまたは複数のアプリケーション108をクライアントデバイス250による取出しおよびインストールのために記憶するアプリケーションストレージ212を含んでよい。アプリケーション108は、上述したようにURIまたはURLまたは他のアプリケーション識別子を介して識別されてよく、ダウンロードおよびインストールのために圧縮、暗号化またはその他パッケージ化されてよい。多くの実装例において、アプリケーション108は、アプリケーションの様々なアプリケーションライブラリ、パッケージおよび他の実行可能ファイルをインストールするための命令を含む、所与のアプリケーションのためのアプリケーションインストーラを含んでよい。
上述したように、多くの実装例では、アプリケーションサーバ106は、クライアントデバイス250でのインストール時に新たなアプリケーション108にパラメータを提供し得ないまたは提供しないように構成され得る。多くの実装例では、そのようなパラメータはクライアントデバイスのインストールアプリケーション104によって削除されてよい一方で、他の実装例では、そのようなパラメータはアプリケーションサーバ106によって削除または無視されてよい。
同じく図2に例示されるのは、認証サーバ110である。認証サーバ110は、ネットワークに接続され、クライアント250に関する認証を行うために、ならびに新たなアプリケーション108による使用のためのアプリケーションパラメータを記憶および提供するために構成される1つまたは複数のコンピューティングデバイスを含んでよい。認証サーバ110は、コンテンツプロバイダ、サーバ、ウェブサーバ、データサーバ、パブリッシャ、サービスプロバイダと、または他の同様の用語で様々に称され得る。多くの実装例では、認証サーバ110は、サーバファームまたはクラウドとして構成される複数のコンピューティングデバイスを含んでよく、ルータ、ロードバランサ、ネットワークアドレス変換器、ファイアウォールまたは他のそのようなデバイスを含んでよい。認証サーバ110は、コンピュータサーバ(例えば、FTPサーバ、ファイル共有サーバ、ウェブサーバ等)またはサーバの組合せ(例えば、データセンタ、クラウドコンピューティングプラットフォーム等)でよい。認証サーバ110はコンテンツプロバイダでも、テキスト、画像、ビデオ、オーディオ、マルチメディアもしくは他のデータ、またはこれらの任意の組合せを含む、任意の種類および形態のコンテンツを提供してもよい。例えば、いくつかの実装例では、認証サーバ110はアプリケーションサーバ106でよい。そのような実装例では、インストールアプリケーション104が、上述したようにアプリケーションパラメータを削除してよく、その結果インストール時に新たなアプリケーション108にパラメータを提供するために、認証サーバ110は、アプリケーション100またはコンテンツアイテム102の対応する提示の識別からパラメータを受信しなければならない。
認証サーバ110は、図示されるように、1つもしくは複数のプロセッサ200、ネットワークインタフェース202、I/Oインタフェース204および/またはメモリデバイス206を含んでよい。多くの実装例では、認証サーバ110は、物理デバイスによって実行される仮想マシンを含む、複数のコンピューティングデバイスから成ってよい。例えば、認証サーバ110は、1つまたは複数の物理コンピューティングデバイスによって実行される複数の仮想マシンから成ってよく、各そのような仮想マシンは、コンテンツサーバ(例えばウェブサーバ、ファイルサーバ、ストリーミングメディアサーバ等)を実行し、ネットワークストレージデバイス、RAIDストレージデバイスまたは他のそのようなデバイスなどの、1つまたは複数のストレージデバイスと通信する。
認証サーバ110は、認証エンジン212を含んでもまたは実行してもよい。認証エンジン212は、クライアントデバイス250から認証証明を受信するための、ならびに例えば証明-パラメータデータベース214内の、ユーザ証明およびコンテンツアイテムと関連するパラメータを記憶するおよび/または取り出すためのアプリケーション、サーバ、サービス、デーモン、ルーチンまたは他の実行可能な論理から成ってよい。証明-パラメータデータベース214は、デバイス識別子208またはユーザ識別子のコンテンツアイテム102、アプリケーションによる使用のためのパラメータ、または他の対応する識別子と関連付けることが可能なデータベース、フラットファイル、リレーショナルデータベース、アレイまたは他の構造を含む、任意の種類および形態のデータストレージから成ってよい。多くの実装例において、証明-パラメータデータベース214は、パラメータを使用するアプリケーション、例えばアプリケーション108とさらに関連付けられてよい。例えば、証明-パラメータデータベース214はアプリケーションで索引付けされてよく、それが、アプリケーションからの要求の受信時にユーザ証明およびパラメータの検索および取出しを高速化し得る。証明-パラメータデータベース214は、このように、アプリケーション識別子、コンテンツアイテム識別子、ユーザもしくはデバイス識別子、アプリケーションによる使用のためのパラメータ、またはこれらの識別子もしくはデータの組合せを記憶してよい。多くの実装例では、各エントリまたは関連付けは満了時間または存続期間とさらに関連付けられてよい。存続期間または満了時間の満了時に、対応する関連付けまたはエントリは削除されてよく、それによって関連付けが「タイムアウト」または満了することを許容することによってセキュリティをさらに改善する。
図3は、パラメータ化されたアプリケーションインストールおよび起動のための方法の実装例を例示するフローチャートである。ステップ300において、クライアントデバイス250がコンテンツアイテムを表示してよい。コンテンツアイテムは、例えばバナー広告、ポップアップ広告、インタースティシャル広告、プレロールもしくはポストロール広告、リンク、グラフィックまたは他のそのようなアイテムとして、ウェブブラウザ、ゲームまたは他のそのようなアプリケーションなどの、第1のアプリケーションに表示されてよい。コンテンツアイテムは、アプリケーションストアまたはアプリケーションサーバでの第2のアプリケーションに対応するURLまたはURIなどの、第2のアプリケーションへのリンクまたはそれのアドレス、およびインストール時に第2のアプリケーションによって利用されることになるパラメータを含んでよい。パラメータは、URIもしくはURL内に(例えばURLのパラメータ-値ペアとして)またはリファラタグなどのメタデータに記憶されてよい。
ステップ302において、第1のアプリケーションが、クライアントデバイスのユーザがコンテンツアイテムと対話した(例えば、アイテムをクリックする、タッチインタフェースを介してアイテムを選択する等)かどうかを判定してよい。そうでなければ、例えば異なるまたは同じコンテンツアイテムに関して、ステップ300〜302が繰り返されてよい。対話が検出されれば、次いで、ステップ304において、第1のアプリケーションまたはデバイスのオペレーティングシステムがユーザに対してログインプロンプトを表示してよい。ユーザは、ユーザ名、アカウント名、パスワード、生体測定データまたは他のそのような情報などのユーザ証明を入力してよい。いくつかの実装例では、第1のアプリケーションまたはオペレーティングシステムは先にプロンプトを表示したまたはユーザを認証したかもしれず、そのような実装例では、ステップ304は省略されてよい。ステップ306において、証明が認証サーバ110に送信されてよい。証明は、ユーザプライバシーを保護しセキュリティを強化するために暗号化、ハッシュまたはその他難読化されてよい。いくつかの実装例では、送信には、デバイス識別子、ユーザ識別子、アカウント識別子、アプリケーション識別子(例えば第1のアプリケーションのおよび/またはインストールされることになるアプリケーションの)、コンテンツアイテムの識別、パラメータの識別および/またはパラメータ値、または任意の他のそのような情報を含んでよい。
ステップ308において、認証サーバ110が、証明が有効であるかどうか(例えば証明が認証サーバの証明またはアカウントデータベース内のアカウント証明またはデバイス証明と一致するかどうか)を判定してよい。証明が一致しなければ、次いで、証明はステップ310において却下されてよい。ユーザがまだ認証サーバにアカウントを登録していないいくつかの実装例では、クライアントデバイス250は代わりに、ユーザが認証サーバ110に登録されることになるアカウントを作成できることで新たなアカウント登録インタフェースを提供してよい。一旦登録されると、アカウントは上述したように確認されてよい(またはステップ308は省略されてよい)。
ステップ312において、認証サーバ110がユーザまたはデバイス証明とコンテンツアイテムおよび/またはパラメータとの間の関連付けを記憶してよい。いくつかの実装例では、コンテンツアイテムとパラメータとの間の関連付けが認証サーバによって既に記憶されている、またはその他コンテンツサーバに利用可能である(例えばコンテンツプロバイダもしくはパブリッシャサーバから)かもしれない。例えば、アプリケーションにリンクする第1のコンテンツアイテムと第1のパラメータとの間の関連付けが記憶されてよく、アプリケーションにリンクする第2のコンテンツアイテムと第2のパラメータとの間の関連付けが記憶されてよい。そのため、対応するパラメータを決定するために、認証サーバは、デバイスまたはユーザにどのコンテンツアイテムが提供されたかの識別を記憶しさえすればよい。同様に、パラメータは、クライアントデバイスでなく、むしろ単にコンテンツアイテムの識別によって提供される必要がある。他の実装例では、パラメータ値が記憶のための認証サーバに提供されてよい。ステップ314において、いくつかの実装例では、認証サーバがクライアントデバイスに認可確認または認証トークンを提供してよい。認証トークンまたは確認は、クッキー、暗号鍵または他の種類の識別子から成ってよい。
ステップ316において、クライアントデバイス250が新たなアプリケーションをダウンロードおよびインストールしてよい。いくつかの実装例では上述したように、クライアントデバイスは、インストールアプリケーションまたはアプリストアアプリケーションを実行してアプリケーションサーバまたはコンテンツ配信システムとインタフェースしてアプリケーションを取り出してよい。上述したように、アプリケーションは圧縮または暗号化されてよく、インストールアプリケーションはアプリケーションを展開および/または復号およびインストールしてよい。
ステップ318において、新たなアプリケーションが実行または起動されてよい。いくつかの実装例では、新たなアプリケーションは、インストールが完了するとすぐに自動で起動されてよい一方で、他の実装例では、ユーザがアプリケーションを手動で起動してよい。上述したように、アプリケーションは、ゲーム、ユーティリティもしくはオフィスアプリケーション、メディアアプリケーション、ソーシャルネットワークアプリケーション、または任意の他の種類および形態のアプリケーションを含む、任意の種類および形態のアプリケーションから成ってよい。
ステップ320において、いくつかの実装例では、新たなアプリケーションまたはオペレーティングシステムが、ステップ304においてと同様に、ログインプロンプトを表示してユーザまたはデバイス証明を受信してよい。他の実装例では、上述したように、新たなアプリケーションは、第1のアプリケーションもしくはクライアントデバイスのオペレーティングシステムから証明を取り出してよい(例えばユーザが先に証明を提供したときに記憶された)、またはデバイスに提供された(例えばステップ314においてもしくは先の認証のインスタンスにおいて)認可トークンを取り出してよい。ステップ322において、新たなアプリケーションが認証サーバに証明または認可トークンを送信してよい。
ステップ324において、認証サーバが、ステップ308と同様に、証明が有効であることを確認してよい。証明が有効でなければ、認証サーバはステップ310において証明を却下してよい。証明が有効であれば、ステップ326において、認証サーバが証明ならびにコンテンツアイテムおよび/またはアプリケーションのためのパラメータの記憶された関連付けを取り出してよい。いくつかの実装例では、認証サーバは、ユーザもしくはデバイス証明および/またはアプリケーション種類もしくは証明が提供されたアプリケーション識別子を介して記憶された関連付けを調べてよく、対応するコンテンツアイテムまたはパラメータを識別してよい。更なる実装例では、一旦コンテンツアイテムを識別すると、認証サーバはパラメータを別に調べてよい(例えば、コンテンツアイテム-パラメータストレージ内を、パブリッシャまたはコンテンツ配信ネットワークからパラメータを取り出すことによって等)。ステップ328において、認証サーバが、ステップ314においてのように認可確認、および/または取り出されたパラメータを提供してよい。パラメータは、アプリケーションによる使用のためのデータでよい(例えばnだけトークンカウンタをインクリメントする、もしくは同様のコマンド)、またはアプリケーションによって使用されるロック解除コードでよい。ステップ330において、アプリケーションによってパラメータが利用されて、カスタマイズされたアプリケーションまたはカスタマイズされたコンテンツを提供してよい。
したがって、本明細書で述べられるシステムおよび方法は、パラメータまたはリファラタグがアプリケーションストアまたは他のサードパーティアプリケーションプロバイダによって削除されるにもかかわらず、カスタムアプリケーションまたはコンテンツが新たにインストールされるアプリケーション内での使用のためにユーザに提供されることを可能にするユーザの認証を可能にする。
一態様において、本開示は、パラメータ化されたアプリケーションインストールおよび起動のための方法を対象とする。本方法は、デバイスによって、アプリケーションの識別およびアプリケーションによる使用のためのパラメータを含むコンテンツアイテムを受信するステップを含む。本方法は、デバイスによって、コンテンツアイテムとのユーザによる対話を検出するステップも含む。本方法は、デバイスによって、ユーザの認証証明およびコンテンツアイテムの識別を認証サーバに送信するステップであって、認証サーバが、ユーザと関連付けてコンテンツアイテムの識別を記憶する、ステップも含む。本方法は、コンテンツアイテムとのユーザによる対話の検出に応答して、デバイスによって、アプリケーションをインストールするステップであって、アプリケーションが、インストールの完了時に実行される、ステップも含む。本方法は、デバイスによって、アプリケーションの実行に応答して、認証サーバにユーザの認証証明を再送信するステップを含む。本方法は、デバイスによって認証サーバから、アプリケーションによる使用のためのパラメータの識別を受信するステップであって、パラメータが、ユーザと関連付けたコンテンツアイテムの識別の記憶およびユーザの認証証明の再送信に応答して取り出される、ステップも含む。本方法は、パラメータの識別の受信に応答して、デバイスによって、アプリケーション内で受信したパラメータを利用するステップも含む。
いくつかの実装例では、アプリケーションによる使用のためのパラメータは、アプリケーションをインストールする間にはローカルに記憶されない。いくつかの実装例では、アプリケーションによる使用のためのパラメータは、認証サーバからのパラメータの識別の受信前には、アプリケーションによってアクセス可能でない。
いくつかの実装例では、コンテンツアイテムの識別を送信するステップは、アプリケーションによる使用のためのパラメータの識別を送信するステップを含む。いくつかの実装例では、アプリケーションの識別およびアプリケーションによる使用のためのパラメータは、リソース識別子に含まれ、本方法は、リソース識別子に対応するアドレスにおいて、デバイスによってインストールアプリケーションを介して、アプリケーションをダウンロードするステップであって、インストールアプリケーションが、アプリケーションのインストール前に、リソース識別子からアプリケーションによる使用のためのパラメータを削除する、ステップを含む。
いくつかの実装例では、ユーザの認証証明を送信するステップは、認証証明のためのプロンプトを表示するステップと、ユーザから認証証明を受信するステップとを含む。更なる実装例では、認証証明を再送信するステップは、認証証明のためのプロンプトを再表示するステップと、ユーザから認証証明を再受信するステップとを含む。
別の態様において、本出願は、パラメータ化されたアプリケーションインストールおよび起動のための方法を対象とする。本方法は、サーバによってデバイスに、アプリケーションの識別およびアプリケーションによる使用のためのパラメータを含むコンテンツアイテムを提供するステップを含む。本方法は、サーバによってデバイスから、デバイスのユーザの認証証明およびコンテンツアイテムの識別を受信するステップを含む。本方法は、サーバによって、コンテンツアイテムの識別をユーザと関連付けて記憶するステップを含む。本方法は、サーバによってデバイスのアプリケーションから、ユーザの認証証明を続いて受信するステップであって、アプリケーションが、アプリケーションのインストールの完了に応答してデバイスによって実行される、ステップを含む。本方法は、サーバによって、ユーザの認証証明の受信に基づいて、コンテンツアイテムの識別およびアプリケーションによる使用のためのパラメータを取り出すステップを含む。本方法は、サーバによってデバイスに、パラメータを送信するステップであって、デバイスのアプリケーションが、受信したパラメータを利用する、ステップを含む。
いくつかの実装例では、アプリケーションによる使用のためのパラメータは、アプリケーションをインストールする間にはデバイスによって記憶されない。いくつかの実装例では、アプリケーションによる使用のためのパラメータは、認証サーバからのパラメータの識別の受信前には、アプリケーションによってアクセス可能でない。いくつかの実装例では、コンテンツアイテムの識別を受信するステップは、アプリケーションによる使用のためのパラメータの識別を受信するステップを含む。いくつかの実装例では、コンテンツアイテムの識別を受信するステップは、サーバによって、デバイスをアプリケーションインストールサーバにリダイレクトするステップを含む。更なる実装例では、デバイスをアプリケーションインストールサーバにリダイレクトするステップは、アプリケーションに対応するリソース識別子を提供するステップであって、リソース識別子が、アプリケーションによる使用のためのパラメータを含まない、ステップをさらに含む。別の更なる実装例では、デバイスをアプリケーションインストールサーバにリダイレクトするステップは、アプリケーションによる使用のためのパラメータを含む、アプリケーションに対応するリソース識別子を提供するステップであって、アプリケーションインストールサーバが、デバイスからのアプリケーションの要求の受信時にパラメータを削除する、ステップを含む。
別の態様において、本出願は、パラメータ化されたアプリケーションインストールおよび起動のためのシステムを対象とする。本システムは、上記した態様の方法を実施するように構成される1つまたは複数のデバイスを備えてよい。例えば、本システムは、認証サーバおよびアプリケーションサーバと通信するネットワークインタフェースを備えるデバイスを含んでよい。デバイスは、第2のアプリケーションの識別および第2のアプリケーションによる使用のためのパラメータを含むコンテンツアイテムを受信し、コンテンツアイテムとのユーザによる対話を検出し、ユーザの認証証明およびコンテンツアイテムの識別を認証サーバに送信するように構成される第1のアプリケーションを実行し、認証サーバが、コンテンツアイテムの識別をユーザと関連付けて記憶する。デバイスは、コンテンツアイテムとのユーザによる対話の検出に応答して、アプリケーションサーバから第2のアプリケーションを取り出してインストールするように構成され、第2のアプリケーションが、インストールの完了時に実行される。第2のアプリケーションは、第2のアプリケーションの実行に応答して、認証サーバにユーザの認証証明を再送信し、認証サーバから、第2のアプリケーションによる使用のためのパラメータの識別を受信して、パラメータが、ユーザと関連付けたコンテンツアイテムの識別の記憶およびユーザの認証証明の再送信に応答して取り出され、パラメータの識別の受信に応答して、第2のアプリケーション内で受信したパラメータを利用する、ように構成される。
いくつかの実装例では、第2のアプリケーションによる使用のためのパラメータは、第2のアプリケーションをインストールする間にはローカルに記憶されない。いくつかの実装例では、第2のアプリケーションによる使用のためのパラメータは、認証サーバからのパラメータの識別の受信前には、第2のアプリケーションによってアクセス可能でない。
いくつかの実装例では、第1のアプリケーションは、第2のアプリケーションによる使用のためのパラメータの識別を送信するようにさらに構成される。いくつかの実装例では、アプリケーションの識別およびアプリケーションによる使用のためのパラメータは、リソース識別子に含まれ、デバイスは、リソース識別子に対応するアドレスにおいて、インストールアプリケーションを介して第2のアプリケーションを取り出してインストールするようにさらに構成され、インストールアプリケーションが、第2のアプリケーションのインストール前に、リソース識別子から第2のアプリケーションによる使用のためのパラメータを削除する。いくつかの実装例では、第2のアプリケーションは、認証証明のためのプロンプトを表示し、ユーザから認証証明を受信するようにさらに構成される。
本明細書に記載される主題および動作の実装例は、本明細書に開示される構造およびそれらの構造的な均等物を含めて、デジタル電子回路で、またはコンピュータソフトウェア、ファームウェアもしくはハードウェアで、またはこれらの1つもしくは複数の組合せで、実装することができる。本明細書に記載される主題の実装例は、データ処理装置による実行のために、またはその動作を制御するために1つまたは複数のコンピュータ記憶媒体上に符号化された1つまたは複数のコンピュータプログラム、すなわち、コンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。代替的に、または加えて、プログラム命令は、データ処理装置による実行のために適切な受信機装置に送信するための情報を符号化するために発生される人工発生伝搬信号、例えば機械発生電気、光または電磁信号上に符号化することができる。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムアクセスメモリアレイもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらの1つもしくは複数の組合せであり得、またはそれに含まれ得る。その上、コンピュータ記憶媒体は伝搬信号でないが、コンピュータ記憶媒体は、人工発生伝搬信号に符号化されるコンピュータプログラム命令の供給源または供給先であり得る。コンピュータ記憶媒体は、1つまたは複数の別々の部品または媒体(例えば、複数のCD、ディスクまたは他の記憶デバイス)でもあり得る、またはそれにも含まれ得る。したがって、コンピュータ記憶媒体は有形であり得る。
本明細書に記載される動作は、1つまたは複数のコンピュータ可読記憶デバイスに記憶されたまたは他の供給源から受信されたデータに対してデータ処理装置によって行われる動作として実装することができる。
用語「クライアント」または「サーバ」は、プログラマブルプロセッサ、コンピュータ、システムオンチップ、または上記の複数もしくは組合せなど、データを処理するための全ての種類の装置、デバイスおよび機械を含む。同装置は、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。同装置は、ハードウェアに加えて、当該コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォーム実行時環境、仮想マシン、またはそれらの1つまたは複数の組合せを構成するコードも含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラストラクチャなどの、様々な異なるコンピューティングモデルインフラストラクチャを実現できる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプトまたはコードとしても知られている)は、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含め、任意の形態のプログラミング言語で書くことができ、それは、スタンドアロンプログラムとして、またはモジュール、部品、サブルーチン、オブジェクト、もしくはコンピューティング環境での使用に適する他のユニットとして含め、任意の形態に展開できる。コンピュータプログラムは、ファイルシステムにおけるファイルに対応してよいが、しなくてもよい。プログラムは、他のプログラムもしくはデータ(例えば、マークアップ言語文書に記憶される1つまたは複数のスクリプト)を保持するファイルの一部分に、当該プログラムに専用の単一のファイルに、または複数の協調ファイル(例えば、1つまたは複数のモジュール、サブプログラムもしくはコードの一部分を記憶するファイル)に記憶できる。コンピュータプログラムは、展開されて1つのコンピュータ上で、または1つのサイトに設けられるもしくは複数のサイトにわたって分散されて通信ネットワークによって相互接続される複数のコンピュータ上で実行できる。
本明細書に記載されるプロセスおよび論理フローは、1つまたは複数のコンピュータプログラムを実行して、入力データを演算して出力を生成することによって動作を行う1つまたは複数のプログラマブルプロセッサによって行うことができる。プロセスおよび論理フローは専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても行うことができ、装置もそれとして実装することができる。
コンピュータプログラムの実行に適するプロセッサには、汎用および専用の両マイクロプロセッサ、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、リードオンリメモリまたはランダムアクセスメモリまたは両方から命令およびデータを受けることになる。コンピュータの必須要素は、命令に従って動作を行うためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはさらに、データを記憶するための1つまたは複数の大容量ストレージデバイス、例えば、磁気、光磁気ディスクまたは光ディスクを含む、または作動的に結合されて、それからデータを受けるもしくはそれにデータを転送するもしくは両方行うことになる。しかしながら、コンピュータはそのようなデバイスを有する必要はない。その上、コンピュータは、別のデバイス、例えば、いくつか挙げると、移動電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルストレージデバイス(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)に組み込むことができる。コンピュータプログラム命令およびデータを記憶するのに適するデバイスには、半導体メモリデバイス、例えば、EPROM、EEPROMおよびフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスクまたは取外し可能ディスク;光磁気ディスク;ならびにCD-ROMおよびDVD-ROMディスクを含む、全ての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路網によって補足またはそれに組み込みできる。
ユーザとの対話を提供するために、本明細書に記載される主題の実装例は、ディスプレイデバイス、例えば、CRT(陰極線管)、LCD(液晶ディスプレイ)、OLED(有機発光ダイオード)、TFT(薄膜トランジスタ)、プラズマ、他のフレキシブル構成、またはユーザに情報を表示するための任意の他のモニタ、およびユーザがコンピュータに入力を提供できる、キーボード、ポインティングデバイス、例えば、マウス、トラックボール等、またはタッチスクリーン、タッチパッド等を有するコンピュータ上で実装することができる。ユーザとの対話を提供するために他の種類のデバイスも使用でき、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであることができ、ユーザからの入力は、音響、音声または触覚入力を含め、任意の形態で受け取ることができる。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、それから文書を受信することによって、ユーザのクライアントデバイス上のウェブブラウザから受信される要求に応じてウェブブラウザにウェブページを送信することによって、ユーザと対話できる。
本明細書に記載される主題の実装例は、バックエンド部品を、例えば、データサーバとして含む、あるいはミドルウェア部品、例えば、アプリケーションサーバを含む、あるいはフロントエンド部品、例えば、本明細書に記載される主題の実装例とユーザが対話できるグラフィカルユーザインタフェースもしくはウェブブラウザを有するクライアントコンピュータ、または1つもしくは複数のそのようなバックエンド、ミドルウェアもしくはフロントエンド部品の任意の組合せを含む、コンピューティングシステムにおいて実装することができる。システムの部品は、デジタルデータ通信の任意の形態または媒体、例えば、通信ネットワークによって相互接続できる。通信ネットワークには、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(例えば、インターネット)、ならびにピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)を含んでよい。
本明細書で述べられるシステムがユーザについての個人情報を収集する、または個人情報を使用し得る状況に対して、ユーザには、プログラムまたは機能が個人情報(例えば、ユーザの社会的ネットワーク、社会的行為もしくは活動、ユーザの嗜好、またはユーザの位置についての情報)を収集してよいかどうかを規制する、あるいはユーザにより関連し得るコンテンツサーバまたは他のデータ処理システムからコンテンツを受信するかどうかまたは受信の手法を規制する機会が与えられてよい。加えて、あるデータは、それが記憶または使用される前に1つまたは複数の手法で匿名化されてよく、その結果、パラメータを生成するときに個人識別可能情報は削除される。例えば、ユーザに対して個人識別可能情報が確定できないようにユーザの身元が匿名化されてよい、または位置情報が得られる程度(都市、郵便番号もしくは州レベルなど)にユーザの地理的位置が一般化されてよく、その結果ユーザの特定の位置は確定できない。このように、ユーザは、自分についてどのように情報が収集されてコンテンツサーバによって使用されるかを規制し得る。
本明細書は多くの具体的な実装詳細を含むが、これらは、いかなる発明のまたは特許請求され得るものの範囲の限定としても解釈されるべきではなく、むしろ特定の発明の特定の実装例に固有の特徴の記述として解釈されるべきである。別の実装例の文脈で本明細書に記載されるある特徴は、組合せでも、単一の実装例でも実装することができる。反対に、単一の実装例の文脈で記載される様々な特徴は、複数の実装例で別々に、または任意の適切な下位組合せでも実装することができる。その上、特徴は、ある組合せで作用すると上記され、しかも当初そのように特許請求され得るが、特許請求された組合せからの1つまたは複数の特徴は、いくつかの場合には同組合せから削除することができ、特許請求された組合せは、下位組合せまたは下位組合せの変形を対象としてもよい。
例えば、本明細書で言及されるカスタムコンテンツが任意の形態をとってよいことが認識されるであろう。単に例として、カスタムコンテンツは、クーポンまたはトークン等など、アプリケーションをインストールするためのインセンティブを含んでよい。
同様に、動作が特定の順序で図面に描かれるが、これは、望ましい結果を達成するために、そのような動作が図示される特定の順序でもしくは順番に行われること、または全ての例示された動作が行われることを必要とすると理解されるべきでない。ある状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記した実装例における様々なシステム部品の分離は、全ての実装例においてそのような分離を必要とすると理解されるべきでなく、記載されたプログラム部品およびシステムが一般に単一のソフトウェア製品に共に統合でき、または複数のソフトウェア製品へパッケージ化することができることが理解されるべきである。
このように、本主題の特定の実装例が記載されてきた。他の実装例は、以下の特許請求の範囲の範囲内である。いくつかの場合には、請求項に記載される動作は、異なる順序で行うことができ、依然として望ましい結果を達成することができる。加えて、添付の図に描かれるプロセスは、望ましい結果を達成するために、必ずしも図示される特定の順序または順番を必要とするわけではない。ある実装例では、マルチタスキングまたは並列処理が利用されてもよい。
100 アプリケーション
102 コンテンツアイテム
104 アプリストア
106 アプリケーションサーバ
108 新たなアプリケーション
110 認証サーバ
200 プロセッサ
202 ネットワークインタフェース
204 ユーザインタフェース
206 メモリ
208 デバイス識別子
210 ユーザ証明
212 認証エンジン
214 証明-パラメータデータベース
250 クライアントデバイス

Claims (20)

  1. パラメータ化されたアプリケーションインストールおよび起動のための方法であって、
    デバイスによって、アプリケーションの識別および前記アプリケーションによる使用のためのパラメータを含むコンテンツアイテムを受信するステップと、
    前記デバイスによって、前記コンテンツアイテムとのユーザによる対話を検出するステップと、
    前記デバイスによって、前記ユーザの認証証明および前記コンテンツアイテムの識別を認証サーバに送信するステップであり、前記認証サーバが、前記コンテンツアイテムの前記識別を前記ユーザと関連付けて記憶する、ステップと、
    前記コンテンツアイテムとの前記ユーザによる前記対話の検出に応答して、前記デバイスによって、前記アプリケーションをインストールするステップであり、前記アプリケーションが、インストールの完了時に実行される、ステップと、
    前記デバイスによって、前記アプリケーションの実行に応答して、前記認証サーバに前記ユーザの前記認証証明を再送信するステップと、
    前記デバイスによって、前記認証サーバから、前記アプリケーションによる使用のための前記パラメータを受信するステップであり、前記パラメータが、前記ユーザと関連付けた前記コンテンツアイテムの前記識別の前記記憶、および前記ユーザの前記認証証明の前記再送信に応答して取り出される、ステップと、
    前記パラメータの受信に応答して、前記デバイスによって、前記アプリケーション内で前記受信したパラメータを利用するステップと、
    を含む、方法。
  2. 前記アプリケーションによる使用のための前記パラメータが、前記アプリケーションをインストールする間にはローカルに記憶されない、請求項1に記載の方法。
  3. 前記アプリケーションによる使用のための前記パラメータが、前記認証サーバからの前記パラメータの受信前には、前記アプリケーションによってアクセス可能でない、請求項1に記載の方法。
  4. 前記コンテンツアイテムの前記識別を送信するステップが、前記アプリケーションによる使用のための前記パラメータの識別を送信するステップをさらに含む、請求項1に記載の方法。
  5. 前記アプリケーションの前記識別および前記アプリケーションによる使用のための前記パラメータが、リソース識別子に含まれ、
    前記アプリケーションをインストールするステップが、前記リソース識別子に対応するアドレスにおいて、前記デバイスによってインストールアプリケーションを介して、前記アプリケーションをダウンロードするステップであり、前記インストールアプリケーションが前記アプリケーションのインストール前に前記リソース識別子から前記アプリケーションによる使用のための前記パラメータを削除する、ステップをさらに含む、請求項1に記載の方法。
  6. 前記ユーザの認証証明を送信するステップが、認証証明のためのプロンプトを表示するステップと、前記ユーザから認証証明を受信するステップとをさらに含む、請求項1に記載の方法。
  7. 前記認証証明を再送信するステップが、認証証明のための前記プロンプトを再表示するステップと、前記ユーザから認証証明を再受信するステップとをさらに含む、請求項6に記載の方法。
  8. パラメータ化されたアプリケーションインストールおよび起動のための方法であって、
    サーバによってデバイスに、アプリケーションの識別および前記アプリケーションによる使用のためのパラメータを含むコンテンツアイテムを提供するステップと、
    前記サーバによって前記デバイスから、前記デバイスのユーザの認証証明および前記コンテンツアイテムの識別を受信するステップと、
    前記サーバによって、前記コンテンツアイテムの前記識別を前記ユーザと関連付けて記憶するステップと、
    前記サーバによって前記デバイスの前記アプリケーションから、前記ユーザの前記認証証明を続いて受信するステップであり、前記アプリケーションが、前記アプリケーションのインストールの完了に応答して前記デバイスによって実行される、ステップと、
    前記サーバによって、前記ユーザの前記認証証明の受信に基づいて、前記コンテンツアイテムの前記識別および前記アプリケーションによる使用のための前記パラメータを取り出すステップと、
    前記サーバによって前記デバイスに、前記パラメータを送信するステップであり、前記デバイスの前記アプリケーションが、前記受信したパラメータを利用する、ステップと、
    を含む、方法。
  9. 前記アプリケーションによる使用のための前記パラメータが、前記アプリケーションをインストールする間には前記デバイスによって記憶されない、請求項8に記載の方法。
  10. 前記アプリケーションによる使用のための前記パラメータが、前記サーバからの前記パラメータの受信前には、前記アプリケーションによってアクセス可能でない、請求項8に記載の方法。
  11. 前記コンテンツアイテムの前記識別を受信するステップが、前記アプリケーションによる使用のための前記パラメータの識別を受信するステップをさらに含む、請求項8に記載の方法。
  12. 前記コンテンツアイテムの前記識別を受信するステップが、前記サーバによって、前記デバイスをアプリケーションインストールサーバにリダイレクトするステップをさらに含む、請求項8に記載の方法。
  13. 前記デバイスを前記アプリケーションインストールサーバにリダイレクトするステップが、前記アプリケーションに対応するリソース識別子を提供するステップであり、前記リソース識別子が、前記アプリケーションによる使用のための前記パラメータを含まない、ステップをさらに含む、請求項12に記載の方法。
  14. 前記デバイスを前記アプリケーションインストールサーバにリダイレクトするステップが、前記アプリケーションによる使用のための前記パラメータを含む、前記アプリケーションに対応するリソース識別子を提供するステップであって、前記アプリケーションインストールサーバが、前記デバイスからの前記アプリケーションの要求の受信時に前記パラメータを削除する、ステップをさらに含む、請求項12に記載の方法。
  15. パラメータ化されたアプリケーションインストールおよび起動のためのシステムであって、
    認証サーバおよびアプリケーションサーバと通信するネットワークインタフェースを含むデバイスを備え、前記デバイスが、
    第2のアプリケーションの識別および前記第2のアプリケーションによる使用のためのパラメータを含むコンテンツアイテムを受信し、
    前記コンテンツアイテムとのユーザによる対話を検出し、
    前記ユーザの認証証明および前記コンテンツアイテムの識別を前記認証サーバに送信し、前記認証サーバが、前記コンテンツアイテムの前記識別を前記ユーザと関連付けて記憶する、
    ように構成される第1のアプリケーションを実行し、
    前記デバイスが、前記コンテンツアイテムとの前記ユーザによる前記対話の検出に応答して、前記アプリケーションサーバから前記第2のアプリケーションを取り出してインストールするように構成され、前記第2のアプリケーションが、インストールの完了時に実行され、
    前記第2のアプリケーションが、
    前記第2のアプリケーションの実行に応答して、前記認証サーバに前記ユーザの前記認証証明を再送信し、
    前記認証サーバから、前記第2のアプリケーションによる使用のための前記パラメータを受信し、前記パラメータが、前記ユーザと関連付けた前記コンテンツアイテムの前記識別の前記記憶および前記ユーザの前記認証証明の前記再送信に応答して取り出され、
    前記パラメータの受信に応答して、前記第2のアプリケーション内で前記受信したパラメータを利用する、
    ように構成される、システム。
  16. 前記第2のアプリケーションによる使用のための前記パラメータが、前記第2のアプリケーションをインストールする間にはローカルに記憶されない、請求項15に記載のシステム。
  17. 前記第2のアプリケーションによる使用のための前記パラメータが、前記認証サーバからの前記パラメータの受信前には、前記第2のアプリケーションによってアクセス可能でない、請求項15に記載のシステム。
  18. 前記第1のアプリケーションが、前記第2のアプリケーションによる使用のための前記パラメータの識別を送信するようにさらに構成される、請求項15に記載のシステム。
  19. 前記第2のアプリケーションの前記識別および前記第2のアプリケーションによる使用のための前記パラメータが、リソース識別子に含まれ、
    前記デバイスが、前記リソース識別子に対応するアドレスにおいて、インストールアプリケーションを介して前記第2のアプリケーションを取り出してインストールするようにさらに構成され、前記インストールアプリケーションが、前記第2のアプリケーションのインストール前に、前記リソース識別子から前記第2のアプリケーションによる使用のための前記パラメータを削除する、請求項15に記載のシステム。
  20. 前記第2のアプリケーションが、認証証明のためのプロンプトを表示し、前記ユーザから前記認証証明を受信するようにさらに構成される、請求項15に記載のシステム。
JP2020518457A 2018-11-02 2018-11-02 認証のためのシステムおよび方法 Active JP6914436B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/058975 WO2020091809A1 (en) 2018-11-02 2018-11-02 Systems and methods for authenticated parameterized application installation and launch

Publications (2)

Publication Number Publication Date
JP2021503637A JP2021503637A (ja) 2021-02-12
JP6914436B2 true JP6914436B2 (ja) 2021-08-04

Family

ID=64362744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020518457A Active JP6914436B2 (ja) 2018-11-02 2018-11-02 認証のためのシステムおよび方法

Country Status (6)

Country Link
US (1) US11544357B2 (ja)
EP (1) EP3673395B1 (ja)
JP (1) JP6914436B2 (ja)
KR (1) KR102362108B1 (ja)
CN (1) CN111406257B (ja)
WO (1) WO2020091809A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6956233B1 (ja) * 2020-07-08 2021-11-02 Tis株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US11526339B1 (en) * 2020-08-11 2022-12-13 NortonLifeLock Inc. Systems and methods for improving application installation
JP7297275B1 (ja) 2022-12-06 2023-06-26 株式会社and DC3 コンテンツ処理方法及びプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148222A (en) * 1990-08-22 1992-09-15 Spectrum Sciences B.V. Liquid developer system
JP2003216872A (ja) * 2001-11-19 2003-07-31 Ricoh Co Ltd レンタルソフトウェア提供方法およびレンタルソフトウェア提供プログラム
JP2003256213A (ja) * 2002-03-06 2003-09-10 Nippon Telegr & Teleph Corp <Ntt> アプリケーション起動方法及びシステム及びアプリケーション起動プログラム及びアプリケーション起動プログラムを格納した記憶媒体
US7080404B2 (en) * 2002-04-01 2006-07-18 Microsoft Corporation Automatic re-authentication
US8613108B1 (en) * 2009-03-26 2013-12-17 Adobe Systems Incorporated Method and apparatus for location-based digital rights management
FR2962571B1 (fr) * 2010-07-08 2012-08-17 Inside Contactless Procede d'execution d'une application securisee dans un dispositif nfc
AU2012203903B2 (en) * 2011-07-12 2015-03-12 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US9148429B2 (en) * 2012-04-23 2015-09-29 Google Inc. Controlling access by web applications to resources on servers
EP3188437B1 (en) * 2012-06-13 2019-06-12 Huawei Device Co., Ltd. Method and system for implementing information sharing
US9098687B2 (en) * 2013-05-03 2015-08-04 Citrix Systems, Inc. User and device authentication in enterprise systems
JP6201885B2 (ja) * 2014-05-13 2017-09-27 株式会社セガゲームス サーバ装置及びサーバプログラム
US20150379559A1 (en) * 2014-06-30 2015-12-31 Google Inc. Application installation conversion and identification
US10425392B2 (en) 2015-08-05 2019-09-24 Facebook, Inc. Managing a device cloud
US9886256B2 (en) * 2015-09-10 2018-02-06 Green Almond Limited Application download and link correlation
US10397191B2 (en) * 2015-12-01 2019-08-27 Adobe Inc. Passing content securely from web browsers to computer applications
US10785327B2 (en) * 2016-06-02 2020-09-22 Google Llc Client device application interaction monitoring
US10542069B2 (en) * 2016-07-13 2020-01-21 Mobisave Llc System and method for providing a customized resource
AU2017101431B4 (en) 2016-10-26 2018-05-17 Apple Inc. User interfaces for browsing content from multiple content applications on an electronic device

Also Published As

Publication number Publication date
KR20200051670A (ko) 2020-05-13
KR102362108B1 (ko) 2022-02-14
WO2020091809A1 (en) 2020-05-07
US20210216614A1 (en) 2021-07-15
EP3673395B1 (en) 2021-06-23
JP2021503637A (ja) 2021-02-12
EP3673395A1 (en) 2020-07-01
CN111406257A (zh) 2020-07-10
US11544357B2 (en) 2023-01-03
CN111406257B (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
US8819444B2 (en) Methods for single signon (SSO) using decentralized password and credential management
US9401909B2 (en) System for and method of providing single sign-on (SSO) capability in an application publishing environment
US9378345B2 (en) Authentication using device ID
CN100581103C (zh) 安全地处理被用于基于web的资源访问的客户证书
US9009463B2 (en) Secure delivery of trust credentials
US20120036565A1 (en) Personal data protection suite
JP2016537696A (ja) フォームフィルプロキシアプリケーションによるウェブベースシングルサインオン
US9356924B1 (en) Systems, methods, and computer readable media for single sign-on (SSO) using optical codes
JP6914436B2 (ja) 認証のためのシステムおよび方法
CN110574350B (zh) 执行优先生成第二因素认证的方法和系统
JP2021519981A (ja) ブラウザクッキーの置換えとしてのドメイン固有ブラウザ識別子
US20080172750A1 (en) Self validation of user authentication requests
US10897458B1 (en) Enhancing secure client experience through selective encryption of cookies
EP4268101A1 (en) Authentication using device and user identity
JP2023015150A (ja) マルチパート持続性コンテンツを提供するためのシステムおよび方法
JP6894518B2 (ja) パラメータを介して認証情報を渡すこと
KR102365807B1 (ko) 도메인 포털을 통해 세션 고정을 방지하기 위한 시스템들 및 방법들
US11803635B2 (en) Passing local credentials to a secure browser session
CN112333134A (zh) 密码安全的动态第三方资源
CN110858243A (zh) 用于网关的页面获取方法和装置
EP3407561B1 (en) Systems and methods for preventing sessions fixation over a domain portal
KR20220000899A (ko) 웹뷰 내에서 콘텐츠 및 상호작용들을 확인

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200513

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210531

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210713

R150 Certificate of patent or registration of utility model

Ref document number: 6914436

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150