클라이언트 시크릿 JWT 및 개인 키 JWT 생성
이 주제의 정보를 사용하여 클라이언트 인증을 위한 클라이언트 시크릿 JWT 및 개인 키 JWT를 작성하십시오.
JWT 전달자 페이로드 청구
JWT 전달자 페이로드에는 다음 청구가 포함되어야 합니다.| 청구 이름 | 설명 | 유효값 |
|---|---|---|
| iss | JWT를 발행한 엔티티의 고유 ID | 클라이언트 ID. |
| sub | 프린시펄 주제 ID | 클라이언트 ID. |
| aud | 유효한 값은 잘 알려진 엔드포인트(https://<tenantId>/oidc/endpoint/default/.well-known/openid-configuration)에 게시된 인증 서버의 발급자입니다. | https://<tenantId>/oidc/endpoint/default |
| exp | JWT 만료 시간 | UTC로 측정된 1970-01-01T0:0:0Z부터의 시간(초)입니다. 참고: JWT의 만료 시간은 86,400초를 초과할 수 없습니다. |
| jti | JWT ID | 임의로 생성된 opaque 문자열입니다. |
| 청구 이름 | 설명 | 유효값 |
|---|---|---|
| nbf | JWT 이전 시간이 아님 | UTC로 측정된 1970-01-01T0:0:0Z부터의 시간(초)입니다. |
| iat | JWT 작성 시간 | UTC로 측정된 1970-01-01T0:0:0Z부터의 시간(초)입니다. 참고: JWT 생성 시점은 과거 86,400초를 초과할 수 없습니다. |
JWT 페이로드 예제
```
{
"iss": "29e81c80-b507-463c-b542-5a1177b37808",
"sub": "29e81c80-b507-463c-b542-5a1177b37808",
"aud": "https://sometenant.ice.com/oidc/endpoint/default/token",
"exp": 1324298520,
"jti": "araiov8werli2awerlj"
}
```
지원되는 알고리즘
| 용도 | 지원되는 알고리즘 |
|---|---|
| 서명을 위한 JWS 'alg' | 'RS256', 'RS384', 'RS512', 'HS256', 'HS384', 'HS512', 'PS256', 'PS384', 'PS512 |
jwks_uri에서 게시되어 있는지 확인하십시오. jwks_uri를 사용할 수 없으면 공용 인증서를 시스템에 추가하십시오. ‘인증서 관리’를 참조하십시오.서명된 JWT에 사용되는 키를 고유하게 식별하기 위한 'kid' 헤더가 포함되어 있는지 확인하십시오.
요청 예제
JWT 토큰이 작성되고 나면, JWT를 클라이언트 권한 정보로 사용하여 토큰 엔드포인트에 요청을 제출할 수 있습니다.```
curl -ki https://<tenantId>/v1.0/endpoint/default/token
-d "grant_type=password&client_id=87df91dc-63de-4765-8701-b59cc8bd9e11&scope=openid
&client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer
&client_assertion=eyJhbGci..."
```client_assertion_type은 항상 urn:ietf:params:oauth:client-assertion-type:jwt-bearer여야 합니다.