SqlLogin 要素 (ADF)
条件アクション内の対応するロジックを実行するデータベース ユーザーに関連付けられた Microsoft SQL Server ログイン アカウントを指定します。
構文
<ConditionAction>
<SqlLogin>
要素の特性
特性 | 説明 |
---|---|
データ型 |
string。 |
既定値 |
なし。 |
個数 |
ConditionAction 要素につき 1 個 (必須)。 |
更新 |
この要素は、アプリケーションの更新時に変更できます。ただし、追加と削除はできません。親の ConditionAction 要素の追加と削除は可能です。 |
要素の関係
関係 | 要素 |
---|---|
親要素 |
|
子要素 |
なし。 |
解説
すべての条件アクションは、その条件アクションに対して指定したデータベース ユーザーのコンテキストで実行されます。権限の低いユーザーを使用すると、第三者によりサブスクリプション管理インターフェイスが侵害され、他のテーブルにアクセスしたり、他の動作を実行しようとする条件が挿入されても、セキュリティの脅威を最小限に抑えることができます。
データベース ユーザーは SqlUser 要素で指定します。そのユーザーに関連付けられたログイン アカウントは SqlLogin 要素で指定します。このログインは、Notification Services によるアプリケーションの作成前に存在している必要があります。ログインが存在しない場合、アプリケーションを作成しようとすると Notification Services でエラーが発生し、インスタンスの作成またはインスタンスの更新はロールバックされます。このログインは、アプリケーションが配置されている間は存在し続ける必要があります。
SqlLogin の値には、SQL Server 認証ログインまたは Microsoft Windows 認証ログインを指定することができます。
サーバー上でのログインの権限は必ず制限してください。ログインにはサーバー全般に対する権限は許可せず、サーバー ロールを指定しないことをお勧めします。
条件アクションの詳細については、「条件アクションの定義」を参照してください。
使用例
次の例は、条件アクションを定義する方法を示しています。Transact-SQL 式のクエリは、MyAppSchema.WeatherEventRule ビューのデータを選択します。このビューは、サブスクリプション クラスのデータと MyAppSchema.WeatherEvents イベント ビューのデータを含みます。
<ConditionAction>
<SqlLogin>[MyLowPrivLogin]</SqlLogin>
<SqlUser>[MyLowPrivUser]</SqlUser>
<InputName>WeatherEvents</InputName>
<InputSchema>MyAppSchema</InputSchema>
<SqlExpression>
INSERT INTO MyAppSchema.WeatherNotifications(SubscriberId,
DeviceName, SubscriberLocale, City, Forecast)
SELECT [Subscription.SubscriberId], [Subscription.DeviceName],
[Subscription.SubscriberLocale], [Input.City],
[Input.Forecast])
FROM MyAppSchema.WeatherEventRule;
</SqlExpression>
</ConditionAction>
参照
関連項目
SqlUser 要素 (ADF)
アプリケーション定義ファイルのリファレンス
概念
その他の技術情報
条件アクションの定義
サブスクリプション ルールの定義
CREATE LOGIN (Transact-SQL)