これを行う最善の方法はJWT
、Azure Mobile Services から返されたトークンを取得し、それが からの同じマスター キーを使用して署名されたことを検証することAMS
です。これを行う方法を示すプロジェクトが GitHub にあります。
JWT バリデーター
これは基本的に、元の ASP.NET サンプルがここにある別の GitHub プロジェクトの派生物です。
AuthenticationTokenSample
主な検証ValidateSignature()
は、JWT Claim セグメントの UTF-8 表現のバイトを取得し、Azure Mobile Services
. JWT 暗号セグメントと以前に計算された値の場合、キーが JWT で HMAC を生成するために使用され、JWT クレーム セグメントの内容が改ざんされていないことが確認されます。
私が見つけた主なことの 1 つは、追加され"JWTSig"
た文字列がメソッドのマスター キーに追加されないようにするValidateSignature()
ことです。署名されているトークンは、 からその文字列をマスター キーに追加しなくなったようAMS
です。そのセグメントを削除するまで、検証に合格するのにあらゆる種類の問題がありました。