Ploneサイトへのjoinを制限する


This How-to is intended for: Site administrator

Ploneをポータルとして利用しないのであれば、知らない誰かをjoinさせない方が安全です。サイト設定およびjoin_formを編集してjoinを制限します。

このドキュメントはClose site so people can't add themselves as usersを参考に書いています。

Ploneをポータルとしてではなく、個人のサイトとして利用するのであれば他の人をjoinさせる必要はありません。そこでサイト設定を変更して登録フォームへのリンクを削除し、またjoin_formを編集してjoinできない旨をお知らせするようにします。

サイトの設定

「サイト設定」→「セキュリティ」へ行き、「ユーザ登録をユーザ自身が行えるようにする」のチェックを外し、ページ下部の「保存」をクリックします。

これでサイトの登録フォームへのリンクが自動的になくなります。この状態では、登録フォーム自体は見ることができますが、フォームを正しく送信できなくなっています。

join_formの編集

Ploneサイトにjoinするためのフォームとしてjoin_formというテンプレートが使われていますので、これを編集します。

編集はZMI(Zope Management Interface)から行います。

ZMI→Ploneインスタンス→「portal_skins」→「plone_login」→「join_form」へ行き、「customize」ボタンを押して編集します。このサイトでは下記のような内容になっています。

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
      lang="en"
      metal:use-macro="here/main_template/macros/master"
      i18n:domain="plone">

<head>
    <metal:block fill-slot="top_slot"
                 tal:define="dummy python:request.set('disable_border',1)" />
</head>

<body>

<div metal:fill-slot="main"
     tal:define="errors options/state/getErrors;">

  <h1 i18n:translate="heading_registration_form">Registration Form</h1>

  <p>Sorry, we're not offering for subscription now.</p>

</div>

</body>
</html>

ユーザを追加したくなったら

ユーザを追加する必要が出てきたら手動でユーザを追加します。

「サイト設定」→「ユーザとグループ」へ行き、「新しいユーザを追加」をクリックして追加します。

※Plone2.xを利用している場合はClose Siteというプロダクトがありますので参考にしてみて下さい。