여러 서비스 ID 공급자 구성
Microsoft Entra ID 외에도 서비스가 이미 있거나 새로 만들어졌는지 여부에 관계없이 FHIR® 서비스에 대해 최대 2개의 추가 ID 공급자를 구성할 수 있습니다.
ID 공급자 필수 구성 요소
ID 공급자는 OIDC(OpenID Connect)를 지원해야 하며, fhirUser
클레임, azp
또는 appid
클레임 및 SMART on FHIR v1 범위가 있는 scp
클레임을 사용하여 JWT(JSON Web Token)를 발급할 수 있어야 합니다.
ARM(Azure Resource Manager)을 사용하여 추가 ID 공급자 사용
추가 ID 공급자를 사용하도록 설정하려면 smartIdentityProviders
FHIR 서비스에 요소authenticationConfiguration
를 추가합니다. smartIdentityProviders
요소는 선택적입니다. 이를 생략하면 FHIR 서비스는 Microsoft Entra ID를 사용하여 요청을 인증합니다.
요소 | Type | 설명 |
---|---|---|
smartIdentityProviders | array | 최대 두 개의 ID 공급자 구성을 포함하는 배열입니다. 이 요소는 선택적입니다. |
authority | string | ID 공급자 토큰 기관입니다. |
적용 | array | ID 공급자 리소스 애플리케이션 구성의 배열입니다. |
clientId | string | ID 공급자 리소스 애플리케이션(클라이언트) ID입니다. |
대상 | string | 액세스 토큰 aud 클레임의 유효성을 검사하는 데 사용됩니다. |
allowedDataActions | array | ID 공급자 리소스 애플리케이션이 수행할 수 있는 권한 배열입니다. |
{
"properties": {
"authenticationConfiguration": {
"authority": "string",
"audience": "string",
"smartProxyEnabled": "bool",
"smartIdentityProviders": [
{
"authority": "string",
"applications": [
{
"clientId": "string",
"audience": "string",
"allowedDataActions": "array"
}
]
}
]
}
}
}
smartIdentityProviders
배열 구성
Microsoft Entra ID 외에 ID 공급자가 필요하지 않은 경우 smartIdentityProviders
배열을 null로 설정하거나 프로비전 요청에서 생략합니다. 그렇지 않으면 배열에 하나 이상의 유효한 ID 공급자 구성 개체를 포함합니다. 최대 두 개의 추가 ID 공급자를 구성할 수 있습니다.
authority
지정
구성한 각 ID 공급자에 대해 authority
문자열을 지정해야 합니다. authority
문자열은 ID 공급자에 대한 액세스 토큰을 발급하는 토큰 기관입니다. FHIR 서비스는 authority
문자열이 잘못되었거나 올바르지 않은 경우 401 Unauthorized
오류 코드가 있는 요청을 거부합니다.
프로비저닝 요청을 만들기 전에 openid-connect 구성 엔드포인트를 확인하여 authority
문자열의 유효성을 검사합니다. authority
문자열의 끝에 /.well-known/openid-configuration을 추가하고 브라우저에 붙여넣습니다. 예상된 구성이 표시됩니다. 그렇지 않으면 문자열에 문제가 있는 것입니다.
예시:
https://yourIdentityProvider.com/authority/v2.0/.well-known/openid-configuration
applications
배열 구성
하나 이상의 애플리케이션 구성을 포함해야 하며 applications
배열에 최대 25개의 애플리케이션을 추가할 수 있습니다. 각 애플리케이션 구성에는 액세스 토큰 클레임의 유효성을 검사하는 값과 애플리케이션이 FHIR 리소스에 액세스할 수 있는 권한을 정의하는 배열이 있습니다.
clientId
문자열을 사용하여 애플리케이션 식별
ID 공급자는 clientId
문자열(또는 애플리케이션 ID)이라는 고유 식별자를 사용하여 애플리케이션을 정의합니다. FHIR 서비스는 clientId
문자열에 대해 authorized party
(azp) 또는 application id
(appid) 클레임을 확인하여 액세스 토큰의 유효성을 검사합니다. clientId
문자열 및 토큰 클레임이 정확히 일치하지 않는 경우 FHIR 서비스는 401 Unauthorized
오류 코드가 있는 요청을 거부합니다.
audience
문자열을 사용하여 액세스 토큰의 유효성 검사
액세스 토큰의 aud
클레임은 토큰의 의도된 수신자를 식별합니다. audience
문자열은 수신자에 대한 고유 식별자입니다. FHIR 서비스는 aud
클레임에 대해 audience
문자열을 확인하여 액세스 토큰의 유효성을 검사합니다. audience
문자열 및 aud
클레임이 정확히 일치하지 않는 경우 FHIR 서비스는 401 Unauthorized
오류 코드가 있는 요청을 거부합니다.
allowedDataActions
배열을 사용하여 사용 권한 지정
allowedDataActions
배열에 하나 이상의 사용 권한 문자열을 포함합니다. 유효한 사용 권한 문자열을 포함할 수 있습니다. 중복을 방지합니다.
유효한 사용 권한 문자열 | 설명 |
---|---|
읽음 | 리소스 GET 요청을 허용합니다. |
다음 단계
Azure Active Directory B2C를 사용하여 FHIR 서비스에 대한 액세스 권한 부여
참고 항목
FHIR®은 HL7의 등록 상표이며, HL7의 사용 허가 하에 사용됩니다.