Channel Access Token 會過期嗎?失效、外洩、Reissue 一次講清楚

關於 Channel Access Token(頻道存取權杖),有兩個問題最多人問:
- 「我的系統突然回 401 錯誤,是不是 token 過期了?」
- 「我的 token 好像外洩了,聽說要按 Reissue(重新發行),但我不敢按 —— 會不會整個服務當場掛掉?」
這篇把這兩件事一次講清楚。先給兩個安心的答案:長效 token 不會自己過期;Reissue 有「緩衝期」可以選,服務可以無縫接軌。細節往下看。
先破除迷思:長效 token 不會「自己過期」
我們在〈取得 Channel Access Token〉教你從開發者後台發行的那種 token,正式名稱是長效(long-lived)Channel Access Token。依照 LINE 官方文件,它沒有有效期限 —— 只要你不動它,它十年後還是有效的。
所以「放著放著就過期了」這件事不存在。如果你的系統昨天還好好的、今天突然 401,一定是有人或有事動了它。往下看是哪三種。
出現 401「Authentication failed」的三種真正原因
401 的意思是:你的系統出示的鑰匙,LINE 不認得了。原因只有三種:
- token 被 Reissue 過 —— 有人(可能是同事、可能是換服務商時的工程師)在開發者後台按了 Reissue,發了新鑰匙。舊鑰匙會失效,還在用舊鑰匙的系統就開始 401。這是最常見的原因。
- token 被撤銷(Revoke)了 —— 有人主動作廢了這把鑰匙。
- token 當初就貼錯了 —— 少複製一個字元、頭尾夾了空白。這種通常「從第一天就不會動」,而不是「用一用突然壞」。
💡 判斷小技巧:「本來會動、突然不動」→ 幾乎是原因一或二(有人動過);「從來沒動過」→ 先查原因三(貼錯)。
按下 Reissue 的那一刻,會發生什麼事?
這是大家最怕的部分,我們把官方規則翻成白話:
- 按下 Reissue 後,LINE 立刻發給你一把新鑰匙(新的 token)。
- 舊鑰匙原則上立即失效 —— 但重點來了:Reissue 時可以選擇讓舊鑰匙再多活一段時間,最長 24 小時。
這個「緩衝期」就是無縫換鑰匙的關鍵。正確的換法是:
- 按 Reissue,選一個緩衝時間(例如 24 小時)。
- 這段時間內,新舊兩把鑰匙都有效,服務照常運作。
- 趁緩衝期把所有用到 token 的地方換成新的(清單見下方)。
- 緩衝期一到,舊鑰匙自動作廢 —— 而你的系統早就在用新的了,全程零中斷。
⚠️ 反過來說:如果你選了「0 小時」,舊鑰匙當場作廢,所有還在用它的服務會立刻 401。除非你確定 token 已經外洩、必須立刻止血,否則建議都選緩衝期。
Token 外洩了怎麼辦?(截圖、貼群組、進了程式碼)
token 就是你官方帳號的萬能鑰匙 —— 拿到它的人可以用你的帳號名義發訊息。所以以下狀況都算外洩,建議直接換鑰匙:
- 後台畫面截圖傳給別人時,token 整串入鏡
- token 貼在 LINE 群組、聊天紀錄、共用文件裡
- 工程師把 token 寫死在程式碼裡上傳到公開的地方
止血 SOP:
- 到開發者後台按 Reissue。緊急程度高(確定已被陌生人拿到)就選 0 小時當場作廢;只是「保險起見」就選 24 小時緩衝,慢慢換。
- 照下面的清單,把新 token 換進所有地方。
- 以後傳截圖前,記得把 token 那一段遮起來。
換 token 檢查清單:這些地方都要跟著更新
Reissue 之後,所有存過舊 token 的地方都要換成新的,漏一個就會有一個服務開始 401:
- ✅ 你選用的服務後台(例如賴管家的設定頁)
- ✅ 自家工程師寫的程式(通常放在環境變數或設定檔裡)
- ✅ 自動化工具(n8n、Zapier、Make 之類,如果有串)
- ✅ 測試用的腳本、Postman 收藏夾
- ✅ 其他任何當初「貼過 token」的第三方平台
💡 建議養成習慣:在一份私密文件裡記下「token 用在哪幾個地方」。下次要換的時候,照清單走就不會漏。
你可能會擔心的幾件事
- 「Reissue 要付費嗎?」 不用,按幾次都免費。
- 「Reissue 會影響我的好友、聊天紀錄、圖文選單嗎?」 完全不會。換的只是「系統之間的鑰匙」,客人那端毫無感覺。
- 「我可以同時有兩把長效 token 嗎?」 不行,長效 token 同一時間只有一把是「現役」的(緩衝期內短暫並存除外)。這也是為什麼多套系統共用一把 token 時,換鑰匙前要先通知所有人。
- 「我怎麼知道現在這把還有沒有效?」 最簡單的方式:看你的服務有沒有正常運作。工程師則可以用官方 API 直接驗證 token 效力。
結論
三句話總結:長效 token 不會自己過期,突然 401 是「有人動過它」或「當初貼錯」;Reissue 不可怕,選好緩衝期(最長 24 小時)就能無縫換鑰匙;換完照清單把每一個用到 token 的地方都更新,一個都別漏。
💬 遇到 401 但查不出原因?或不確定該不該 Reissue?截圖傳給我們(記得遮住 token!),我們幫你判斷。
(本文是「LINE 設定疑難排解」系列的一篇。相關文章:〈Webhook 驗證失敗的完整排查〉/〈LINE 機器人已讀不回的排查清單〉/〈LIFF 打不開的三種症狀〉。想從頭學怎麼取得 token?看〈取得 Channel Access Token〉。)



