8.6. W3C 웹 인증(WebAuthn)


Red Hat Single Sign-On은 W3C 웹 인증(WebAuthn) 을 지원합니다. Red Hat Single Sign-On은 WebAuthn의 Relying Party(RP) 로 작동합니다.

참고

WebAuthn의 운영 성공 여부는 인증자, 브라우저 및 플랫폼을 지원하는 사용자의 WebAuthn에 따라 다릅니다. 인증자, 브라우저 및 플랫폼이 WebAuthn 사양을 지원하는지 확인합니다.

8.6.1. 설정

2FA에 대한 WebAuthn 지원 설정 절차는 다음과 같습니다.

8.6.1.1. WebAuthn authenticator 등록 활성화

  1. 메뉴에서 인증을 클릭합니다.
  2. 필요한 작업 탭을 클릭합니다.
  3. Register 를 클릭합니다.
  4. Required Action 드롭다운 목록을 클릭합니다.
  5. Webauthn Register 를 클릭합니다.
  6. 확인을 클릭합니다.

모든 새 사용자가 WebAuthn 자격 증명을 등록하도록 하려면 Default Action 확인란을 표시합니다.

8.6.1.2. 브라우저 흐름에 WebAuthn 인증 추가

  1. 메뉴에서 인증을 클릭합니다.
  2. browser flow 클릭합니다.
  3. 복사를 클릭하여 기본 제공 browser flow의 사본을 만듭니다.
  4. 복사의 이름을 입력합니다.
  5. 확인을 클릭합니다.
  6. WebAuthn browser - Conditional OTP 에 대한 Actions 링크를 클릭하고 삭제 를 클릭합니다.
  7. 삭제를 클릭합니다.

모든 사용자에게 WebAuthn이 필요한 경우:

  1. WebAuthn CloudEvent에 대한 Actions 링크를 클릭합니다.
  2. 실행 추가를 클릭합니다.
  3. 공급자 드롭다운 목록을 클릭합니다.
  4. WebAuthn Authenticator 를 클릭합니다.
  5. 저장을 클릭합니다.
  6. WebAuthn Authenticator에 대해 REQUIRED 를 클릭합니다.

    webauthn browser flow required

  7. 바인딩 탭을 클릭합니다.
  8. browsers flow 드롭다운 목록을 클릭합니다.
  9. WebAuthn browser를 클릭합니다.
  10. 저장을 클릭합니다.
참고

사용자에게 WebAuthn 자격 증명이 없는 경우 사용자는 WebAuthn 자격 증명을 등록해야 합니다.

WebAuthn 자격 증명만 등록된 경우 사용자는 WebAuthn으로 로그인할 수 있습니다. WebAuthn Authenticator 실행을 추가하는 대신 다음을 수행할 수 있습니다.

절차

  1. WebAuthn CloudEvent에 대한 Actions 링크를 클릭합니다.
  2. 흐름 추가를 클릭합니다.
  3. Alias (별칭) 필드에 "Conditional 2FA"를 입력합니다.
  4. 저장을 클릭합니다.
  5. 상태 2FA에 대해 CONDITIONAL 을 클릭합니다.
  6. Conditional 2FA 에 대한 Actions 링크를 클릭합니다.
  7. 실행 추가를 클릭합니다.
  8. 공급자 드롭다운 목록을 클릭합니다.
  9. 상태 - 사용자 구성 을 클릭합니다.
  10. 저장을 클릭합니다.
  11. Conditional 2FA에 대해 REQUIRED 를 클릭합니다.
  12. Conditional 2FA 에 대한 Actions 링크를 클릭합니다.
  13. 실행 추가를 클릭합니다.
  14. 공급자 드롭다운 목록을 클릭합니다.
  15. WebAuthn Authenticator 를 클릭합니다.
  16. 저장을 클릭합니다.
  17. 조건부 2FA대해 iPXENATIVE를 클릭합니다.

    webauthn browser flow conditional

사용자는 두 번째 요인으로 WebAuthn과 OTP를 사용할지 여부를 선택할 수 있습니다.

