# 衛福部健保卡元件 on MAC 疑難雜症 (tw.gov.nhi.nhiicc) 健保卡元件是以 launchd 管理的 daemon 的形式存在 可用以下方法檢查 :::info 某一版本之後 (推測是 `0008` 之後),其 daemon 會使用 `root` 於 `system` domain 運行 故沒有使用 `root` 去列出 daemon 清單會找不到 ::: ```bash $ sudo launchctl list | grep --ignore-case nhi - - tw.gov.nhi.nhiicc2023.plist # perviously version # - - tw.gov.nhi.nhiicc.plist # - - tw.gov.nhi.nhiicc2019.plist ``` 如看到第一個 `-` 是數字 (代表 pid) 即表示 daemon 運行中 對應的 daemon configuration 位於 - `/Library/LaunchDaemons/tw.gov.nhi.nhiicc2023.plist` - ~~`/Library/LaunchDaemons/tw.gov.nhi.nhiicc.plist`~~ - ~~`/Library/LaunchDaemons/tw.gov.nhi.nhiicc2019.plist`~~ 另外 NHI 的 daemon 會透過 bind `localhost:7777` 提供健保卡讀取功能 # 功能測試 / 驗證 - file:///usr/local/share/NHIICC/html/ESample.html - https://cloudicweb.nhi.gov.tw/cloudic/system/webtesting/SampleY.aspx - ~~file:///Library/StartupItems/nhiicc/web/test.html~~ # 無法找到 daemon,也無法連接到元件 極有可能是程式沒有正常被運行著 透過以下指令載入 daemon 設定檔 ```bash $ launchctl load /Library/LaunchDaemons/tw.gov.nhi.nhiicc2023.plist ``` # 確認 daemon 正常運行,卻還是無法偵測到元件 很有可能是因為瀏覽器因為憑證信任的關係阻擋其內容 如果你透過以下方式測試發現 API 都正常 ```bash $ nc -zv iccert.nhi.gov.tw 7777 iccert.nhi.gov.tw [127.0.0.1] 7777 (cbt) open $ curl https://iccert.nhi.gov.tw:7777/ # Omit ... $ curl -i -N -H "Connection: Upgrade" -H "Upgrade: websocket" --header "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" --header "Sec-WebSocket-Version: 13" --max-time 2 https://iccert.nhi.gov.tw:7777/echo HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: qGEgH3En71di5rrssAZTmtRTyFk= = curl: (28) Operation timed out after 2005 milliseconds with 0 bytes received ``` 測試 websocket 的 `curl` 指令會遇到 timeout 是正常的 這是因為 websocket 在完成 protocol 切換後會保持連接 這時候可以開啟瀏覽器連接到 https://iccert.nhi.gov.tw:7777/ 以 chrome 為例,會看到警示畫面  透過主動提示 chrome 接受在不安全的情況繼續造訪網站 這時看到以下畫面,再回去測試元件功能正常便能成功  補充說明:如果想重現,可以點這邊的  # 確認健保卡元件版本 以 2025 報稅為例,要求版本要到 `011` 以上  暫時沒有發現適合方法,必須透過上圖檢測得知 https://med.nhi.gov.tw/ca2/nhi/icc/page/portal.html > 因中央健康保險署新版元件預計於113年7月1日發布並停用舊版本,如無法正常登入請至健保署健保卡驗證服務進行環境檢查更新,如有相關問題,請洽健保署客服人員。 # 參考資料 - https://gist.github.com/wancw/61c629b78bad206816ae4b58913a7cd8 - https://www.puritys.me/docs-blog/article-450-Mac-+-Chrome-%E8%A7%A3%E6%B1%BA%E5%81%A5%E4%BF%9D%E5%8D%A1%E8%AE%80%E4%B8%8D%E5%88%B0%E7%9A%84%E5%95%8F%E9%A1%8C.html - https://gist.github.com/htp/fbce19069187ec1cc486b594104f01d0 - https://cloudicweb.nhi.gov.tw/cloudic/system/SMC/mEventesting.htm
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.