SAML 2.0 특성을 HTTP 헤더로 제공

목차
casso12kr
목차
2
casso12kr
어설션 응답이 특성을 어설션에 포함할 수 있습니다. 이러한 특성을 HTTP 헤더 변수로 제공하면 클라이언트 응용 프로그램에서 해당 특성을 사용하여 세부적인 액세스 제어를 구현할 수 있습니다.
특성을 HTTP 헤더에 포함하여 얻을 수 있는 이점은 다음과 같습니다.
  • HTTP 헤더가 영구적이지 않습니다. 즉, HTTP 헤더가 포함된 요청이나 응답 내에서만 표시됩니다.
  • Single Sign-On
    웹 에이전트가 제공한 HTTP 헤더가 브라우저에 표시되지 않으므로 보안 문제가 줄어듭니다.
참고:
HTTP 헤더에는 특성이 초과할 수 없는 크기 제한이 있습니다.
Single Sign-On
에서는 헤더에 대한 웹 서버 크기 제한까지 헤더에 있는 특성을 보낼 수 있습니다. 헤더당 허용되는 어설션 특성은 하나뿐입니다. 헤더 크기 제한을 확인하려면 해당 웹 서버 설명서를 참조하십시오.
SAML 특성을 HTTP 헤더로 처리하기 위한 사용 사례
casso12kr
인증 중에 일련의 SAML 특성이 어설션에서 추출되어 HTTP 헤더로 제공됩니다. 권한 부여 프로세스 중에 이러한 헤더가 고객 응용 프로그램에 반환됩니다.
다음 순서도에서는 런타임 시 이벤트 순서를 보여 줍니다.
Processing SAML Headers as Attributes
CA Access Gateway는 웹 에이전트 및 웹 에이전트 옵션 팩을 대체하여 페더레이션 웹 서비스 응용 프로그램 기능을 제공할 수 있습니다. 이 순서도에서 웹 에이전트 블록은 CA Access Gateway에 포함된 웹 에이전트입니다. 
특성을 HTTP 헤더로 처리하기 위한 이벤트 순서는 다음과 같습니다.
  1. 어설션이 어설션 당사자 측에서 생성된 후 해당 어설션이 신뢰 당사자의 적절한 소비자 서비스에 전송됩니다. 전송 메커니즘(POST 또는 아티팩트 또는 WS-페더레이션)은 무관합니다.
    참고:
    소비자 서비스는 SAML 자격 증명 수집기(SAML 1.x), 어설션 소비자 서비스(SAML 2.0) 또는 보안 토큰 소비자 서비스(WS-페더레이션)일 수 있습니다.
  2. 소비자 서비스가 해당 로컬 정책 서버를 호출하여 구성된 인증 체계를 통해 어설션으로 사용자를 인증합니다.
  3. 인증 체계 리디렉션 모드 매개 변수가 PersistAttributes로 설정된 경우 정책 서버가 세션 저장소에 있는 특성을 세션 변수로 캐시합니다.
  4. 인증 결과가 소비자 서비스에 반환됩니다.
  5. 소비자 서비스가 브라우저를 보호된 대상 리소스로 리디렉션합니다.
  6. 브라우저가 대상 리소스 액세스를 시도합니다.
  7. 웹 에이전트가 정책 서버를 호출하여 사용자 세션의 유효성을 검사하고 사용자에게 대상 리소스에 대한 액세스 권한이 부여되었는지 확인합니다.
  8. 정책 서버가 구성된 응답별로 특성을 검색합니다.
  9. 정책 서버가 응답을 처리하고 특성을 웹 에이전트에 보냅니다.
  10. 웹 에이전트가 필요에 따라 HTTP 헤더를 설정합니다.
특성을 HTTP 헤더로 제공하기 위한 구성 개요
casso12kr
세션 저장소에 캐시된 SAML 특성을 검색하여 HTTP 헤더로 제공하려면 여러 구성 단계가 필요합니다.
다음 단계를 수행하십시오.
  1. SAML 인증 체계에 대한 리디렉션 모드로 "PersistAttributes"를 선택합니다. 그러면 SAML 특성이 HTTP 헤더로 반환될 수 있습니다.
  2. 대상 리소스가 포함된 영역에 대해 권한 부여 규칙을 구성합니다.
  3. 대상 리소스를 보호하는 영역에서 "PersistentRealm"을 설정합니다.
  4. 헤더로 제공할 SAML 특성 각각에 대해 활성 응답 유형을 사용하는 응답을 구성합니다.
  5. 권한 부여 규칙과 활성 응답을 바인딩하여 특성을 HTTP 헤더로 사용하도록 구현하는 정책을 생성합니다.
SAML 특성을 저장하도록 리디렉션 모드 설정
casso12kr
신뢰 당사자가 SAML 어설션으로 사용자를 인증한 후 SAML 특성이 세션 저장소에 기록됩니다. 그런 다음 브라우저가 대상 리소스로 리디렉션됩니다.
특성 데이터와 함께 브라우저를 리디렉션하려면
  1. 관리 UI에 로그인합니다.
  2. SAML 인증 체계의 구성 페이지로 이동합니다.
  3. "리디렉션 모드" 매개 변수를 "특성 유지"로 설정합니다. 다음과 같이 "리디렉션 모드" 필드를 찾습니다.
    • SAML 1.x
      "리디렉션 모드"는 기본 구성 페이지의 "체계 설정" 섹션에 있습니다.
    • SAML 2.0
      "SAML 2.0 구성", "SSO"를 차례로 클릭합니다. "리디렉션 모드"는 페이지의 "SSO" 섹션에 있습니다.
    • WS-페더레이션
      "WS-페더레이션 구성", "SAML 프로필"을 차례로 클릭합니다. "리디렉션 모드"는 페이지의 "SSO" 섹션에 있습니다.
  4. "제출"을 클릭하여 변경 내용을 저장합니다.
