デスクトップ/モバイルメニュー統合セキュリティ
概要
デスクトップおよびモバイルのWalkMeメニューは、統合に接続する際に2つのセキュリティ保護基準を使用します:
- APIキー - アプリケーションのすべてのユーザーに同じ権限レベル 管理者がコンソールで統合を有効にすると、デフォルトで自動的に接続されます。
- OAuth2.0 - 実際に接続されたアプリケーションのユーザー権限に基づく権限レベル 統合には、管理者がコンソールでそれを有効にした後、ユーザーの同意(アプリを手動で接続)を得ることが必要です。
OAuth2.0とは
OAuth 2.0は、安全なデータ共有規格です。 この認証および承認規格は、ユーザーの身元や資格情報を漏らすことなくデータへのアクセスを提供することで、ユーザーデータを保護します。 これは、メニューがパスワードやその他の機密情報にアクセスすることなく、エンタープライズ検索やホーム画面ウィジェットにデータが表示されるよう要求する為です。
OAuth 2.0では、ユーザーの認証情報を漏らすことなく、アプリケーションが相互のデータにアクセスできます。 これは、承認サーバーが発行するトークンを使用して行われます。トークンはリソースサーバー上の保護されたリソースにアクセスするために使用されます。
クレジットカード番号、医療記録、銀行明細、パスワードなどの機密データは遠隔に保存され、トークンIDが付与されるため、加盟店やサードパーティ(この場合メニュー)がアクセスすることはありません。
OAuth 2.0の利点
ユーザーのパスワードがサードパーティ統合(この場合メニュー)によって公開されないことを除けば、OAuth 2.0の主な利点の1つは、ユーザーがいつでもリソースへのアクセスを無効にできることです。 ユーザーがこのサードパーティ統合が不要になった場合、アプリケーションのリソースへのアクセスを単純に無効にできます。 これは、従来のユーザー名とパスワード認証では不可能であり、ユーザーがアクセスを無効にするためにパスワードを変更する必要があることを覚えておく必要があります。
さらに、OAuth 2.0はさまざまな認可タイプをサポートしており、これにより承認サーバーはさまざまな方法でトークンを発行できます。 この柔軟性により、承認サーバーはクライアントとユーザーの特定の要件に基づいて最も安全な許可タイプを選択し、事前定義されたスコープに従って最も関連性の高いデータのみを共有できます。
OAuth 2.0は、ウェブサーバーとブラウザ間のデータのプライベート性を確保するためにSSL(Secure Sockets Layer)に依存する柔軟なプロトコルを備えています。 SSLは、暗号化業界のプロトコルを使用してデータの安全を維持します。
リフレッシュトークンの暗号化
デスクトップ/モバイルメニューに新しいアクセストークンが付与されるたびに、アプリケーションはアクセストークンとリフレッシュトークンの両方を暗号化してリモートデータベースに保存します。
暗号化プロセスでは、最初のブートストラップ時、個々のトークン用に一意のプライベートキー(「salt」)が生成され、ローカルマシンのキーチェーンに保存されます。
Saltはかけがえのないものであり、復元も不可能です。失うとアクセストークンが無効になります。 このセキュリティ対策は、極秘データにアクセスする際にIDのなりすましを防ぐために実施しています。
以下の図をご覧になり、Saltの生成と保存の流れを確認してください:
エンタープライズ検索セキュリティ
エンタープライズサーチは、サードパーティーの統合を使用して「federal search(連邦捜索)」を実装します。 メニュー内の検索は、NLPエンジンと優れたユーザーエクスペリエンスをサポートするグラフデータベースによって支えられています。
WalkMeメニューエンタープライズ検索は、個別に検索可能なデータベース上のサードパーティデータのインデックス化は行いません。 検索アルゴリズムを表した以下のシーケンスダイアグラムをご覧ください。
キャッシュレイヤーは、結果を5分間保存します。
各アダプターサービスは、サードパーティにアクセスしなければ意味をなさない結果の一意の識別子を作成し、グラフデータベースに保存します。