クライアントが記事を作成してCMSに投稿できるようにするシステムを作成しています。実装を求められている機能の1つは、編集者が記事を公開すると、その記事が会社のFacebookウォールにも投稿されることです。
これのトリッキーな部分は、記事の公開を許可されている人が会社の全体的なFBアカウントへのログイン資格を持っていない可能性があることです。これは、アカウントのアクセストークンを取得するために通常のプロセスに頼ることができないことを意味します(またはそう思われます)。
私はかなりの調査を行い、次のドキュメントソースを思いつきました。
- http://developers.facebook.com/docs/howtos/login/extending-tokens/
- http://developers.facebook.com/docs/howtos/login/server-side-login/
- http://developers.facebook.com/docs/concepts/login/login-architecture/
- http://developers.facebook.com/roadmap/offline-access-removal/
これらから、ローカルで許可されたユーザーが会社のFacebookウォールに投稿できるようにするには、次のことを行う必要があるようです。
- 有効なFBクレデンシャルを持つユーザーに管理ページにログインしてもらいます
- ボタンをクリックして、認証プロセスを開始します
- FB応答から短期アクセストークンを取得し、それを長寿命の60日トークンと交換します
- 60日間のトークンをデータベースに保存します
- ユーザーが記事を公開しようとするたびに、トークンの有効期限が切れているかどうかをテストし、有効期限が切れている場合は、管理者に再承認する必要があることを警告します。
これを達成するための唯一のワークフローですか、それとももっと簡単な方法、できれば最後のステップを必要としない方法がありますか。