[英]How to get token from JWE Encrypt method of Jose Sdk
我是 C# jose jwt 的新手。 我一直在使用JWE.Encrypt()
方法。
AnyJson anyJson = new AnyJson();
anyJson.page = 2;
anyJson.filters = new Filters();
anyJson.filters.startDate = DateTime.Now.Date;
anyJson.filters.endDate = DateTime.Now.Date;
string key = "bXF9p18KmVjgyzv3lP6otbne1W8PLo6gEE287SMyjeI=";
var payload = Newtonsoft.Json.JsonConvert.SerializeObject(anyJson);
string token = JWE.Encrypt(payload,
new[] { new JweRecipient(JweAlgorithm.A256KW, Convert.FromBase64String(key), null) },
JweEncryption.A256GCM);
我在 json 中得到響應,例如
{"ciphertext":"PwUATwt8xgGNSh7V2BjhOtlb0rC_GpFKyKWYdx2Fum6SpY6R9TWnH2BPPbK5qJ8_A0Q9MBkbjJkV4vi_CdKPXI1HXKiFmhxtX34pktiWuP-3ggXEMe1BZV--Lz40xRB9FyDgQ9S_SdDlgC6QMNVBQMCjtiKyhFSwIT5Qwb8AZGlew5cd7AVXhcpXAofMdF1ZV8t8JfpmqJe2ucZW06_aaFe9V3bNn9S5bv9b","protected":"eyJlbmMiOiJBMjU2R0NNIn0","iv":"8MD-0rHQDoIEmRXp","tag":"9DNgPKWMfA2jBBehA5IMxQ","header":{"alg":"A256KW"},"encrypted_key":"GXZKICb9L7EP91DQ2bJod3WNOaVjkSjzBcIsH6gk0vECpUwyTNasEw"}
但根據客戶提供的文檔,我們需要發送這個 JWE 令牌,如
{ "request": {"Token": "eyJhbGciOiJBMjU2S1ciLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIn0.Hwv8rJUIcWzZgfAe1g8QaXrcczAx2-lvQX0gighE8OPg6L8-L9YyikY4Xx2oWUr2mbsHnS7nbT1dJ59Nz-CpdUk5JwC--Qml.e1rlkqkDbe3yRusnTiDzMw.ddSHOBVCIpU4-jSCqpGbtAsOuDBJnjnP4xFU97TeBOghlk3quvTd0lvkunDNvKOSqlw0zi2Gtz9Y4lZNPVEyYTkqGprjqMFGulcI_0gKzyu7CaFzJjWBicspIo81ljPdwkodNnfjwnuGjEIj5UUgJHcebEaFNDVqgU4Gtsvn9g7LOHVhmGXLOzlNcRbbgp.SQqu8k5C7QoYP0uXSV6H42zb3Ft9ehSfZGzPrUE6vVw"}}
這看起來像 JSON。 我怎樣才能發送這樣的數據?
你真的確定你應該發送一個你自己創建的 JWT 令牌嗎? 通常 JSON 令牌由授權服務頒發。 您和令牌的接收者都信任。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.