JSON Web Encryption(JWE)の構成

デフォルトでは、Auth0は、署名されたJSON Web Token (JWT)としてフォーマットされたアクセストークンを発行します。つまり、完全性は保護されていますが、それでもなおクライアントおよびその他仲介者が検査できることを意味します。これは、リソースサーバーにのみ公開されることを意図しているデータの情報プライバシーの損失につながる可能性があります。

アクセストークンの無許可の検査を防止するために、Auth0は、ネストされたJWTアクセストークの使用をサポートしています。これは、アクセス情報がJWTにサインインされ、その後暗号化されて、JSON Web Encryption(JWE)で表されます。情報がその他の当事者にとっては不明瞭であるものの、リソースサーバーは、これらアクセストークンの解読とJWTペイロードの署名の検証の両方を行うことが期待されます。

RSA鍵ペアの生成

JWEを使用するためにAPIを構成する前に、RSA鍵ペアを生成する必要があります。

秘密鍵は、秘密に保つ必要があります。RSA鍵ペアの生成で説明されている通りに、Auth0にPEMフォーマットでエンコードされた公開鍵をアップロードします。リソースサーバーまたはAPIサーバーのみが、秘密鍵に安全にアクセスして、アクセストークンを解読できます。

APIに対するJWEの構成

Auth0 Dashboardを使用して、APIに対するJWEを構成します。まず、APIに対して、[Token Settings(トークン設定)]の下にあるJSON Web Encryption(JWE)を有効にします。

要求されたら、JSON Web Encryption(JWE)キーを追加します。

  • 識別しやすいように、わかりやすい名前を入力します。

  • PEM形式でエンコードされた公開鍵を持つ証明書をアップロードします。

  • 暗号化アルゴリズムを選択します。

  • (任意)キー識別子を入力します。

[Add(追加)]をクリックし、JWEキーを保存することで、証明書のサムプリントが生成されます。

もっと詳しく