http://developers.facebook.com/docs/authentication/permissions/

ユーザがアプリを許可するとき、デフォルトでアプリに与えられる権限はユーザ基本情報の読み込みのみです。それ以上のデータを読み込みたかったり、Facebookに対して書き込みを行いたい場合は、必要に応じてパーミッションを得る必要があります。

パーミッションは以下の5つに分けられます。


ユーザから追加のパーミッションを取得する方法は認証ドキュメントを参照し、パーミッションの区別方法についてはドキュメント下部を参照してください。


Basic Information

アプリ側が追加でパーミッションを要求していない状態でユーザがアプリを許可すると、あなたのアプリはユーザの基本情報にしかアクセスできません。デフォルトでは、この情報はid, name, picture, gender, localeを含みます。

また、Friendsコネクションなど一部のUserオブジェクトのコネクションも読むことができますし、ユーザが多くのデータを一般公開にしていれば、より多くのデータを読み込むことが可能です。

アプリを許可したユーザがキャンバスページやページタブでアプリを開くと、アプリへはユーザの年齢層データも渡されます。これは、アルコールの販促ページなどで年齢制限を設けるような場合に便利です。



User and Friends Permissions

ユーザ自身の情報やユーザの友だちの情報にアクセスする為の以下のパーミッションを、認証プロセス中にscopeパラメータに渡すことで要求できます。

新しい認証ダイアログを用いれいる場合、以下のパーミッションは、認証プロセス中にユーザによって取り消されることはありません。最初の認証時にユーザから以下のパーミッションを求めるならば、それら全てのパーミッションを許可しない限り、ユーザがアプリを許可して利用することはできません。


