2011-11-05 23 views
5

私は、データにアクセスするために別のASP .NETプロジェクトにあるWCF DataServiceを使用しているWPFプロジェクトがあるソリューションを開発しています。
私は認証されたユーザーだけがサービスにアクセスできるようにするためのレベルのセキュリティを提供する必要があります。ネットをサーフィンして、私はそれを達成しようと頭を壊しました。それを実装する適切な方法は何ですか?WPFアプリケーションのWCFデータサービスのセキュリティ

+0

ユーザートークンを作成すると役立つかもしれません..あなたの質問は面白いです:) –

答えて

2

私は、WCFのLogin方法は、ユーザーオブジェクトを作成するユーザーオブジェクトトークンを(私の場合、それはGUIDだった)を割り当て、およびAuthenticatedUsersリストにWCFサーバー上で内部に格納します過去にこれをしませんでした。

その他のWCF呼び出しでは、トークンがパラメータとして必要でした。ユーザーがそのトークンでAuthenticatedUsersリストに存在するかどうかをチェックし、そのトークンを持つユーザーがいない場合はエラーを返します。追加のメリットは、ユーザーIDを渡す必要なしに誰がWCFコールを行ったのかを常に知っていることです。

私はLastActivity DateTimeをサーバー上のUserオブジェクトと共に保存しました。各WCF呼び出しはこの値を更新し、WCFサーバー上のAuthenticatedUsersリストに少なくとも1つの値があれば、AuthenticatedUsers LastActivityの値をチェックし、20分間以上使用されていなかったユーザーを削除するタイマーがサーバー上で実行されました。

関連する問題