在JWT中包含“项目编号”的地方发送给Google OAuth2服务器

时间:2019-03-26 16:33:44

标签: c# oauth-2.0 google-api jwt

我正在发送JWT并收到响应“机器人缺少项目编号”。看来我应该在JWT中的某个地方放置一个项目编号,但是问题是在哪里?

我正在用C#编程。

long epoch = Epoch.EpochNow();

var header = "{\"typ\":\"JWT\",\"alg\":\"HS256\",\"kid\":\"" + server_key + "\"}";
var claims = "{\"iss\":\"apps@le34.dk\",\"scope\":\"" + message_url + "\",\"aud\":\"" + audit_url + "\",\"exp\":"+ epoch + ",\"nbf\":" + (epoch+3600) + "," + project + "}";

var b64header = Convert.ToBase64String(Encoding.UTF8.GetBytes(header))
var b64claims = Convert.ToBase64String(Encoding.UTF8.GetBytes(claims))

var payload = b64header + "." + b64claims;

byte[] key = Convert.FromBase64String("mPorwQB8kMDNQeeYO35KOrMMFn6rFVmbIohBphJPnp4=");
byte[] message = Encoding.UTF8.GetBytes(payload);

string sig = Convert.ToBase64String(HashHMAC(key, message))
return payload + "." + sig;


0 个答案:

没有答案