JWT(JSON web token)는 두 당사자 간에 정보를 안전하게 전송하는 데 사용되는 표준화되고 필요에 따라 검증되고 암호화된 형식입니다.

HTTP ACCESS 단계에서 사용자는 클라이언트에서 제공된 JWT의 유효성을 검사하고, 백엔드 서버에 대한 JWT를 제거하도록 작업을 정의할 수 있습니다.

로드 밸런서 규칙은 일치 유형에 대해 정규식을 지원합니다. PCRE 스타일 REGEX 패턴이 지원되지만 고급 사용 사례에 대한 몇 가지 제한 사항이 있습니다. REGEX가 일치 조건에서 사용되면 명명된 캡처링 그룹이 지원됩니다. 로드 밸런서 규칙의 정규식 항목을 참조하십시오.

사전 요구 사항

계층 7 HTTP 가상 서버를 사용할 수 있는지 확인합니다. 계층 7 HTTP 가상 서버 추가 항목을 참조하십시오.

프로시저

  1. 계층 7 HTTP 가상 서버를 엽니다.
  2. [로드 밸런서 규칙] 섹션에서 [HTTP 액세스 단계] 옆에 있는 설정 > 규칙 추가를 클릭하여 HTTP 요청 재작성 단계에 대한 로드 밸런서 규칙을 구성합니다.
  3. 드롭다운 메뉴에서 일치 조건을 선택합니다. 일치 조건은 로드 밸런서를 통과하는 애플리케이션 트래픽을 일치시키는 데 사용됩니다. 하나의 로드 밸런서 규칙에 여러 일치 조건을 지정할 수 있습니다. 각 일치 조건은 애플리케이션 트래픽에 대한 기준을 정의합니다.
    지원되는 일치 조건 설명
    HTTP 요청 메서드 HTTP 요청 메서드를 일치시킵니다.

    http_request.method - 일치시킬 값

    HTTP 요청 URI 쿼리 인수 없이 HTTP 요청 URI를 일치시킵니다.

    http_request.uri - 일치시킬 값

    HTTP 요청 URI 인수 HTTP 요청 URI 쿼리 인수를 일치시킵니다.

    http_request.uri_arguments - 일치시킬 값

    HTTP 요청 버전 HTTP 요청 버전을 일치시킵니다.

    http_request.version - 일치시킬 값

    HTTP 요청 헤더 HTTP 요청 헤더를 일치시킵니다.

    http_request.header_name - 일치시킬 헤더 이름

    http_request.header_value - 일치시킬 값

    HTTP 요청 쿠키 HTTP 요청 쿠키를 일치시킵니다.

    http_request.cookie_value - 일치시킬 값

    HTTP 요청 본문 HTTP 요청 본문 컨텐츠를 일치시킵니다.

    http_request.body_value - 일치시킬 값

    TCP 헤더 포트 TCP 소스 또는 대상 포트를 일치시킵니다.

    tcp_header.source_port - 일치시킬 소스 포트

    tcp_header.destination_port - 일치시킬 대상 포트
    IP 헤더 소스 HTTP 메시지의 IP 헤더 텍스트 상자를 일치시킵니다. 소스 유형은 단일 IP 주소, IP 주소 범위 또는 그룹이어야 합니다. 그룹 추가 항목을 참조하십시오.
    • IP 헤더 소스를 선택한 경우 IP 주소 소스 유형을 사용하면 HTTP 메시지의 소스 IP 주소는 그룹에 구성된 IP 주소와 일치해야 합니다. IPv4 및 IPv6 주소가 둘 다 지원됩니다.
    • 그룹 소스 유형으로 IP 헤더 소스를 선택한 경우 드롭다운 메뉴에서 그룹을 선택합니다.

    ip_header.source_address - 일치시킬 소스 주소

    ip_header.destination_address - 일치시킬 대상 주소
    변수 변수를 생성하고 변수에 값을 할당합니다.
    클라이언트 SSL 클라이언트 SSL 프로파일 ID를 일치시킵니다.

    ssl_profile_id - 일치시킬 값

    대/소문자 구분 HTTP 헤더 값 비교에 대/소문자 구분 플래그를 설정합니다. True이면 HTTP 본문 값을 비교할 때 대/소문자가 중요합니다.
  4. 드롭다운 목록에서 일치 유형으로 다음으로 시작, 다음으로 끝남, 같음, 다음 포함, 정규식 일치 중 하나를 선택합니다.
  5. 필요한 경우 URI를 입력합니다.
  6. 드롭다운 목록에서 전략 일치를 선택합니다.
    전략 일치 설명
    임의 이 규칙을 일치 항목으로 간주하기 위해 호스트 또는 경로가 일치할 수 있습니다.
    모두

    이 규칙을 일치 항목으로 간주하기 위해 호스트 및 경로가 둘 다 일치해야 합니다.

  7. 드롭다운 메뉴에서 작업을 선택합니다.
    작업 설명
    JWT 인증
    JWT(JSON Web Token)는 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 간편하고 자체적인 방법을 정의하는 개방형 표준입니다. 디지털로 서명되었기 때문에 이 정보를 확인하고 신뢰할 수 있습니다.
    • 영역 - 보호된 영역에 대한 설명입니다. 지정된 영역이 없으면 클라이언트는 종종 형식이 지정된 호스트 이름을 표시합니다. 클라이언트 요청이 401 http 상태를 나타내며 거부되면 구성된 영역이 반환됩니다. 응답은 "WWW-Authentication: Bearer realm=<realm>"입니다.
    • 토큰 - 이 매개 변수는 선택 사항입니다. 로드 밸런서는 검색될 때까지 JWT 메시지에 대해 지정된 모든 토큰을 하나씩 검색합니다. 찾을 수 없거나 이 텍스트 상자를 구성하지 않은 경우 로드 밸런서는 http 요청 "Authorization: Bearer <token>"에서 기본적으로 전달자 헤더를 검색합니다.
    • 키 유형 - 대칭 키 또는 비대칭 공용 키(certificate-id)
    • JWT 유지 - JWT를 보존하고 백엔드 서버에 전달하는 플래그입니다. 사용하지 않도록 설정하면 백엔드 서버에 대한 JWT 키가 제거됩니다.
    연결 삭제

    부정을 사용하도록 설정한 경우 연결 삭제가 구성되면 지정된 일치 조건과 일치하지 않는 모든 요청이 삭제됩니다. 지정된 일치 조건과 일치하는 요청은 허용됩니다.

    변수 할당

    사용자가 결과를 다른 로드 밸런서 규칙 단계에서 조건으로 사용할 수 있도록 HTTP 액세스 단계의 변수에 값을 할당할 수 있습니다.

  8. 저장적용을 클릭합니다.