public static async Task <bool> IsRequestAuthorizedAsync(IHttpRequestWrapper request, bool ignoreRequestAge = false) { var headers = request.Headers; var queryParams = request.QueryParameters; // See what type of auth scheme is applied to this request bool sharedKeyRequest = SharedKey.IsRequestType(headers); bool sasRequest = SharedAccessSignature.IsRequestType(queryParams); if (sharedKeyRequest && sasRequest) { // Can't be a SAS & SharedKey Authorization together return(false); } else if (sasRequest) { return(await SharedAccessSignature.IsAuthorizedAsync(request, headers, queryParams, ignoreRequestAge)); } else if (sharedKeyRequest) { return(SharedKey.IsAuthorized(request, headers, queryParams, ignoreRequestAge)); } // Anonymous return(await Anonymous.IsAuthorizedAsync(request)); }