2012-02-24 16 views
0

私たちは、会社のSharePointファームのレイアウトディレクトリにホストされるASP.NETアプリケーションを作成しています。アプリケーションは、アプリケーションが展開されているサイトコレクションに応じて、一部のSharePointリストに基づいて表示されるように構成できます。ASP.NETアプリ - どのように選択的に無効にASPXページ

我々はに実行した問題は、いくつかのサイトは、特定のページや他の人ではないでしょうが必要になりますです。誰かがサイトコレクションのコンテキスト外でそれらのページを突き抜けて起こる場所があれば、セキュリティ上のリスクになる可能性があります。

我々が考えられている二つの可能性が例外をスローしたりリダイレクトし、ページが有効でない場合はどうかを確認、単に手動で展開した後、またはページのロードにASPXページを削除、あります。

このついて行くのより良い方法はありますか?これを行うには 'SharePoint'の方法がありますか?

+0

SPSecurityContextのための仕事のような音 –

答えて

1

現在のSPSite、または現在SPWeb、この特定を持っている場合、私は、ターゲットとSPWeb/SPSiteオブジェクトごとに特定の機能を追加し、自動的にアクティブ化(または手動で展開プロセスに依存する)とあなたの〜サイト/ _layouts内/ xyz.aspxすることができますでしょう機能が有効になりました。その場合は、SPUtility.TransferToErrorPage( "Access Denied、bla bla bla")でリダイレクトするアクセスを許可します。あなたが関連付けられている機能が有効になっているだけで、特定の領域にあなたのaspxを確保することができます

は(あなたにも、一般的な機能を持つことができます)と任意の有効な/関連するコンテキストの外部からのアクセスを防ぎます。

関連する問題