保护一个 REST API 意味着在每个请求上回答三个问题:你是谁(authentication,认证)、你被允许做什么(authorization,授权)、以及通道是否私密(transport,传输)。因为 REST 是无状态的(stateless),凭证必须随每个请求传递,而不是驻留在一个 server session 中。
传输:始终 HTTPS
以下所有内容都假定有 。没有它,token 和 API key 就以明文传输,可能被嗅探。这一点没有商量余地——一个通过 HTTP 传的 bearer token 就是一个已泄露的 token。