절차

  1. Conditional 2FA 에 대한 Actions 링크를 클릭합니다.
  2. 실행 추가를 클릭합니다.
  3. 공급자 드롭다운 목록을 클릭합니다.
  4. ITP 양식을 클릭합니다.
  5. 저장을 클릭합니다.
  6. 조건부 2FA대해 iPXENATIVE를 클릭합니다.

    webauthn browser flow conditional with OTP

8.6.2. WebAuthn authenticator로 인증

WebAuthn authenticator를 등록하면 사용자는 다음 작업을 수행합니다.

  • 로그인 양식을 엽니다. 사용자는 사용자 이름과 암호로 인증해야 합니다.
  • 사용자의 브라우저는 WebAuthn authenticator를 사용하여 인증하도록 사용자에게 요청합니다.

8.6.3. 관리자로 WebAuthn 관리

8.6.3.1. 인증 정보 관리

Red Hat Single Sign-On은 사용자 인증 정보 관리 의 다른 인증 정보와 마찬가지로 WebAuthn 자격 증명을 관리합니다.

  • Red Hat Single Sign-On은 사용자에게 Reset Actions 목록에서 WebAuthn 자격 증명을 생성하고 Webauthn Register 를 선택하는 데 필요한 작업을 할당합니다.
  • 관리자는 삭제를 클릭하여 WebAuthn 자격 증명을 삭제 할 수 있습니다.
  • 관리자는 Show data…​ 을 선택하여 AAGUID와 같은 인증 정보 데이터를 볼 수 있습니다.
  • 관리자는 User Label 필드에 값을 설정하고 데이터를 저장하여 인증 정보 레이블을 설정할 수 있습니다.

8.6.3.2. 정책 관리

관리자는 WebAuthn 관련 작업을 영역당 WebAuthn 정책 으로 구성할 수 있습니다.

절차

  1. 메뉴에서 인증을 클릭합니다.
  2. WebAuthn Policy 탭을 클릭합니다.
  3. 정책 내에서 항목을 구성합니다(아래 설명 참조).
  4. 저장을 클릭합니다.

구성 가능한 항목 및 설명은 다음과 같습니다.

설정설명

신뢰할 수 있는 엔티티 이름

읽을 수 있는 서버 이름입니다. WebAuthn Relying Party. 이 항목은 필수 항목이며 WebAuthn authenticator 등록에 적용됩니다. 기본 설정은 "keycloak"입니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

서명 알고리즘

알고리즘은 공개 키 자격 증명에 사용할 서명 알고리즘을 WebAuthn 인증자에게 알립니다. Red Hat Single Sign-On은 공개 키 자격 증명을 사용하여 인증 지원을 서명하고 확인합니다. 알고리즘이 없는 경우 기본 ES256 이 적용됩니다. ES256은 WebAuthn 인증자 등록에 적용되는 선택적 구성 항목입니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

당사자 ID 사용

공개 키 자격 증명 의 범위를 결정하는 WebAuthn Relying Party의 ID입니다. ID는 원본의 유효 도메인이어야 합니다. 이 ID는 WebAuthn 인증자 등록에 적용되는 선택적 구성 항목입니다. 이 항목이 비어 있으면 Red Hat Single Sign-On은 Red Hat Single Sign-On의 기본 URL의 호스트 부분을 조정합니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

제품 설명서 (Conveyance Preference)

브라우저의 WebAuthn API 구현(WebAuthn Client)은 Attestation 문을 생성하는 기본 방법입니다. 이 기본 설정은 WebAuthn authenticator 등록에 적용되는 선택적 구성 항목입니다. 옵션이 없는 경우 해당 동작은 "none"을 선택하는 것과 동일합니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

Authenticator 연결

WebAuthn Client에 대해 WebAuthn 인증 프로그램의 허용 가능한 첨부 패턴입니다. 이 패턴은 WebAuthn authenticator 등록에 적용되는 선택적 구성 항목입니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

Resident Key가 필요합니다.

WebAuthn 인증자가 필요한 옵션을 사용하여 공개 키 자격 증명을 클라이언트 측의 공개 키 인증 정보 소스로 생성합니다. 이 옵션은 WebAuthn 인증 도구 등록에 적용됩니다. 비워 두면 해당 동작은 "No"를 선택하는 것과 동일합니다. 자세한 내용은 WebAuthn Specification 을 참조하십시오.

