2.5. FAPI(Financial-grade API) 지원
Red Hat Single Sign-On을 사용하면 관리자가 클라이언트가 다음 사양을 준수하는지 쉽게 확인할 수 있습니다.
이 규정 준수는 Red Hat Single Sign-On 서버에서 사양에 언급된 권한 부여 서버의 요구 사항을 확인합니다. Red Hat Single Sign-On 어댑터는 FAPI에 대한 구체적인 지원이 없으므로 클라이언트(애플리케이션) 측에서 필요한 검증을 수동으로 또는 기타 타사 솔루션을 통해 수행해야 할 수도 있습니다.
2.5.1. FAPI 클라이언트 프로필 링크 복사링크가 클립보드에 복사되었습니다!
클라이언트가 FAPI 준수 여부를 확인하기 위해 서버 관리 가이드에 설명된 대로 해당 영역에서 클라이언트 정책을 구성하고 각 영역에서 자동으로 사용할 수 있는 FAPI 지원을 위해 글로벌 클라이언트 프로필에 연결할 수 있습니다. 클라이언트가 준수하는 데 필요한 FAPI 프로파일을 기반으로 fapi-1-baseline 또는 fapi-1-advanced 프로필을 사용할 수 있습니다.
푸시된 권한 부여 요청(PAR) 을 사용하려면 클라이언트가 fapi-1-baseline 프로필과 PAR 요청에 fapi-1-advanced 를 모두 사용하는 것이 좋습니다. 특히 fapi-1-baseline 프로필에는 pkce-enforcer executor가 포함되어 있어 클라이언트가 보안 S256 알고리즘과 함께 PKCE를 사용하도록 합니다. PAR 요청을 사용하지 않는 한 FAPI Advanced 클라이언트에는 이 작업이 필요하지 않습니다.
FAPI 호환 방식으로 CIBA 를 사용하려는 경우 클라이언트가 fapi-1-advanced 및 fapi-ciba 클라이언트 프로필을 둘 다 사용하는지 확인하십시오. fapi-ciba 프로필에는 CIBA별 executors 만 포함되어 있으므로 요청된 executor가 포함된 fapi-1-advanced 프로필 또는 요청된 executor가 포함된 기타 클라이언트 프로필을 사용해야 합니다. FAPI CIBA 사양의 요구 사항을 강제 적용하는 경우 기밀 클라이언트 또는 인증서 바인딩 액세스 토큰 적용과 같은 추가 요구 사항이 필요합니다.
2.5.2. OpenBanking CloudEventsil iPXE-grade API Security Profile 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Single Sign-On은 OpenBanking CloudEventsil CHAP-grade API Security Profile 1.0 Implementers DServiceVersion 2를 준수합니다. 이는 일부 요구 사항보다 FAPI 1 고급 사양보다 엄격한 요구사항이므로 일부 요구 사항을 적용하기 위해 클라이언트 정책을 보다 엄격하게 구성해야 할 수 있습니다. 특히 다음과 같습니다.
-
클라이언트가 PAR을 사용하지 않는 경우 암호화된 OIDC 요청 오브젝트를 사용하는지 확인합니다. 이를 위해 필요한
Encryption Required로 구성된secure-request-objectexecutor가 있는 클라이언트 프로필을 사용할 수 있습니다. -
JWS의 경우 클라이언트는
PS256알고리즘을 사용합니다. JWE의 경우 클라이언트는A256GCM과 함께RSA-OAEP를 사용해야 합니다. 이러한 알고리즘이 적용되는 모든 클라이언트 설정에서 이를 설정해야 할 수 있습니다.
2.5.3. TLS 고려 사항 링크 복사링크가 클립보드에 복사되었습니다!
기밀 정보가 교환되면 모든 상호 작용은 TLS(HTTPS)로 암호화됩니다. 또한 사용되는 암호화 제품군 및 TLS 프로토콜 버전에 대한 FAPI 사양에는 몇 가지 요구 사항이 있습니다. 이러한 요구 사항에 맞게 허용된 암호를 구성하는 것이 좋습니다. 이 구성은 Elytron 하위 시스템의 KEYCLOAK_HOME/standalone/configuration/standalone-*.xml 파일에서 수행할 수 있습니다. 예를 들어 이 요소는 tls server-ssl-contexts아래에 추가할 수 있습니다.
<server-ssl-context name="kcSSLContext" want-client-auth="true" protocols="TLSv1.2" \
key-manager="kcKeyManager" trust-manager="kcTrustManager" \
cipher-suite-filter="TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" protocols="TLSv1.2" />
kcKeyManager 및 kcTrustManager 에 대한 참조는 해당 Keystore 및 Truststore를 참조합니다. 자세한 내용과 네트워크 설정 섹션 또는 X.509 인증 섹션 과 같은 Red Hat Single Sign-On 문서의 기타 부분은 Wildfly Elytron 하위 시스템 설명서를 참조하십시오.