User permission Friends permission Description
user_about_me friends_about_me aboutプロパティで、プロフィールの自己紹介セクションにアクセス
user_activities friends_activities activitiesコネクションから、アクティビティ一覧にアクセス
user_birthday friends_birthday birthdayプロパティで、生年月日にアクセス
user_education_history friends_education_history educationプロパティで、学歴にアクセス
user_events friends_events eventsコネクションから、参加するイベント一覧にアクセス
user_groups friends_groups groupsコネクションから、属するグループの一覧にアクセス
user_hometown friends_hometown hometownプロパティから、出身地にアクセス
user_interests friends_interests interestsコネクションから、興味のあること一覧にアクセス
user_likes friends_likes likesコネクションから、いいね!の一覧にアクセス
user_location friends_location locationプロパティから、居住地にアクセス
user_notes friends_notes notesコネクションから、ノート一覧にアクセス
user_photos friends_photos アップロードした写真と、タグ付けされた写真にアクセス
user_questions friends_questions 質問したクエスチョンへのアクセス
user_relationships friends_relationships 家族などの個人的つながりや、そのステータス
user_relationship_details friends_relationship_details 恋愛対象にアクセス
user_religion_politics friends_religion_politics 宗教・信仰と政治観にアクセス
user_status friends_status ステータス投稿とチェックインへのアクセス。FQLのlocation_postテーブルのリファレンスで、投稿に紐づく位置情報の取得方法を確認してください。
user_subscriptions friends_subscriptions ユーザ、もしくはユーザの友だちの購読・購読者屁のアクセス
user_videos friends_videos アップロードした動画とタグ付けされた動画にアクセス
user_website friends_website ウェブサイトURLにアクセス
user_work_history friends_work_history 職歴にアクセス
email N/A 主要なメールアドレス。ユーザにスパムメールを送らないでください。メールアドレスの扱いは、Facebookの規約とCan-SPAM Act(http://business.ftc.gov/documents/bus61-can-spam-act-compliance-guide-business)に従う必要があります。


Extended Permissions

以下のパーミッションを取得しようとする場合、要求するパーミッションの一覧は認証ダイアログの2つ目の画面に表示されます。それぞれのパーミッションを許可するか否かはユーザ次第で、ユーザは許可したいパーミッションのみ選択できます。
readで始まるものは読み取り専用で、データの書き込みはできません。

Permission Description
read_friendlists ユーザが作成した友だちリストへのアクセス。
read_insights ユーザが管理するドメイン、アプリケーション、Facebookページのインサイトデータへのアクセス
read_mailbox ユーザのメッセージボックスへのアクセス
read_requests ユーザ宛の友だちリクエストへのアクセス
read_stream ユーザのニュースフィードへのアクセスと検索
xmpp_login Facebookチャットを実装し、ユーザをログインさせる
ads_management Facebook広告を管理し、ユーザの代理としてFacebook Ads APIを呼び出す
create_event ユーザの代理としてイベントを作成したり、編集する
manage_friendlists ユーザの友だちリストを作成したり、管理する
manage_notifications お知らせを読み込み、既読にする権限。これはユーザがお知らせを読んで対応するためのもので、ユーザの行動をモデリングしたりデータマイニングするのが目的ではありません。
user_online_presence ユーザのオンライン・オフライン状態へのアクセス
friends_online_presence 友だちのオンライン・オフライン状態へのアクセス
publish_checkins ユーザの代理としてチェックインする
publish_stream ユーザの代理としてステータス投稿したり、それに対してコメントやいいね!をする。
rsvp_event ユーザの代理としてイベントへの参加意思表示をする

Open Graph Permissions

Open Graphパーミッションを取得すると、Open Graphに対してアクション投稿をしたり、他アプリケーションに寄って投稿されたアクションを読み込むことができます。これらのパーミッションを要求するには、新しい認証ダイアログへの移行を完了する必要があります。Open Graphパーミッションは全て認証ダイアログの第1段階で要求されます。User and Friend permissionsと同様、これらのパーミッションを要求した場合には、ユーザは全てを許可しない限りアプリを利用することはできません。


User Permission Friends Permission Description
publish_actions N/A オープングラフへBuilt-in Actions, Achievements, Scores, Custom Actions.の書き込みを許可します。Publishing Permissionsに記載されているアクティビティを投稿することも可能です。認証ダイアログでこれらのパーミッションを拒否することはできませんが、後で設定画面から取り消すことはできると覚えておいてください。パーミッションが取り消されたときに通知されたい場合は、Realtime APIを使ってpermissionsオブジェクトを購読してください。
user_actions.music friends_actions.music 全アプリケーションから投稿されたmusic.listensアクションを取得できます。
user_actions.news friends_actions.news 全アプリケーションから投稿されたnews.readsアクションを取得できます。
user_actions.video friends_actions.video 全アプリケーションから投稿されたvideo.watchesアクションを取得できます。
user_actions:APP_NAMESPACE friends_actions:APP_NAMESPACE 他のアプリによって投稿されたアクションを取得します。その際、APP_NAMESPACEでアプリを指定します。awesomeappというネームスペースのアプリから投稿されたアクションを取得するには、users_actions:awesomeappもしくはfriends_actions:awesomeappを要求します。
user_games_activity friends_games_activity game achievementアクティビティの投稿と読み込みを許可します。


Page Permissions

Permission Description
manage_pages ユーザが管理するFacebookページとアプリページのアクセストークンを取得します。/<user_id>/accountsにアクセスすることでそれぞれのアクセストークンを取得できます。これはGraph APIにのみ有効で、REST APIでは利用できません。
60日以上利用可能なアクセストークンの取得方法については、
こちらを参照してください。


Access Token terminology

Facebook Platformには、User access tokens, Page access tokens, App access tokensの3種類のアクセストークンがあります。一般公開データのようにアクセストークンを必要としないデータもあれば、いずれかのアクセストークンを持っていれば良いもの、特定のアクセストークンでなければ取得できないものもあります。ドキュメント上でアクセストークンやパーミッションについて言及する場合、以下の用語を使って、必要なアクセストークンやパーミッションを説明します。

Publicly available(一般公開)

アクセストークンやパーミッションは不要です。

Any valid access_token(いずれのアクセストークンでも良い)

User, Page, Appのいずれの為のアクセストークンでも利用でき、いかなるパーミッションも不要です。ただし、有効期限を越えたアクセストークンは無効です。ただアクセストークンと記述されることもあります。

App access_token

アプリケーション用のアクセストークンが必要になる場合に、この記述を用います。認証ドキュメントで説明されている通り、APP_IDとAPP_SECRETを用いてアプリを認証することで取得できます。

User access_token

ユーザのアクセストークンが必要で、特にパーミッションが必要とされない場合にこの記述を使います。認証手順が完了したときに返されるトークンです。

Page access_token

ページを管理するのに必要となるアクセストークンです。このアクセストークンは、ユーザのアクセストークンを用いて /PAGE_ID?fields_token にアクセスした場合に取得できますが、manage_pagesパーミッションも必要となります。/USER_ID/accountsにアクセスしてユーザが管理するページ一覧とそれぞれのアクセストークンを取得することができます。

A specific permission

上記リストの中から特定のパーミッションを許可したユーザのアクセストークンです。たとえば、ユーザのチェックイン情報取得にはuser_checkinsパーミッションが必須となります。