사용자 확인 요구 사항

WebAuthn 인증자가 사용자 확인을 확인해야 합니다. 이는 WebAuthn Authenticator 등록 및 WebAuthn 인증자가 사용자 인증에 적용되는 선택적 구성 항목입니다. 옵션이 없는 경우 해당 동작은 "기본 설정"을 선택하는 것과 동일합니다. 자세한 내용은 WebAuthn 인증자가 사용자를 인증하기 위해 WebAuthn authenticator 및 WebAuthn Specification을 등록하기 위한 WebAuthn Specification을 참조하십시오.

Timeout

WebAuthn authenticator를 등록하고 WebAuthn authenticator를 사용하여 사용자를 인증하는 시간 초과 값(초)입니다. 0으로 설정하면 WebAuthn Authenticator 구현에 따라 동작이 달라집니다. 기본값은 0입니다. 자세한 내용은 WebAuthn 인증자가 사용자를 인증하기 위해 WebAuthn authenticator 및 WebAuthn Specification을 등록하기 위한 WebAuthn Specification을 참조하십시오.

Same Authenticator 등록 방지

활성화되어 있는 경우 Red Hat Single Sign-On은 이미 등록된 WebAuthn 인증자를 다시 등록할 수 없습니다.

허용 가능한 AAGUIDs

WebAuthn 인증자가 등록해야 하는 AAGUID의 흰색 목록입니다.

8.6.4. 검증 결과

WebAuthn authenticator를 등록할 때 Red Hat Single Sign-On은 WebAuthn 인증자가 생성한 검증 문의 신뢰할 수 있는지 확인합니다. Red Hat Single Sign-On에는 이를 위해 신뢰 앵커의 인증서가 필요합니다. Red Hat Single Sign-On은 Keycloak 신뢰 저장소를 사용하므로 이러한 인증서를 미리 가져와야 합니다.

이 검증을 생략하려면 이 신뢰 저장소를 비활성화하거나 WebAuthn 정책의 구성 항목 "Attestation Conveyance Preference"를 "none"으로 설정합니다.

8.6.5. WebAuthn 자격 증명 관리

8.6.5.1. WebAuthn authenticator 등록

WebAuthn 인증기를 등록하는 적절한 방법은 사용자가 Red Hat Single Sign-On에 계정을 이미 등록했는지 여부에 따라 달라집니다.

8.6.5.2. 새 사용자

WebAuthn Register 필수 작업이 영역의 기본 동작 인 경우 새 사용자는 처음 로그인한 후 WebAuthn 보안 키를 설정해야 합니다.

절차

  1. 로그인 양식을 엽니다.
  2. Register 를 클릭합니다.
  3. 양식의 항목을 입력합니다.
  4. Register 를 클릭합니다.

등록이 완료되면 브라우저가 사용자에게 WebAuthn authenticator 레이블의 텍스트를 입력하도록 요청합니다.

8.6.5.3. 기존 사용자

첫 번째 예제에 표시된 대로 WebAuthn Authenticator 가 설정된 경우 기존 사용자가 로그인하려고 할 때 WebAuthn Authenticator를 자동으로 등록해야 합니다.

절차

  1. 로그인 양식을 엽니다.
  2. 폼의 항목을 입력합니다.
  3. 저장을 클릭합니다.
  4. 로그인을 클릭합니다.

등록에 성공하면 사용자의 브라우저가 사용자에게 WebAuthn 인증자 레이블의 텍스트를 입력하도록 요청합니다.

8.6.6. 암호가 없는 WebAuthn과 Two-Factor

Red Hat Single Sign-On은 2단계 인증에 WebAuthn을 사용하지만 WebAuthn을 첫 번째 인증으로 사용할 수 있습니다. 이 경우 암호가 없는 WebAuthn 자격 증명을 가진 사용자는 암호 없이 Red Hat Single Sign-On에 인증할 수 있습니다. Red Hat Single Sign-On은 영역과 단일 인증 흐름 컨텍스트에서 WebAuthn을 암호 없이 2단계 인증 메커니즘으로 사용할 수 있습니다.

