webmasterです。
ご指摘の通り、CMSDで「一部の」コンテンツに対してアクセス制限をかけるのは
困難になっております。m(_ _;)m
htaccessでは、ファイル個別にも制限をかけることができますので、その機能を
使って制限をかけたいページにのみアクセス制限をかけるという手段があるかと
思います。
通常、htacces でアクセス制限をかけるとき、
コード: 全て選択
require valid-user
という行が存在するかと思いますが、これをFilesディレクティブで囲ってやります。
Filesディレクティブには、直接ファイル指定の他、正規表現を指定することもできます。
例えば、
コード: 全て選択
<Files ~ "_sec\.php$">
require valid-user
</Files>
と書くと、"_sec.php" で終わる全てのページにのみ、アクセス制限をかける
事ができます。(例: index_sec.php、memberlist_sec.php、など)
この対策を行う歳には、dataフォルダ以下に対して htaccess を使って
deny from all でアクセス制限をかける対策も同時に併用して下さい。
(deny from all とだけ書いた .htaccess を置くだけでOKです)
但し、上記対策を行ったとしても、アップロードした画像およびファイルについては
dlfile.php、viewimg.php を通してアクセス可能な為、完全な対策にはなりません。
(エントリフォルダ名+エントリID、ファイルIDを直接指定されると見れてしまいます。
これを回避するにはdlfile.phpとviewimg.phpにもアクセス制限をかける必要が
ありますが、そうすると全ての人に対してアクセス制限がかかってしまいます)
とはいえ、エントリフォルダ名を推測不可能な名前にしておけば、部外者に見つかる
可能性は非常に低いと思われますので、通常の用途であれば充分かと思います。
また、通常問題はないと思いますが、現在配布されている podcasting サンプル
スキーマとデザイン定義は、dataフォルダ以下に対して deny from all が
かけられていない事を前提に作られている為、上記対策を行うと動作しなくなります。
(dlfile.php を通さず直接dataフォルダ以下のファイルを取得している為です)
ご了承下さい。m(__)m
以上、ご質問がありましたら再度ご連絡頂ければ幸いです。