애플리케이션 API 액세스 관리

개발자가 하나 이상의 함수를 Verify 사용하는 애플리케이션을 구축하는 경우, 해당 애플리케이션은 해당 Verify API를 호출할 수 있는 권한이 있어야 합니다. 사내 애플리케이션을 API 액세스의 애플리케이션 API 클라이언트로 등록하여 고유한 클라이언트 ID와 시크릿을 할당하십시오.

시작하기 전에

  • 이 태스크를 완료하려면 관리 권한이 있어야 합니다.
  • 관리자 계정으로 관리 콘솔에 IBM® Verify 로그인하십시오.
참고: 적절한 권한을 가진 사용자만 클라이언트 시크릿을 볼 수 있습니다. 자세한 내용은 ‘권한에 대한 보안 업데이트’를 참조하세요.

이 태스크에 대한 정보

애플리케이션을 생성할 때 또는 나중에 편집 옵션을 사용하여 API 액세스 권한을 부여할 수 있습니다. 애플리케이션에 대해 API 클라이언트를 작성할 수 있으며 각 API 클라이언트는 다른 API 액세스 인타이틀먼트 세트를 포함할 수 있습니다.

토큰 발행 및 사용이 특정 IP 주소 범위로 제한되거나 이 범위를 제외할 수 있도록 IP 필터를 구현할 수도 있습니다.

OIDC 애플리케이션의 경우에는 SSO 클라이언트에 대한 API 액세스 인타이틀먼트도 구성할 수 있습니다. Verify해당 토큰은 애플리케이션에 로그인한 사용자가 수행할 수 있는 권한이 있는 작업으로만 제한됩니다.