관리자는 일반적으로 WebAuthn 암호 없는 인증을 위해 사용자가 등록한 보안 키가 다른 요구 사항을 충족해야 합니다. 예를 들어 보안 키는 사용자가 CloudEvent를 사용하여 보안 키로 인증해야 하거나 더 강력한 인증 기관의 보안 키를 사용해야 할 수 있습니다.

이로 인해 Red Hat Single Sign-On을 통해 관리자는 별도의 WebAuthn 암호 없는 정책을 구성할 수 있습니다. Webauthn Register Passwordless action 유형 및 WebAuthn Passwordless Authenticator 유형의 인증기(Authn Passwordless Authenticator) 유형에는 필수 Webauthn Registerless 작업이 있습니다.

8.6.6.1. 설정

절차

다음과 같이 WebAuthn 암호 없는 지원을 설정합니다.

  1. WebAuthn 암호 없이 지원에 필요한 새로운 작업을 등록합니다. WebAuthn Authenticator 등록 활성화에 설명된 단계를 사용하십시오. Webauthn Register Passwordless 작업을 등록합니다.
  2. 정책을 구성합니다. 정책 관리에 설명된 단계 및 구성 옵션을 사용할 수 있습니다. WebAuthn Passwordless Policy 탭에서 Admin Console에서 구성을 수행합니다. 일반적으로 보안 키의 요구 사항은 2 단계 정책보다 강력합니다. 예를 들어 암호 없이 정책을 구성할 때 User Verification RequirementRequired 로 설정할 수 있습니다.
  3. 인증 흐름을 구성합니다. browsers 흐름에 WebAuthn 인증 추가에 설명된 WebAuthn browser 흐름을 사용합니다. 다음과 같이 흐름을 구성합니다.

    • WebAuthn CloudEvent forms 하위 흐름에는 첫 번째 인증자로서 Username Form 이 포함되어 있습니다. 기본 Username Password Form authenticator를 삭제하고 Username Form authenticator를 추가합니다. 이 작업을 수행하려면 사용자가 사용자 이름을 첫 번째 단계로 제공해야 합니다.
    • 필요한 하위 흐름(예: Passwordless 또는 Two-factor )이 있습니다. 이 하위 흐름은 사용자가 Passwordless WebAuthn 자격 증명 또는 Two-factor 인증을 사용하여 인증할 수 있음을 나타냅니다.
    • 이 흐름에는 첫 번째 대안으로 WebAuthn Passwordless Authenticator 가 포함되어 있습니다.
    • 두 번째 대안은 Password and Two-factor Webauthn 이라는 하위 흐름입니다. 예를 들면 다음과 같습니다. 이 하위 흐름에는 암호 양식과 Web Authn Authenticator 가 포함되어 있습니다.

흐름의 최종 구성은 다음과 유사합니다.

암호 없는 흐름

PasswordLess flow

이미 Red Hat Single Sign-On으로 알려진 사용자에게 필요한 작업으로 WebAuthn Register Passwordless 를 추가하여 이를 테스트할 수 있습니다. 첫 번째 인증 중에 사용자는 암호 및 두 번째 요소 WebAuthn 자격 증명을 사용해야 합니다. 사용자가 WebAuthn 암호 없는 자격 증명을 사용하는 경우 암호 및 두 번째 요소 WebAuthn 자격 증명을 제공할 필요가 없습니다.

8.6.7. LoginLess WebAuthn

Red Hat Single Sign-On은 2단계 인증에 WebAuthn을 사용하지만 WebAuthn을 첫 번째 인증으로 사용할 수 있습니다. 이 경우 암호가 없는 WebAuthn 자격 증명을 가진 사용자는 로그인 또는 암호를 제출하지 않고도 Red Hat Single Sign-On에 인증할 수 있습니다. Red Hat Single Sign-On은 영역 컨텍스트에서 loginless/passwordless 및 2 단계 인증 메커니즘으로 WebAuthn을 사용할 수 있습니다.

