외부 공급업체 토큰을 수락하기 위한 OAuth OIDC 제공자 구성
1회 사용자 인증(SSO) 옵션(복수 제공자 SSO)을 사용하여 인바운드 API 호출을 통해 외부 공급업체 OIDC 제공자가 생성한 ID 토큰을 수락하도록 OAuth OpenID Connect(OIDC) 제공자를 구성합니다.
시작하기 전에
이 태스크 정보
ServiceNow AI Platform 는 인바운드 API 호출 외에도 외부 SSO(Single Sign-On) 구현을 통해 OIDC(OpenID Connect)를 지원합니다.
OIDC 제공자 구성의 예는 다음 문서를 참조하십시오 Set up Microsoft Entra ID spoke. OIDC 제공자 구성의 SSO별 예는 다음 문서를 참조하십시오 1회 사용자 인증(SSO)에 대한 OIDC(OpenID Connect) 구성 만들기.
프로시저
다음은 REST API 호출을 호출하는 cURL 요청의 예입니다
REST API 호출을 호출합니다.다음 단계를 수행합니다.
- OpenID Connect 제공자에 앱을 등록합니다.
- OAuth OIDC 엔터티를 구성합니다.
- OIDC 제공자를 구성합니다.
표 1. OIDC 제공자 OIDC 제공자 OIDC 제공자의 이름입니다. OIDC 메타데이터 URL OIDC 메타데이터 URL(잘 알려진 구성 URL)을 지정합니다. 이 정보는 공개 키를 가져와 jwks 엔드포인트를 통해 토큰을 확인하는 데 사용됩니다. 사용자 클레임 사용자 테이블에 대해 확인된 클레임입니다. 사용자 필드 사용자 기록을 식별하는 사용자 클레임입니다. JTI 클레임 검증 사용 사용하도록 설정하면 ServiceNow JWT 토큰 확인에서 제공자가 보낸 JTI도 확인합니다. 주:확인을 선택하지 않으면 JWT 토큰에 있는지 여부에 관계없이 JTI 를 확인할 수 없습니다. 토큰의 클레임 이름은 jti여야 합니다. 이 정보는 재생 공격을 방지하는 데 사용됩니다. - JWT 토큰을 가져옵니다.
- REST API 호출을 호출합니다.
- 테이블 API 또는 스크립트된 웹 서비스에 액세스하기 위한 인증 헤더의 ID 토큰입니다.
curl -X GET --header "Accept:application/json" https://<instance_name>.service-now.com/api/now/table/incident/897b04f2dbd4a300a135364e9d961952 -k --header "Authorization: Bearer eyJraWQiOiJjNTZtZTlXU0xPVnY3UFMwcTg4Qzl1b0lzNjFQYTdmUG4yZFVFOW9RNUg4IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIwMHVnZDg1OD VkczI1WXpUSjBoNyIsIm5hbWUiOiJpbXJhbiBhbGkiLCJsb2NhbGUiOiJlbi1VUyIsImVtYWlsIjoiaW1yb241NDNAZ21haWwuY29tIiwidmVyIjoxLCJpc3MiOiJodHRwczovL2Rldi05MzQ xMjEub2t0YXByZXZpZXcuY29tIiwiYXVkIjoiMG9hZ2Q4bzk3a2lCT3dwd0IwaDciLCJpYXQiOjE1Mzc5MzMzMjYsImV4cCI6MTUzNzkzNjkyNiwianRpIjoiSUQueThVdXpWNUg2bm16SzRs OTI1RFVrQnJoR1o1MmJzVVpGVHRVTEphQjg3ayIsImFtciI6WyJwd2QiXSwiaWRwIjoiMDBvZ2Q4NTgycEFqZDZTemcwaDciLCJub25jZSI6InNub3ciLCJwcmVmZXJyZWRfdXNlcm5hbWUiO iJpbXJvbjU0M0BnbWFpbC5jb20iLCJnaXZlbl9uYW1lIjoiaW1yYW4iLCJmYW1pbHlfbmFtZSI6ImFsaSIsInpvbmVpbmZvIjoiQW1lcmljYS9Mb3NfQW5nZWxlcyIsInVwZGF0ZWRfYXQiOj E1Mzc5MzAxOTcsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJhdXRoX3RpbWUiOjE1Mzc5Mjk2NjF9.OG87SYxWFgHGlhBYby2H79diRm9rlYZTeEkIINRUatwg-p4739htB8xEY-5_t6yU_6k5w1 0pdgtt5M5QFZRPXVbQZNoGtY-Bxn0BjaimcFgoWfhY_0ldnGTkzN2RYyIHvrf9-yhxg347zvczmLrgMMa_VwG4rxrtE6rUXaIpIeIK5b-Deq8ADz8UTUTKpF_5RWk4X-oh5xK6BLniFHk4ShO Zq2v_mjproXwKk5euJKrVrar2lQ4adZCOSTRuTf3ThMO5WDh0sel-82LngXtLzRJJ51IqxAsXns0kJHLLqLtH1hXNRKfwT1ScQoE_OfWm4t0KryI2j4wSMEanFtLXIw" - 사용자가 인증되면 유효한 application/json 응답이 반환됩니다. 그렇지 않으면 "사용자 미인증" 오류 메시지가 반환됩니다.
User Not Authenticated {"error":{"message":"User Not Authenticated","detail":"Required to provide Auth information"},"status":"failure"}
- 테이블 API 또는 스크립트된 웹 서비스에 액세스하기 위한 인증 헤더의 ID 토큰입니다.