ASP.NET ページと Flash アプレットの両方を含む Web サイトを作成しています。2 つのエンドポイントを介して公開される WCF サービスにビジネス ロジックをカプセル化したいと考えています。1 つは HTTP(S) を介してインターネット経由でアクセス可能で、Flash クライアントで使用でき、もう 1 つはアプリケーション サーバーで使用するためにデータ センター内でアクセスできます。 . これが良いアプローチとは思えない場合は、ここでやめてください。それ以外の場合は、先に進みます...
問題は、Flash クライアントからのリクエストをどのように認証するかです。ユーザーのパスワードをブラウザの Cookie に保存したくない、リクエストごとにパスワードを送信したくない、最初のログイン後に HTTPS を使用する必要がないため、トークンを使用する予定です。ベースの認証システム。また、ユーザーがサイト自体にログインした後に Flash クライアントにログインする必要がないようにしたいので、Javascript を使用して Flash クライアントの起動時にトークンを渡す予定です。
私は、WCF が .NET Framework の組み込みセキュリティ フレームワーク (System.Security) を使用してアクセス制御を実施することをサポートしていることを知っており、これを利用したいと考えています。
問題は、 Flash によって呼び出されたときにトークンを WCF サービスに渡す方法と、サーバーでトークンを処理する方法です。
- WCF には「発行されたトークン」認証モードがありますが、これは Secure Token Service と SAML トークンを使用した本格的なフェデレーション シナリオで使用することを意図しているようです。このモードを独自の「単純なランダム文字列」トークンで使用することは可能ですか? もしそうなら、どのように?これは Flash と互換性がある必要があることに注意してください。
- トークンをヘッダー (SOAP ヘッダーまたは HTTP ヘッダー) で渡す可能性があります。この場合、リクエストを行っているユーザーを特定したら、System.Security チェックが機能するようにフレームワークに通知するにはどうすればよいでしょうか?
- 私が考慮すべき別のアプローチはありますか?すべての要求でパスワードを送信することを回避し、System.Security を使用できるようにし、Flash で動作するものは何でも可能です。