セキュリティ上の理由から、Windows SharePoint Services は、データベース コンテンツの変更を目的とした Web アプリケーションからの投稿を、既定で許可していません。ただし、要求を出すページにセキュリティ検証が組み込まれている場合を除きます。
要求を出すページにページ ディレクティブと FormDigest コントロールを追加することによって、単一サイトまたはサイト コレクションのデータを更新することができます。以下のディレクティブが Microsoft.SharePoint.WebControls 名前空間に登録されます。
<%@ Register
Tagprefix="SharePoint"
Namespace="Microsoft.SharePoint.WebControls"
Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
注意
現在の Windows SharePoint Services 展開の PublicKeyToken 値を Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\SiteTemplates\sts フォルダの default.aspx ファイル、または Windows Explorer の Local_Drive:\WINDOWS|WINNT\assembly での Microsoft.SharePoint アセンブリ用に提供される情報から取得できます。
FormDigest コントロールを以下のようにフォーム内に組み込みます。
<form id="Form1" method="post" runat="server">
<SharePoint:FormDigest ID="MyFormDigest" runat="server"/>
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 282px;
POSITION: absolute; TOP: 282px" runat="server"
Text="Button"></asp:Button>
</form>
ASPX ページにこのコントロールを挿入することでセキュリティ検証、つまりメッセージ ダイジェストが生成され、ユーザーを騙してサーバーにデータを投稿させようとする攻撃を防ぐことができます。セキュリティ検証は、特定のユーザー、サイト、および期間限定で、設定可能な期間を経過すると期限切れになります。ユーザーがページを要求すると、サーバーはセキュリティ検証が挿入されたページを返します。ユーザーがそのフォームを送信すると、サーバーはセキュリティ検証が変更されていないかどうかを検証します。このコントロールの詳細については、FormDigest クラスを参照してください。
See Also
概念
Windows SharePoint Services に関するトピック集
Working with List Objects and Collections (英語)