TwitterAuthenticate [ja] - nojimage/CakePHP-Twim GitHub Wiki
Twimプラグインが提供するTwitterAuthenticateには以下の追加オプションがあります。
'Auth' => array(
'authenticate' => array(
'Twim.Twitter' => array(
'userModel' => false,
'authorize' => false,
),
),
),
string userModel
認証に使用するモデルを指定します。
任意のモデル名を指定することで、アクセストークンなどの認証情報を保存することができます。
boolean authorize
認証時のauthorize
/authenticate
を切り替えます。true
でauthorize
、false
でauthenticate
となります。
authenticate
を利用する場合は、Twitter側のアプリケーション設定で「Sign in with Twitter」を有効にしなければなりません。
Note
TwitterAuthenticate
のauthenticate
オプションは、AuthComponent::login()を明示的に呼び出した場合に適用されます。
クイックスタートのように loginAction
をTwimのOauthコントローラに指定している場合は以下のようにauthenticate
をURLに加えてください。
public $components = array(
'Session',
'Auth' => array(
'authenticate' => array(
'Twim.Twitter' => array(/* options */),
),
'loginAction' => array(
'plugin' => 'twim',
'controller' => 'oauth',
'action' => 'login',
'authenticate' => true,
),
),
);
認証情報をデータベースへ保存する
認証時にuserModel
に指定したモデルのsaveメソッドが呼び出されます。
デフォルトでは、フィールド名oauth_token
, oauth_token_secret
, user_id
, screen_name
として各情報が保存されます。
フィールド名を変更するには、userModel
に指定したモデルクラスにcreateSaveDataByToken
を実装して保存データを書き換えるか、プラグインに同梱のTwitterAuth
ビヘイビアを利用します。