7.6.4. Eclipse Vert.x SSO アダプター設定
SSO アダプターは、クライアント側、または SSO サーバーのクライアントで、Web リソースのセキュリティーを強制するコンポーネントです。ここでは、これは greeting サービスです。
セキュリティーの確率
router.route("/greeting")
.handler(JWTAuthHandler.create(
JWTAuth.create(vertx,
new JWTAuthOptions()
.addPubSecKey(new PubSecKeyOptions()
.setAlgorithm("RS256")
.setPublicKey(System.getenv("REALM_PUBLIC_KEY")))
.setPermissionsClaimKey("realm_access/roles"))));
ここでのエンフォーサーは、レルム公開鍵の PEM 形式を使用して設定され、アルゴリズムを指定します。さらに、エンフォーサーは keycloak JWT を消費するように設定されているため、トークンにパーミッション要求の場所を提供する必要もあります。
以下は、デプロイメント環境変数から再構築された JSON ファイルです。このファイルは、Web インターフェースを介してアプリケーションと対話する際に使用されます。
JsonObject keycloakJson = new JsonObject()
.put("realm", System.getenv("REALM"))
.put("auth-server-url", System.getenv("SSO_AUTH_SERVER_URL"))
.put("ssl-required", "external")
.put("resource", System.getenv("CLIENT_ID"))
.put("credentials", new JsonObject()
.put("secret", System.getenv("SECRET")));