auth_mixi.inc.php

Last-modified: Tue, 07 Nov 2017 12:10:21 JST (979d)
Top > auth_mixi.inc.php

auth_mixi.inc.php

サマリOpenID mixi 認証プラグイン
リビジョン0.1
対応バージョンi18n rev1776以降
投稿者upk
投稿日2009-05-04 (月) 23:34:58

概要

OpenID による認証において mixi 固有の認証機能を実現するためのプラグインです。マイミク認証やコミュニティ認証が実現できるようになります。

ただし、mixi ガイドラインに同意し遵守できる場合に限ります。

使い方

ブロック型もしくは、インライン型での利用が可能です。

#auth_mixi
#auth_mixi(type=community,icon=2,id=773449)

引数

変数説明指定可能な値設定例省略値
type認証方法を指定なし,friends,communitytype=friends (マイミク認証)なし
type=community (コミュニティ認証)
icon利用するログインアイコンを指定1,2,3,4,5icon=11
id自身のIDまたは、コミュニティIDを指定id=xxxPLUGIN_AUTH_MIXI_MY_ID で指定した値(自身のIDのみ)
nobtnOpenIDで認証している際に、logoff用メッセージを表示しないnobtnなし

定義

名前説明省略値
PLUGIN_AUTH_MIXI_USE_AGREEMENTmixi ガイドラインに同意し遵守する場合0 (未同意)
PLUGIN_AUTH_MIXI_MY_ID省略時の自身のID空白(未定義)
PLUGIN_AUTH_MIXI_USE_CONFIG:configページでIDの登録管理を実施する0 (利用しない)

mixiガイドライン

mixi のガイドラインに同意できる場合には、init/auth_mixi.ini.php というファイルを作成し、

<?php
define('PLUGIN_AUTH_MIXI_USE_AGREEMENT', 1);
?>

と設定を有効にして下さい。

  • デフォルトでは、禁止となっています。

mixi固有の認証機能

マイミク認証やコミュニティ認証があります。例えば、マイミク認証を利用する場合には、誰のマイミクなのかを mixi に通知することで実現していますが、この誰のの部分を詐称されるようでは意味がありません。 wiki 利用者が自身のユーザIDや利用しているコミュニティIDを勝手に登録し、二次的な許可ができないように登録制としています。

サイト管理者が管理する場合

サイト管理者が、自身のIDやコミュニティIDを登録して運用する場合には、 auth_api.ini.php ファイルに登録を行うことになります。

  • $auth_api['openid']['mixi'] に、以下の項目があります。
    項目名説明設定例
    my_idマイミク認証時の自身のIDを登録します。複数のユーザで利用している場合も想定し、複数の登録が可能です。array('userid1','userid2'),
    community_idコミュニティ認証時の許可するコミュニティIDを登録します。array('community1','community2'),

サイト管理者以外に権限を委譲する場合

サイト管理者以外の管理者や利用者にも、ID登録の操作権限を委譲するような運用を行う場合のために、:config ファイルでの登録も行えます。この場合には、PLUGIN_AUTH_MIXI_USE_CONFIG の定義を有効にして下さい。

  • init/auth_mixi.ini.php
    <?php
    define('PLUGIN_AUTH_MIXI_USE_AGREEMENT', 1);
    define('PLUGIN_AUTH_MIXI_USE_CONFIG', 1);
    ?>
  • :config/auth/openid/mixi ページのイメージ
    *friends
    マイミク認証時に利用する自分のIDを登録します。
    
    |許可するマイID|備考|h
    |||
    
    *community
    コミュニティ認証として許可するコミュニティIDを登録します。
    
    |許可するコミュニティID|備考|h
    |||

この運用を行う場合には、check_roleプラグインやページの凍結などを行い、ページ更新の制限を適切に行う必要があります

マイミク認証およびコミュニティ認証時の役割

OpenID による認証の場合には、役割のページで説明している通り、ROLE_AUTH_OPENID(認証者) が割り振られますが、マイミク認証およびコミュニティ認証 で認証された場合には、自動的に、ROLE_ENROLLEE (登録者)の扱いになります。

この機能を利用することで、マイミク認証およびコミュニティ認証 で認証されたユーザのみのクローズなサイトを作成することも可能です。

詳細は、閉じたサイトモードをご覧下さい。

著作権表示

(c)2009 upk
  • 以下の画像は、株式会社ミクシィに著作権があります。
    mixi ログインボタン利用ガイドラインに同意した運用を前提に二次的な配布を行っています。 mixi ログインボタン利用ガイドラインに同意できない場合には、このファイルの利用が禁止されます。取り扱いには注意をお願います。
    • image/plus/mixi/ 以下にある、
      a_130.gif, a_150.gif, b_130.gif, b_150.gif, icon.gif
      これら5つのファイルです。

コメント

  • Query string too longのエラーが出ましたが、PKWK_QUERY_STRING_MAXを大きくするとうまくいきました。 -- int128? 2009-06-22 (月) 00:19:18
  • どの程度まで広げましたか? -- upk 2009-06-23 (火) 02:22:11