臺灣疫苗接種或開立藥品紀錄上傳實作指引
0.1.0 - ci-build

臺灣疫苗接種或開立藥品紀錄上傳實作指引 - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

安全性

實作者 建議應該(SHOULD) 了解與FHIR交易相關的安全考量,特別是與以下相關


通訊(Communication)

驗證(Authentication)

本專案依衛生福利部疾病管制署(以下簡稱本署)頒布之資訊安全管理規範,存取RESTful服務必須先申請使用權限,經身份驗證核可後方能使用。未經驗證者,一律拒絕使用本服務。 依使用者實際需求,填寫申請表以傳真至(02) 2395-9832並Email電子檔(無須核章)至NIIS客服信箱。 申請通過後本署會給予相關 API 識別碼及合約院所識別碼給申請單位。

  1. VACC API介接申請表
  2. VACC API介接申請表(批次)
  3. VACC API介接正式上線申請表

授權/存取控制(Authorization/Access Control)

每一次存取RESTful服務時,必須在傳送的HTTP Header加入署方認可的API識別碼,以參數KeyId表示。

  • 例,KeyId = API識別碼

    • 回覆 400(參數不正確) - 傳送的參數不合法。

    • 回覆 401(未經授權) - 參數KeyId不合法。

    • 回覆 403(禁止存取) - 終端路徑不合法。

    • 回覆 404(找不到網頁) - 終端路徑不存在。

數位簽章(Digital Signatures)

醫事憑證管理中心核發之有效憑證進行數位簽章操作,申請方式依醫事憑證管理中心要求辦理。 於成功申請並取得憑證後,將欲上傳資料透過憑證SDK(函式P12Sign)產生上傳資料的數位簽章值,將取得的數位簽章值進一步以BASE64函式加密,取得一行經過BASE64函式加密的長字串,加入傳送的HTTP Header中,以參數AUTH表示。

  • 例,AUTH = 一行經過BASE64函式加密的數位簽章值。

    • 函式P12Sign參數:

      iFlags = CG_FLAG_DETACHMSG

      iKeyUsage = CG_KU_NON_REPUDIATION

      HashFlag = CG_ALGOR_SHA256

本專案安全一致性要求如下

  • 系統 必須(SHALL) 保留各種交易的稽核日誌(audit logs)
  • 系統 必須(SHALL) 符合FHIR通訊安全(Communications Security)要求
  • 系統 必須(SHALL) 依據國家、地方和機構政策實作同意要求。業務夥伴協定(Business Associate Agreements) 建議應該(SHOULD)記錄系統相互同意的要求。
  • 對於認證和授權,系統 必須(SHALL) 支援本署權責中心核發的API識別碼
  • 對於數位簽章,系統 必須(SHALL) 支援醫事憑證管理中心核發且在有效期內的憑證。注意:憑證必須(SHALL)為機構非IC卡符記憑證
  • 系統 可以(MAY) 透過加密和相關存取控制來保護資料的機密性。所使用的策略和方法不在此規範的範圍內。