最近の の廃止によりoffline_access
、Facebook はアプリが有効期間の短いトークンを有効期間の長いトークンに「拡張」できるようにしています。トークンは、有効期限が切れていない限り「更新」することもできます。[1]
offline_access
「拡張」に明示的なユーザーオプトインが必要な場合(古い許可のように)、これはセキュリティ/プライバシーの観点から私には理にかなっています。しかし、アプリはユーザーの操作なしで、透過的に延長および更新できるようです。たとえば、iOS アプリは単純な HTTP リクエストでこれを行います。[2][3][4]
それを考えると、この機能の目的は何ですか? 有効期限が切れるトークンよりも安全/プライベートであるとは思えず、アプリにとっては生涯トークンよりも便利ではないようです (Twitter や LinkedIn など)。
[1] https://developers.facebook.com/roadmap/offline-access-removal/
[2] https://developers.facebook.com/docs/mobile/ios/build/#extend_token
[3] https://developers.facebook.com/docs/reference/iossdk/authentication/
[4] https://github.com/facebook/facebook-ios-sdk/blob/v1.2/src/Facebook.m#L352-L359