이제 리디렉션 모드가 특성 데이터를 전달하도록 설정되었습니다.
사용자의 유효성을 검사하기 위한 권한 부여 규칙 만들기
casso12kr
보호된 대상 리소스가 포함된 영역의 경우 세션 저장소에서 SAML 특성을 검색하기 위한 규칙을 생성하십시오.
규칙은 권한 부여 이벤트(onAccessAccept)를 기반으로 합니다. 사용자는 FWS 응용 프로그램에서 이미 인증되었습니다. 웹 에이전트는 사용자를 다시 인증하고 HTTP 헤더를 전달할 수 없습니다. 특성 검색은 권한 부여 단계에서 발생합니다.
영역에 대한 OnAccessAccept 규칙을 생성하려면
  1. 관리 UI에 로그온합니다.
  2. "정책", "도메인", "영역"으로 이동합니다.
  3. 대상 리소스가 포함된 영역을 선택합니다.
  4. "규칙" 섹션에서 "만들기"를 클릭합니다.
    "규칙 만들기" 페이지가 표시됩니다.
  5. 이름과 설명(선택 사항)을 입력합니다.
  6. "리소스" 필드에 별표(*)를 입력합니다.
  7. "작업" 섹션에서 "권한 부여 이벤트"와 "OnAccessAccept"를 선택합니다.
  8. "허용/거부 및 사용/사용 안 함" 섹션에서 "사용"을 선택합니다.
  9. "확인"을 클릭하여 규칙을 저장합니다.
이제 보호된 리소스가 포함된 영역에 대한 권한 부여 규칙이 정의되었습니다.
특성을 HTTP 헤더로 보내기 위한 응답 구성
casso12kr
SAML 특성을 웹 에이전트에 HTTP 헤더로 보내는 응답을 구성하십시오. 그러면 웹 에이전트가 응답을 처리하고 헤더 변수를 클라이언트 응용 프로그램에 제공합니다.
다음 단계를 수행하십시오.
  1. 관리 UI에 로그온합니다.
  2. "정책", "도메인", "도메인"으로 이동합니다.
  3. 대상 리소스에 대한 도메인을 선택하고 "수정"을 클릭합니다.
  4. "응답" 탭을 선택합니다.
  5. "만들기"를 클릭합니다.
    "응답" 대화 상자가 열립니다.
  6. 이름을 입력합니다.
  7. 에이전트 유형이
    Single Sign-On
    웹 에이전트인지 확인합니다.
  8. "응답 특성 만들기"를 클릭합니다.
    "응답 특성" 대화 상자가 열립니다.
  9. "특성" 필드에서 "WebAgent-HTTP-Header-Variable"을 선택합니다.
  10. "특성 종류"에서 "활성 응답"을 선택합니다.
  11. 다음과 같이 필드에 데이터를 입력합니다.
    • 변수 이름
      원하는 헤더 변수 이름을 지정합니다. 사용자가 이 이름을 할당합니다.
    • 라이브러리 이름
      smfedattrresponse
      이 값은 이 필드에 대한 항목이어야 합니다.
    • 함수 이름
      getAttributeValue
      이 값은 이 필드에 대한 항목이어야 합니다.
    • 매개 변수
      어설션에 나타나는 대로 특성 이름을 지정합니다.
      사용자와 페더레이션된 파트너 간의 계약에 따라 어설션에 있는 특성이 결정됩니다.
  12. "확인"을 클릭하여 특성을 저장합니다.
  13. HTTP 헤더 변수가 될 특성 각각에 대해 절차를 반복합니다. 단일 응답에 대해 여러 특성을 구성할 수 있습니다.
    "응답" 탭으로 돌아갑니다. 생성한 특성이 "특성 목록" 섹션에 나열됩니다.
  14. "확인"을 클릭하여 응답을 저장합니다.
    "응답" 탭으로 돌아갑니다.
  15. "제출"을 클릭하여 도메인을 저장합니다.
응답이 HTTP 헤더가 될 특성을 웹 에이전트에 보냅니다.
특성을 HTTP 헤더로 구현하기 위한 정책 만들기
casso12kr
SAML 특성을 HTTP 헤더로 사용하도록 구현하려면 정책에서 권한 부여 이벤트 규칙과 활성 응답을 함께 그룹화하십시오.
다음 단계를 수행하십시오.
  1. 관리 UI에 로그온합니다.
  2. "정책", "도메인", "도메인"으로 이동합니다.
  3. 대상 리소스가 포함된 도메인을 선택하고 "수정"을 클릭합니다.
  4. "정책" 탭을 선택하고 "정책" 섹션에서 "만들기"를 클릭합니다.
    "정책 만들기" 대화 상자가 열립니다.
  5. "이름" 필드에 설명이 포함된 이름을 입력합니다.
  6. "사용자" 탭에서 보호된 리소스에 액세스할 수 있는 사용자를 선택합니다.
  7. "규칙" 탭에서 이전에 생성한 권한 부여 규칙을 추가합니다.
  8. 권한 부여 규칙을 선택하고 "응답 추가"를 클릭합니다.
    "사용 가능한 응답" 대화 상자가 열립니다.
  9. 이전에 생성한 활성 응답을 선택하고 "확인"을 클릭합니다.
    "규칙" 탭으로 돌아갑니다. 권한 부여 규칙과 함께 응답이 나타납니다.
  10. "제출"을 클릭하여 정책을 저장합니다.
SAML 특성이 HTTP 헤더로 사용되도록 설정하는 정책이 완성되었습니다.