public JsonWebKey GetJWKFromPK(PublicKeyTE pke) { RSA rsa = RSA.Create(); rsa.ImportRSAPublicKey(Convert.FromBase64String(pke.PublicKey), out _); RsaSecurityKey rsaSecurity = new RsaSecurityKey(rsa); rsaSecurity.KeyId = pke.RowKey; return(JsonWebKeyConverter.ConvertFromRSASecurityKey(rsaSecurity)); }
private async Task storePublicKey(FunctionContext <dynamic> fc, byte[] pkAsBytes, DateTime expiresIn) { PublicKeyTE pk = new PublicKeyTE(); pk.PartitionKey = "ACCESS_PK"; pk.RowKey = this.keyId; pk.Expires = expiresIn; pk.AssignPublicKey(pkAsBytes); TableOperation insertOrMerge = TableOperation.InsertOrMerge(pk); await fc.Table.ExecuteAsync(insertOrMerge); }