2

Silverlight 対応のデータ サービスを呼び出す、作成した Silverlight アプリがあります。Silverlight アプリは、認証されていないパブリックにデータを提示する必要があるため、ログインを要求できません。

時間をかけて Silverlight アプリを調査し、それが呼び出しているサービスを何らかの形で把握し、独自のクライアントを作成してデータを丸呑みし、自分のサイトに投稿してそのふりをすることができるシュモーがいます。彼の。これを防ぐ必要があります。

Silverlight アプリからの要求のみを受け入れるようにデータ サービスを制限するにはどうすればよいですか? clientaccesspolicy.xml ファイルのallow-from domain uri設定を使用して、Silverlight アプリが存在するドメイン (mydomain.com など) からのみサービスへのアクセスを制限しようとしました。これはまったく何もしませんでしたが、サービスはまだドメイン外からのクライアントへのリクエストを処理しています. (SL アプリを別のドメインに配置して、これをテストしました)。

アプリだけが使用できるようにデータ サービスを制限するための適切/最善/最も効果的な方法は何ですか? ありがとう!!!

SL 3 と .NET 3.5 を使用しています。

4

2 に答える 2

1

Silverlight Web サービスのセキュリティは、ASP.NET セキュリティ (特に AJAX に公開されるサービス) に使用するのと同じパターンに従います。ASP.NET の認証を利用するのが最善の方法です。

RIA Services は、これを処理するさらに優れた方法です。ASP.NET 承認の上に乗っていますが、クライアント側とサーバー側の両方で自動的に検証して、サービスのスプーフィングに対抗します。メソッドに属性を追加することで、クライアント側とサーバー側の両方の承認を処理できます。メソッドに承認済みアクセスが必要であること、および特定する必要がある場合はどのグループまたはユーザーによるかを示す属性を追加します。

ワイヤ側のセキュリティと難読化に加えて、クライアントはブラウザーで実行されている Silverlight アプリケーションにデバッガーをアタッチできることに注意してください。MSDN マガジンのセキュリティ IQ テスト (2008 年 11 月) のこの例を参照してください。

于 2009-09-29T05:12:27.150 に答える
1

clientaccesspolicy.xml は、Silverlight アプリケーションが使用できるWeb サービスを通知します。人々が Web サービスにアクセスするのを妨げない。

必須ではありませんが、認証ログインを使用してみることができます。これにより、「schmoes」が Web サービスにアクセスするのを防ぎます。

また、Dotfuscator を使用して、「schoes」が Silverlight アプリケーションを逆アセンブルし、ログインを取得するのを防ぎます。

于 2009-09-28T18:53:16.007 に答える