mirror of
https://github.com/NicolasConstant/BirdsiteLive
synced 2025-06-05 21:49:16 +02:00
added AP call date check
This commit is contained in:
@ -164,6 +164,14 @@ namespace BirdsiteLive.Domain
|
|||||||
|
|
||||||
private async Task<SignatureValidationResult> ValidateSignature(string actor, string rawSig, string method, string path, string queryString, Dictionary<string, string> requestHeaders)
|
private async Task<SignatureValidationResult> ValidateSignature(string actor, string rawSig, string method, string path, string queryString, Dictionary<string, string> requestHeaders)
|
||||||
{
|
{
|
||||||
|
//Check Date Validity
|
||||||
|
var date = requestHeaders["date"];
|
||||||
|
var d = DateTime.Parse(date).ToUniversalTime();
|
||||||
|
var now = DateTime.UtcNow;
|
||||||
|
var delta = Math.Abs((d - now).TotalSeconds);
|
||||||
|
if (delta > 30) return new SignatureValidationResult { SignatureIsValidated = false };
|
||||||
|
|
||||||
|
//Check Signature
|
||||||
var signatures = rawSig.Split(',');
|
var signatures = rawSig.Split(',');
|
||||||
var signature_header = new Dictionary<string, string>();
|
var signature_header = new Dictionary<string, string>();
|
||||||
foreach (var signature in signatures)
|
foreach (var signature in signatures)
|
||||||
|
Reference in New Issue
Block a user