프로시저

  1. API 액세스를 선택하세요.
  2. 애플리케이션 API 클라이언트를 작성하십시오.
    1. ‘API 클라이언트 추가’를 선택합니다.
    2. API 클라이언트에 대해 다음 정보를 지정하십시오.
      표 1. 애플리케이션 API 클라이언트
      정보 설명
      이름 API 클라이언트의 이름을 지정하십시오.
      참고: 영문자와 숫자, 그리고 다음 특수 문자만 사용할 수 있습니다:
      • -
      • .
      • _
      사용 가능

      API 클라이언트 사용 또는 사용 안함 여부를 표시합니다.

      사용 사용 가능 API 클라이언트는 액세스 권한이 있는 API를 호출할 수 있습니다.

      권한이 없는 API 클라이언트는 사용 안함 접근 권한이 있는 API를 포함하여 어떤 API도 호출할 수 없습니다.
      참고:
      • 이 설정이 적용되려면 최대 1분이 소요될 수 있습니다.
      • API 클라이언트에 유효한 기존 액세스 토큰이 있는 경우 API 호출을 계속할 수 있습니다. 액세스 토큰에는 제한된 유효 시간이 있습니다. 토큰이 2시간 후에 만료됩니다. 액세스 토큰이 만료되면 API 클라이언트가 API를 더 이상 호출할 수 없습니다.
      클라이언트 ID

      API 클라이언트의 고유한 ID입니다.

      API 클라이언트를 저장한 후에 이 정보는 API 클라이언트 목록에서 자동으로 생성되고 표시됩니다.

      클라이언트 시크릿

      API 클라이언트의 ID 검증을 위해 클라이언트 ID와 함께 사용됩니다.

      이는 애플리케이션 및 권한 서버에만 알려져야 하는 시크릿입니다.

      API 클라이언트를 저장한 후에 이 정보가 자동으로 생성됩니다. API 클라이언트 세부사항을 보십시오.

      클라이언트 인증 메소드 API 클라이언트에 대한 클라이언트 인증 방법을 표시합니다.
      다음 클라이언트 인증 메소드가 지원되는지 확인하십시오.
      • Default(기본 선택)
      • Client secret basic
      • Client secret POST
      • Private key JWT
      • 상호 TLS
        참고: 사용자 지정 애플리케이션에서는 상호 TLS 기능을 사용할 수 없습니다
      TLS 클라이언트 인증 속성 이 옵션은 상호 TLS 클라이언트 인증 메소드가 선택된 경우에만 표시됩니다.
      인증에 사용되는 인증 속성입니다.
      • 주제 DN
      • SAN DNS
      • SAN URI
      • SAN IP
      • SAN 이메일 주소
      TLS 클라이언트 인증 속성 값 이 옵션은 상호 TLS 클라이언트 인증 메소드가 선택된 경우에만 표시됩니다.

      인증에 사용되는 인증의 속성 값입니다.

      인증서 바인딩 액세스 토큰
      참고: 인증서 기반 액세스 토큰은 사용자 지정 애플리케이션에서는 사용할 수 없습니다
      생성된 토큰이 인증 바인드인지 여부를 표시합니다. 인증 바인딩 액세스 토큰에 대한 자세한 정보는 OpenID Connect 상호 TLS 클라이언트 인증 및 인증 바인드 액세스 토큰의 내용을 참조하십시오.
      클라이언트 권한 정보 JTI 유효성 검증 클라이언트 권한 정보 JWT의 JTI가 1회 사용에 대한 유효성이 검증되는지 여부를 표시합니다. 이 옵션은 클라이언트 시크릿 JWT 또는 개인 키 JWT 클라이언트 인증 메소드가 선택된 경우에만 표시됩니다.
      허용된 서명 확인 키 클라이언트 권한 정보 JWT를 검증하는 데 사용할 수 있는 서명 확인 키 ID입니다. 이 옵션은 개인 키 JWT 클라이언트 인증 메소드가 선택된 경우에만 표시됩니다.
      참고: 서명 검증 키를 수동으로 지정할 수 있습니다. 둘 이상의 서명 확인 키를 지정할 수 있습니다.
      JWKS URI 신뢰 당사자가 해당 공개 키를 JSON 웹 키(JWKS) 형식으로 게시하는 URI입니다. 이 URI는 JWT 서명 확인에 사용됩니다. 시스템이 연결할 수 없거나 응답이 없는 JWKS URI를 거부할 수 있습니다. JWKS 크기가 너무 큰 경우 시스템이 JWKS URI를 거부할 수도 있습니다. 신뢰 당사자가 JWKS URI를 게시하지 않으면 공개 키를 X509 인증서 양식으로 시스템에 추가할 수 있습니다. ‘인증서 관리’를 참조하십시오. 공용 인증서와 연관된 `이름(Friendly Name)`은 JWT의 키 ID(kid) 헤더입니다.
  3. 액세스 토큰 및 새로 고치기 토큰을 도난당하는 경우 무단 액세스 시간을 제한하도록 이러한 토큰을 구성하십시오.

    액세스 토큰은 보호된 리소스에 대한 액세스 권한을 부여하는 데 사용됩니다. 액세스 토큰이 만료되면 권한이 취소됩니다.

    표 2. 토큰 설정
    필드 설명
    액세스 토큰 만료(초)

    액세스 토큰의 만료 기간(초)을 설정합니다.

    클라이언트 애플리케이션이 손상되었을 때 도난당한 토큰을 사용하는 리소스에 공격자가 액세스할 수 있는 시간을 제한하려면 액세스 토큰 만료를 설정하십시오.

    양의 정수만 허용됩니다.

    기본값은 7200초입니다. 허용되는 최소값은 1초이고 최대값은 2147483647초입니다.

    액세스 토큰 형식 액세스 토큰이 불투명한 문자열로 생성되는지 여부를 나타내며, 이는Default설정 또는 JWT 형식으로.
  4. API 클라이언트 ID와 시크릿이 안전하게 분산되어 있는지 확인하기 위한 IP 필터를 구현하려면 다음 정보를 지정하십시오.
    표 3. IP 필터 설정
    필드 설명
    IP 필터링 사용

    IP 필터의 사용 또는 사용 안함 여부를 표시합니다.

    허용 목록. 거부 목록

    목록이 허용 또는 거부 목록인지 여부와 무관하게, 필터의 유형을 표시합니다.

    IP 필터링 사용이 사용으로 설정된 경우 필수입니다.

    IP 필터

    IP 필터 목록.

    IP 필터링 사용이 사용으로 설정된 경우 필수입니다.

    IP 필터는 단일 IP 주소, IP 범위 또는 IP 서브넷 마스크 양식입니다. IPv4 및 IPv6이 모두 지원됩니다. 예: 192.0.2.55, 192.0.2.55-192.0.2.61, 192.0.2.55/24, 2001:db8::1, 2001:db8::1-2001:db8::ff, 2001:db8:1234::/48.

  5. ID 토큰 및 JWT 형식 액세스 토큰에 대한 서명 속성을 지정하십시오. 신뢰 당사자는 해당 서명을 사용하여 토큰에 포함된 사용자 주장의 무결성과 진위 여부, 그리고 토큰에 서명한 OpenID Connect 신원 제공자의 진위 여부를 확인합니다.
    참고:

    서명 옵션은 사용자 지정 애플리케이션에서만 사용할 수 있습니다.

    표 4. 서명 옵션
    필드 설명
    서명 알고리즘

    ID 토큰과 JWT 형식의 액세스 토큰에 서명하는 데 사용되는 알고리즘입니다 Verify . Verify이 알고리즘은 신뢰 당사자가 등록한 알고리즘과 일치해야 합니다.

    다음 해시 알고리즘 중 하나를 선택하여 서명을 검증하십시오.
    • HS256
    • HS384
    • HS512
    • RS256(기본값)
    • RS384
    • RS512
    참고: 클라이언트 시크릿 생성을 선택하지 않은 경우 HS 알고리즘은 표시되지 않습니다.
    서명 인증서

    이 옵션은 RS 서명 알고리즘을 선택한 경우에만 표시됩니다.

    이 인증서를 사용하여 싱글 사인온 중에 ID 토큰 및 JWT 형식 액세스 토큰에 서명합니다.

    기본 선택 항목은 [ 구성 > 인증서 > 개인 인증서 ]에서 설정한 기본 개인 인증서를 의미합니다.

  6. ‘사용자 지정 범위 제한’ 확인란을 선택합니다.
    사용자 정의 범위 제한을 선택하면 플로우 끝에서 클라이언트에 부여되는 범위는 이 절에서 지정되는 범위로 제한됩니다. 권한 부여할 사용자 정의 범위 이름 및 설명을 입력하십시오. 범위 이름은 신뢰 당사자/클라이언트가 요청한 OAuth2/OIDC 범위를 참조합니다. 설명은 해당 범위에 대한 자세한 설명입니다. 더 많은 범위를 허용하려면 선택하세요.
  7. 액세스를 부여하려는 API를 선택하십시오. 자세한 내용은 ‘액세스 권한’을 참조하십시오.
    모두 선택오프로 설정되면, 클라이언트에 대해 액세스를 부여하려는 API를 선택하십시오. 모두 선택켜기로 설정되면 클라이언트에는 모든 API에 대한 액세스가 부여됩니다. 그러나 클라이언트에 액세스 권한을 부여하지 않으려는 API 선택란을 지울 수 있습니다.
    참고:
    • API를 호출할 초기 권한이 없는 API 클라이언트를 작성할 수 있습니다. 이후에 특정 API 액세스를 부여하도록 이를 편집할 수 있습니다.
    • 구독 플랜과 관련된 API만 선택할 수 있습니다.
    • OIDC 애플리케이션의 경우 애플리케이션 이름과 같은 클라이언트 이름을 가진 기본 클라이언트는 해당 애플리케이션에 대한 API 클라이언트의 목록에 있습니다. 애플리케이션이 삭제되거나 다른 사인온 메소드로 전환되지 않는 한 삭제할 수 없습니다.
  8. ‘저장’을 선택하세요.
    클라이언트 ID클라이언트 시크릿이 작성되고 애플리케이션 API 클라이언트가 작성됩니다.
  9. API 클라이언트 세부사항을 보십시오.
    • 검색 필드를 스크롤하거나 사용하여 API 클라이언트를 찾으십시오. 검색 항목과 일치하는 모든 클라이언트가 표시됩니다.
    • 정보를 보려는 API 클라이언트를 선택하십시오. API 클라이언트 세부 정보가 표시됩니다.
    • API 클라이언트 위에 마우스를 올린 후 표시되는 아이콘을 편집 선택하세요. API 클라이언트 편집 대화 상자가 표시됩니다.
      다음 옵션을 사용하십시오.
      • 를 선택하여 클립보드에 복사 클라이언트 ID 또는 시크릿을 클립보드에 복사하세요.
      • 클라이언트 시크릿을 보려면 표시을(를) 선택하십시오.
      • 클라이언트 시크릿을 숨기려면 숨기기을(를) 선택하십시오.
  10. API 클라이언트를 편집하십시오.
    1. 스크롤하여 API 클라이언트를 찾으십시오.
    2. API 클라이언트 위에 마우스를 올린 후 나타나는 아이콘을 편집 선택하세요.
      API 클라이언트 편집 대화 상자가 표시됩니다.
    3. 정보를 편집하십시오.
      기존 애플리케이션을 편집 중인 경우 다음 클라이언트 시크릿 옵션을 사용할 수 있습니다.
      • 클라이언트 시크릿을 보려면 표시을(를) 선택하십시오.
      • 클라이언트 시크릿을 숨기려면 숨기기을(를) 선택하십시오.
      • 를 선택하여 복사 클라이언트 ID 또는 시크릿을 클립보드에 복사하세요.
      • 회전된 클라이언트 시크릿을 보려면 을 선택하세요 목록 .
        • 목록에서 하나 이상의 회전된 클라이언트 시크릿을 선택한 다음, ‘삭제’를 클릭하여 삭제하십시오.
      • 새 클라이언트 시크릿을 생성하려면 재생성을(를) 선택하십시오. 클라이언트 시크릿이 손상되었다고 생각되면 이 옵션을 사용하십시오. 클라이언트 시크릿을 재생성하는 경우에는 애플리케이션의 모든 OAuth 클라이언트에서 클라이언트 시크릿을 업데이트해야 합니다.
        • '현재 시크릿 유지 ' 확인란을 선택하면 현재 클라이언트 시크릿이 순환되는 클라이언트 시크릿 목록에 추가됩니다.
        • ‘현재 시크릿 유지’ 확인란이 선택되어 있다면, 클라이언트 시크릿 설명과 만료 시간(브라우저 현지 시간 기준)을 선택하십시오. 만료 시간을 선택하지 않으면, 애플리케이션 설정에서 지정한 테넌트의 ‘교체된 비밀 키 유효 기간’이 적용됩니다.
        • 갱신된 클라이언트 시크릿은 해시 처리되어 더 이상 일반 텍스트로 복구할 수 없지만, 지정된 만료일까지는 계속 사용할 수 있습니다.
        • 확인 후 클라이언트 시크릿은 즉시 갱신됩니다. 새로운 클라이언트 시크릿이 화면에 표시됩니다.
    4. ‘저장’을 선택하세요.
  11. API 클라이언트를 삭제하십시오.
    1. 스크롤하여 API 클라이언트를 찾으십시오.
    2. 다음 옵션 중 하나에서 선택하십시오.
      • API 클라이언트를 선택하십시오. 세부사항 분할창이 표시되면 삭제를 선택하십시오.
      • 여러 API 클라이언트를 삭제하려면 API 클라이언트 옆의 선택란을 선택한 후 삭제를 선택하십시오.
    3. ‘삭제’를 선택하세요.
    4. 선택한 API 클라이언트를 삭제할지 확인하십시오. 애플리케이션이 저장되면 API 클라이언트가 영구적으로 삭제됩니다.