本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在已啟用 SMART 功能的 HealthLake 資料存放區上提出 FHIR REST API 請求
您可以在啟用 FHIR 的 HealthLake 資料存放區上的 SMART 上提出 FHIR REST API 請求。下列範例顯示來自用戶端應用程式的請求,其中包含授權標頭中的 JWT,以及 Lambda 應如何解碼回應。用戶端應用程式請求經過授權和驗證後,必須從授權伺服器收到承載字符。在啟用 FHIR 的 HealthLake 資料存放區上傳送 SMART 上的 FHIR REST API 請求時,請使用授權標頭中的承載字符。
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/[ID]Authorization: Bearerauth-server-provided-bearer-token
因為在授權標頭中找到承載字符,且未偵測到 IAM AWS 身分,所以 HealthLake 會叫用在建立啟用 SMART on FHIR 的 HealthLake 資料存放區時指定的 Lambda 函數。當您的 Lambda 函數成功解碼字符時,以下範例回應會傳送至 HealthLake。
{ "authPayload": { "iss": "https://authorization-server-endpoint/oauth2/token", # The issuer identifier of the authorization server "aud": "https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/", # Required, data store endpoint "iat": 1677115637, # Identifies the time at which the token was issued "nbf": 1677115637, # Required, the earliest time the JWT would be valid "exp": 1997877061, # Required, the time at which the JWT is no longer valid "isAuthorized": "true", # Required, boolean indicating the request has been authorized "uid": "100101", # Unique identifier returned by the auth server "scope": "system/*.*" # Required, the scope of the request }, "iamRoleARN": "iam-role-arn" #Required, IAM role to complete the request }