0

Windows Identity Foundation と SAML トークンを使用して保護しているモバイル クライアント (iOS) と Web サービス (WCF、.NET 4.5) があります。カスタム STS から SAML トークンを要求するクライアントがいて、証明書利用者がそのトークンを取得したら、それを逆シリアル化し、その要求を検証できます。

ただし、クライアントから証明書利用者にトークンを送信する標準的な方法があるかどうかはわかりません。トークンは各リクエストのヘッダーにあるはずだと思いますが、このタイプのトークンを渡すときに使用される一般的なヘッダーまたは Cookie 名はありますか?

複数のトークンがやり取りされる場合に、すべてのケースでどのように異なるようにするかはわかりましたが、これを行うための標準は何なのか疑問に思っています。

4

2 に答える 2

0

より論理的な方法は、JWT トークンを渡すことです (ナゲットで利用可能な公式の Microsoft 実装があります)。これらははるかに小さく、非 .NET クライアント (JavaScript など) での処理が容易です。サイズが小さいため、http ヘッダーで渡すことができます。通常、「認証スペース ベアラー スペースでエンコードされた JWT トークン」。wep api では、このデータを解釈して呼び出しを承認または拒否するための httpfilter が必要です。もちろん、SAML トークンでも同じことができます。何らかの方法でエンコードする必要があり、通信のサイズが大幅に増加します。

于 2013-07-09T15:40:14.433 に答える
0

RP が WCF の場合、はい..すべてのバインディングがそれを処理します。RP が別のもの (HTTP/REST サービスなど) である場合、それを送信するのはあなたとあなたのプロトコル次第です。そうです、HTTPヘッダーとして送信するだけです。次に、RP は、トークンを探して検証することを知る必要があります。これは現在 WebAPI には存在しないため、Thinktecture IdentityModel セキュリティ ライブラリを使用して、HTTP ヘッダーのトークンを受け入れて検証できます。

http://thinktecture.github.io/Thinktecture.IdentityModel.45/

于 2013-07-08T22:18:23.177 に答える