| 1 |
=begin |
|---|
| 2 |
|
|---|
| 3 |
= SNS管理者向けopOpenSocialPluginドキュメント |
|---|
| 4 |
|
|---|
| 5 |
最終更新日: 2009/02/25 |
|---|
| 6 |
|
|---|
| 7 |
== Index |
|---|
| 8 |
* ((<"はじめに">)) |
|---|
| 9 |
* ((<"インストール">)) |
|---|
| 10 |
* ((<"各種設定">)) |
|---|
| 11 |
* ((<"管理画面">)) |
|---|
| 12 |
* ((<"鍵の生成">)) |
|---|
| 13 |
* ((<"外部のOpenSocialコンテナを使う">)) |
|---|
| 14 |
|
|---|
| 15 |
|
|---|
| 16 |
== はじめに |
|---|
| 17 |
opOpenSocialPluginはOpenPNE上でOpenSocialアプリケーションをサポートする拡張です。 |
|---|
| 18 |
|
|---|
| 19 |
OpenSocialに関しては以下をご覧ください。 |
|---|
| 20 |
* ((<OpenSocial - Google Code|URL:http://code.google.com/intl/ja/apis/opensocial/>)) |
|---|
| 21 |
|
|---|
| 22 |
|
|---|
| 23 |
このプラグインの動作の前提条件として、PHPにOpenSSL拡張がインストール済みであることが必要です。 |
|---|
| 24 |
|
|---|
| 25 |
また、外部のOpenSocialコンテナ(Shindig)を利用する場合は、Mcrypt、Curl拡張がそれぞれ必要になります。 |
|---|
| 26 |
|
|---|
| 27 |
このドキュメントに記す各種コマンドはプロジェクトルートディレクトリで行われます。 |
|---|
| 28 |
|
|---|
| 29 |
== インストール |
|---|
| 30 |
フリーズされたOpenPNE3.0.1にはopOpenSocialPlugin0.8.1が同梱されています。 |
|---|
| 31 |
|
|---|
| 32 |
別途、OpenPNEプラグインチャネルサーバからプラグインをインストールする場合は、 |
|---|
| 33 |
((<"アップグレード">))を参照してください。 |
|---|
| 34 |
|
|---|
| 35 |
=== バージョンの確認 |
|---|
| 36 |
バージョンはSNS管理画面のプラグイン設定から確認することができます。 |
|---|
| 37 |
|
|---|
| 38 |
プラグインチャネルサーバの管理化に置かれている場合は、以下の手順で確認することができます。 |
|---|
| 39 |
|
|---|
| 40 |
$ symfony plugin:list |
|---|
| 41 |
.. |
|---|
| 42 |
opOpenSocialPlugin バージョン # plugins.openpne.jp (plugins.openpne.jp) |
|---|
| 43 |
.. |
|---|
| 44 |
|
|---|
| 45 |
=== アップグレード |
|---|
| 46 |
プラグインチャネルサーバの管理化におかれている場合、以下の手順でアップグレードすることができます。 |
|---|
| 47 |
((<"バージョンの確認">))で、plugin:list タスクにより opOpenSocialPluginがない場合は、 |
|---|
| 48 |
一度、((*plugins/*))内の、((*opOpenSocialPlugin/*))ごと削除してから以下の動作を行ってください。 |
|---|
| 49 |
|
|---|
| 50 |
==== 1. opPlugin:installタスクの実行 |
|---|
| 51 |
$ symfony opPlugin:install --stability=beta opOpenSocialPlugin |
|---|
| 52 |
|
|---|
| 53 |
もし、 |
|---|
| 54 |
|
|---|
| 55 |
>> opPluginManager Plugin is already installed |
|---|
| 56 |
|
|---|
| 57 |
となった場合は既に最新バージョンです。 |
|---|
| 58 |
|
|---|
| 59 |
==== 2. openpne:migrateタスクの実行 |
|---|
| 60 |
|
|---|
| 61 |
$ symfony openpne:migrate --target=opOpenSocialPlugin |
|---|
| 62 |
|
|---|
| 63 |
バージョンによってはテーブル構造が変更されていることもあります。 |
|---|
| 64 |
変更がある場合は、このタスクにより構造の変更が行われます。 |
|---|
| 65 |
|
|---|
| 66 |
==== 3. キャッシュの削除 |
|---|
| 67 |
|
|---|
| 68 |
$ symfony cc |
|---|
| 69 |
|
|---|
| 70 |
== 各種設定 |
|---|
| 71 |
|
|---|
| 72 |
=== 管理画面 |
|---|
| 73 |
|
|---|
| 74 |
opOpenSocialPluginの管理画面は、プラグイン設定からopOpenSocialPluginの設定から入ることができます。 |
|---|
| 75 |
|
|---|
| 76 |
==== アプリケーションの設定 |
|---|
| 77 |
|
|---|
| 78 |
アプリケーションの表示や追加に関する設定を行うことができます。 |
|---|
| 79 |
|
|---|
| 80 |
* メンバーによるアプリ追加を許可 (デフォルト: オフ) |
|---|
| 81 |
|
|---|
| 82 |
オンに設定されると、フロントエンド側でSNSメンバーが自由にアプリケーションを追加することができるようになります。 |
|---|
| 83 |
|
|---|
| 84 |
しかし、SNSメンバーにより危険なスクリプトを含むアプリが追加、利用されると情報が盗まれるといったあらゆる危険を伴います。 |
|---|
| 85 |
そのため、この設定値はオフにすることを推奨します。 |
|---|
| 86 |
|
|---|
| 87 |
* プロフィール画面にアプリを表示する (デフォルト: オン) |
|---|
| 88 |
|
|---|
| 89 |
オンに設定されるとプロフィール画面にメンバーが所有するアプリが表示されます。 |
|---|
| 90 |
|
|---|
| 91 |
* ホーム・プロフィール画面のアプリ表示上限 (デフォルト: 3) |
|---|
| 92 |
|
|---|
| 93 |
ホームガジェットおよびプロフィール画面で表示することのできるアプリケーションの最大値です。 |
|---|
| 94 |
|
|---|
| 95 |
大きな値にすると、OpenSocialコンテナサーバにとって負担なることがあります。 |
|---|
| 96 |
|
|---|
| 97 |
==== コンテナの設定 |
|---|
| 98 |
|
|---|
| 99 |
OpenSocialコンテナに関する設定です。 |
|---|
| 100 |
|
|---|
| 101 |
* トークン暗号化キー |
|---|
| 102 |
* トークンハッシュ化キー |
|---|
| 103 |
アプリケーションコンテナで利用するトークンの暗号化・ハッシュ化に利用されるキーです。 |
|---|
| 104 |
|
|---|
| 105 |
デフォルトでランダムな値が設定されます。 |
|---|
| 106 |
|
|---|
| 107 |
* トークン有効期限 (デフォルト: 3600) |
|---|
| 108 |
許容されるトークンの時間です |
|---|
| 109 |
|
|---|
| 110 |
* キャッシュ有効期限 (デフォルト: 86400) |
|---|
| 111 |
OpenSocialで利用するキャッシュの有効期限です |
|---|
| 112 |
|
|---|
| 113 |
* 外部のOpenSocialコンテナを利用する |
|---|
| 114 |
* OpenSocialコンテナURL |
|---|
| 115 |
|
|---|
| 116 |
詳しくは((<"外部のOpenSocialコンテナを使う">))をご覧ください。 |
|---|
| 117 |
|
|---|
| 118 |
==== アプリケーション管理 |
|---|
| 119 |
|
|---|
| 120 |
アプリケーションの追加・削除・更新を行うことができます。 |
|---|
| 121 |
|
|---|
| 122 |
==== プロフィール連動設定 |
|---|
| 123 |
|
|---|
| 124 |
OpenSocialAPIとOpenPNEのプロフィール項目を関連付けることができます。 |
|---|
| 125 |
|
|---|
| 126 |
例えば 初期状態に用意されている |
|---|
| 127 |
|
|---|
| 128 |
Birthday は DATE_OF_BIRTH |
|---|
| 129 |
Self intoro は ABOUT_ME |
|---|
| 130 |
|
|---|
| 131 |
に関連付けることができるでしょう。 |
|---|
| 132 |
|
|---|
| 133 |
:0.8.2現在の注意 |
|---|
| 134 |
* 現在、選択式のプロフィール項目には対応していません。 |
|---|
| 135 |
* ADDRESSESといった、配列で表現するプロフィール項目には対応していません。 |
|---|
| 136 |
|
|---|
| 137 |
|
|---|
| 138 |
=== 鍵の生成 |
|---|
| 139 |
OpenSocialアプリケーションが行う署名に必要な鍵・証明書の生成は以下のコマンドで行うことができます。 |
|---|
| 140 |
|
|---|
| 141 |
$ symfony opOpenSocial:generate-key |
|---|
| 142 |
|
|---|
| 143 |
=== 外部のOpenSocialコンテナを使う |
|---|
| 144 |
|
|---|
| 145 |
opOpenSocialPluginにはOpenSocialコンテナを内蔵していますが、SNSと同一のドメインになってしまうため、 |
|---|
| 146 |
セキュリティや負荷の点で問題になります。 |
|---|
| 147 |
|
|---|
| 148 |
そこで、外部にインストールしたPHP版ShindigをOpenSocialコンテナとして動作させることができます。 |
|---|
| 149 |
|
|---|
| 150 |
実運用の際は、上記の問題からShindigを別にインストールすることを推奨します。 |
|---|
| 151 |
|
|---|
| 152 |
Shindigに関しては以下をご覧ください |
|---|
| 153 |
* ((<Apache Shindig|URL:http://incubator.apache.org/shindig/>)) |
|---|
| 154 |
|
|---|
| 155 |
手順は以下の通りです。(ShindigはOpenPNEと同一のサーバにインストール済みとします) |
|---|
| 156 |
|
|---|
| 157 |
==== 1. Shindig用ライブラリの編集 |
|---|
| 158 |
|
|---|
| 159 |
$ cp plugins/opOpenSocialPlugin/lib_for_shindig/OpenPNEService.php.sample plugins/opOpenSocialPlugin/lib_for_shindig/OpenPNEService.php |
|---|
| 160 |
$ vi plugins/opOpenSocialPlugin/lib_for_shindig/OpenPNEService.php |
|---|
| 161 |
|
|---|
| 162 |
25行目の SNSURL に SNSのURLをセットします |
|---|
| 163 |
|
|---|
| 164 |
(例) |
|---|
| 165 |
|
|---|
| 166 |
const SNSURL = 'http://sns.example.com/'; |
|---|
| 167 |
|
|---|
| 168 |
==== 2. OpenPNEの設定 |
|---|
| 169 |
|
|---|
| 170 |
プラグイン((<"管理画面">))の((<"コンテナの設定">))から「外部のOpenSocalコンテナを利用する」にチェックを入れ |
|---|
| 171 |
OpenSocialコンテナURLにShindigのURLを入力します。最後はスラッシュで終わらせてください。 |
|---|
| 172 |
|
|---|
| 173 |
==== 3. openpne.jsの追加 |
|---|
| 174 |
|
|---|
| 175 |
2の動作を完了させると、「openpne.jsのダウンロード」というリンクが現れます。ここから((*openpne.js*))をダウンロードし、 |
|---|
| 176 |
Shindigのルートディレクトリの ((*config/*)) に ((*openpne.js*)) を配置してください。 |
|---|
| 177 |
|
|---|
| 178 |
==== 4. local.phpの編集 |
|---|
| 179 |
|
|---|
| 180 |
Shindigのルートディレクトリの ((*php/config/*)) に ((*local.php*)) を新規作成して以下のように編集します。 |
|---|
| 181 |
|
|---|
| 182 |
トークン暗号化・ハッシュ化キーには((<"コンテナの設定">))にあるものと同じものを入力してください。 |
|---|
| 183 |
|
|---|
| 184 |
(例) |
|---|
| 185 |
|
|---|
| 186 |
$shindigConfig = array( |
|---|
| 187 |
'debug' => false, |
|---|
| 188 |
'allow_plaintext_token' => false, |
|---|
| 189 |
'allow_anonymous_token' => false, |
|---|
| 190 |
|
|---|
| 191 |
'token_cipher_key' => '#トークン暗号化キー#', |
|---|
| 192 |
'token_hmac_key' => '#トークンハッシュ化キー#', |
|---|
| 193 |
|
|---|
| 194 |
'extension_class_paths' => '#OpenPNEのパス#/plugins/opOpenSocialPlugin/lib_for_shindig', |
|---|
| 195 |
|
|---|
| 196 |
'person_service' => 'OpenPNEService', |
|---|
| 197 |
'activity_service' => 'OpenPNEService', |
|---|
| 198 |
'app_data_service' => 'OpenPNEService', |
|---|
| 199 |
'messages_service' => 'OpenPNEService' |
|---|
| 200 |
); |
|---|
| 201 |
|
|---|
| 202 |
|
|---|
| 203 |
|
|---|
| 204 |
=end |
|---|