<ahref="http://facebook.com"class="urlextern"title="http://facebook.com"rel="nofollow">Facebook</a> est un célèbre réseau social. Facebook utilise le protocole <ahref="http://en.wikipedia.org/wiki/OAuth2"class="urlextern"title="http://en.wikipedia.org/wiki/OAuth2"rel="nofollow">OAuth2</a> pour autoriser les applications à réutiliser son propre prcessus d'authentification (ce qui signifie que si on est connecté à Facebook, d'autres applications peuvent agréer Facebook et accepter l'utilisateur).
</p>
<p>
La paquet <ahref="https://metacpan.org/release/Net-Facebook-Oauth2"class="urlextern"title="https://metacpan.org/release/Net-Facebook-Oauth2"rel="nofollow">Net::Facebook::Oauth2</a> est nécessaire.
</p>
<p>
Il faut enregistrer la nouvelle application dans Facebook pour obtenir un identifiant d'application et un secret. Voir <ahref="https://developers.facebook.com/apps"class="urlextern"title="https://developers.facebook.com/apps"rel="nofollow">https://developers.facebook.com/apps</a> pour en savoir plus.
Dans le manager, allez dans <code>Paramètres generaux</code>><code>Modules d'authentification</code> et choisissez Facebook comme module d'authentication. On peut également utiliser Facebook comme base de données utilisateurs.
</p>
<p>
Ensuite, aller dans les <code>paramètres Facebook</code>:
</p>
<ul>
<liclass="level1"><divclass="li"><strong>Niveau d'authentification</strong> : niveau d'authentification accordé à ce module.</div>
</li>
<liclass="level1"><divclass="li"><strong>ID de l'application Facebook</strong> : l'identifiant d'application obtenu</div>
</li>
<liclass="level1"><divclass="li"><strong>Secret de l'application Facebook</strong> : le secret correspondant</div>
</li>
</ul>
<p>
If you use Facebook as user database, declare values in exported variables:
</p>
<ul>
<liclass="level1"><divclass="li"> utiliser n'importe quel nom de clef. Pour imposer qu'une valeur soit renseignée, ajouter un ”!” devant le nom de clef</div>
</li>
<liclass="level1"><divclass="li"> dans le champ valeur, mettre le nom du champ. You can show them using <ahref="https://developers.facebook.com/tools/explorer"class="urlextern"title="https://developers.facebook.com/tools/explorer"rel="nofollow">Facebook Graph API explorer</a> and have a list of supported fields in the <ahref="https://developers.facebook.com/docs/graph-api/reference/user/"class="urlextern"title="https://developers.facebook.com/docs/graph-api/reference/user/"rel="nofollow">Graph API User reference</a>. Par exemple :</div>
<ul>
<liclass="level2"><divclass="li"> cn ⇒ name</div>
</li>
<liclass="level2"><divclass="li"> mail ⇒ email</div>
</li>
<liclass="level2"><divclass="li"> sn ⇒ last_name</div>
</li>
</ul>
</li>
</ul>
<divclass="noteimportant">Do not query <code>id</code> field in exported variables, as it is already registered by the authentication module in <code>$_user</code>.
</div><divclass="notetip">On peut réutiliser le même ticket d'accès Facebook dans les applications. It is stored in session datas under the name <code>$_facebookToken</code>