관리자는 일반적으로 WebAuthn 로그인리스 인증을 위해 사용자가 등록한 보안 키가 다른 요구 사항을 충족해야 합니다. 로그인되지 않은 인증에서는 사용자가 보안 키(예: CloudEvent 코드 또는 지문을 사용하여) 인증하고 로그인리스 자격 증명과 관련된 암호화 키가 보안 키에 물리적으로 저장되어야 합니다. 모든 보안 키가 이러한 종류의 요구 사항을 충족하는 것은 아닙니다. 장치가 '사용자 확인' 및 '기타 키'를 지원하는지의 보안 주요 공급 업체에 확인하십시오. 지원되는 보안 키 를 참조하십시오.

Red Hat Single Sign-On에서는 관리자가 로그인 없이 인증할 수 있는 방식으로 WebAuthn 암호 없는 정책을 구성할 수 있습니다. 로그인리스 인증은 WebAuthn Passwordless 정책 및 WebAuthn 암호 없는 자격 증명으로만 구성할 수 있습니다. WebAuthn 로그인리스 인증 및 WebAuthn 암호 없는 인증은 동일한 영역에서 구성할 수 있지만 동일한 정책 WebAuthn 암호 없는 정책을 공유합니다.

8.6.7.1. 설정

절차

다음과 같이 WebAuthn 로그인 없는 지원을 설정합니다.

  1. WebAuthn 암호 없이 지원에 필요한 새로운 작업을 등록합니다. WebAuthn Authenticator 등록 활성화에 설명된 단계를 사용하십시오. Webauthn Register Passwordless 작업을 등록합니다.
  2. WebAuthn 암호 없는 정책 구성 . WebAuthn Passwordless Policy 탭에서 Admin Console, Authentication 섹션에서 구성을 수행합니다. 로그인할 수 없는 시나리오에 대한 정책을 구성할 때 사용자 확인 요구 사항을 required 로 설정하고 Resident KeyYes 로 설정해야 합니다. 로그인리스 전용 정책이 없기 때문에 사용자 verification=no/resident key=no 및 loginless 시나리오(사용자 검증=yes/resident key=yes)와 인증 시나리오를 혼합할 수 없습니다. 스토리지 용량은 일반적으로 보안 키에 매우 제한되므로 보안 키에 많은 상주 키를 저장할 수 없습니다.
  3. 인증 흐름을 구성합니다. 새 인증 흐름을 만들고 "WebAuthn Passwordless" 실행을 추가하고 실행 요구 사항 설정을 필수로 설정합니다 .

흐름의 최종 구성은 다음과 유사합니다.

LoginLess flow

LoginLess flow

이제 이를 테스트하기 위해 이미 Red Hat Single Sign-On에 알려진 사용자에게 WebAuthn Register Passwordless 작업을 사용자에게 추가할 수 있습니다. 필요한 작업이 구성된 사용자는 인증해야 하며(예: 사용자 이름/암호 사용) 로그인이 없는 인증에 사용할 보안 키를 등록하라는 메시지가 표시됩니다.

8.6.7.2. 벤더별 공지 사항

8.6.7.2.1. 호환성 검사 목록

Red Hat Single Sign-On으로 로그인할 때 다음과 같은 기능을 충족하기 위해 보안 키가 필요합니다.

  • FIDO2 규정 준수: FIDO/U2F와 혼동되지 않음
  • 사용자 확인: 보안 키를 사용하여 사용자를 인증할 수 있는 기능(로그인 없이 인증할 수 있는 보안 키를 찾는 사람 포함)
  • Resident Key: 보안 키가 로그인 및 클라이언트 애플리케이션과 관련된 암호화 키를 저장할 수 있는 기능
8.6.7.2.2. Windows Hello

Windows Hello 기반 자격 증명을 사용하여 Red Hat Single Sign-On에 대해 인증하려면 RS256 값을 포함하도록 WebAuthn 암호 없는 정책의 서명 알고리즘 설정을 구성합니다. 일부 브라우저에서는 개인 창에서 플랫폼 보안 키(예: Windows Hello)에 대한 액세스를 허용하지 않습니다.

8.6.7.2.3. 지원되는 보안 키

다음 보안 키는 Red Hat Single Sign-On을 사용하여 로그인할 수 없는 인증을 성공적으로 테스트했습니다.

  • Windows Hello (Windows 10 21H1/21H2)
  • Yubico Yubikey 5 iPXE
  • 페리안 ePass FIDO-NFC
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.