カスタム webService メソッドの呼び出しには必ずシステムコンテキストを使用します。その結果、現在のユーザの証明書は使用されず、これらのメソッドにアクセスできるすべてのユーザが、権限、項目レベルのセキュリティ、共有ルールに関係なく、全機能を使用できます。そのため、webService キーワードでメソッドを公開する開発者は、ユーザが機密情報データを不注意に公開しないよう注意する必要があります。
webService キーワードを使用する API によって公開されている Apex クラスメソッドは、オブジェクト権限と項目レベルのセキュリティがデフォルトで適用されていません。WebService メソッドがアクセスしようとしているオブジェクトと項目に対する現在のユーザのアクセスレベルをチェックするには、適切な Object Describe Result メソッドまたは Field Describe Result メソッドを使用することをお勧めします。「DescribeSObjectResult クラス」と 「DescribeFieldResult クラス」を参照してください。
また、共有ルール (レコードレベルアクセス) は、with sharing キーワードでクラスを宣言するときのみに適用されます。この要件は、WebService メソッドを含むクラスを含むすべての Apex クラスに適用されます。WebService メソッドの共有ルールを強制するには、これらのメソッドを含むクラスを with sharing キーワードで宣言します。「with sharing または without sharing キーワードの使用」を参照してください。