..NET Framework 4.6 を使用すると、System.Web.HttpRequest.TlsTokenBindingInfo から返されるトークンが正しくありません

適用先
.NET Framework 4.6.2

現象

Windows 10 を実行しているサーバーがあり、System.Web.HttpRequest.TlsTokenBindingInfo を使用してユーザー ID を取得すると仮定します。 ユーザーが別のサーバーによってサーバーにリダイレクトされた場合は、ユーザーがリダイレクト サーバーに提供したトークンを参照トークン バインド ID として取得することもできます。 この参照されるトークン バインド ID は、リダイレクト サーバー上のユーザーを識別するのに役立ちます。 ただし、この状況では、ユーザーの参照されたトークン バインド ID を介してリダイレクト サーバーでユーザーを見つけることはできません。

原因

この問題は、System.Web.HttpRequest.TlsTokenBindingInfo によって返されるトークン バインド ID にトークンの種類が含まれており、他の一部の実装ではトークンの種類が除外される可能性があるために発生します。

解決策

この問題を回避するには、ITlsTokenBindingInfo のバイト配列の最初のバイトをスキップし、残りのバイト配列をユーザーの ID として使用します。 

注: .NET Framework API は将来変更される可能性があるため、将来のリリース (..NET Framework 4.6 以降) では最初のバイトをスキップする必要はなく、最初のバイトは自動的に削除されます。

.NET Framework 4.6 の既知の問題の詳細については、「 .NET Framework 4.6 の既知の問題」を参照してください。

追加情報

.NET Framework 4.6 での製品のバージョン管理の変更とその影響の詳細については、「.NET Framework 4.6 のアプリケーション互換性」を参照してください。