草庐IT

cancellation-token

全部标签

c# - 使用 Bearer token 时,具有 AD 身份验证的 Azure Function 导致 401 Unauthorized

我在C#中有一个非常简单的Azure函数,我已经为其设置了AzureAD身份验证。我刚刚使用Express设置在功能配置中创建了应用程序注册。publicstaticclassIsAuthenticated{[FunctionName("IsAuthenticated")]publicstaticasyncTaskRun([HttpTrigger(AuthorizationLevel.Anonymous,"get","options",Route=null)]HttpRequestreq,ILoggerlog){returnnewOkObjectResult("Youare"+req.

c# - filterContext.Cancel 发生了什么(ASP.NET MVC)

在RC1之前我们做了这样的事情:publicvoidOnAuthorization(AuthorizationContextfilterContext){if(whatever){filterContext.Cancel();}}现在已经没有了,我们如何使用RC1获得相同的结果?谢谢,凯尔 最佳答案 您只需将ActionResult设置为不同的结果,而不是Cancel属性。因此,对于Cancel属性,您只需将Cancel=true替换为filterContext.Result=newHttpUnauthorizedResult();

c# - 如何验证 JWT token

我正在尝试使用JWTtoken。我设法生成了一个有效的JWTTokenString并在JWTdebugger上对其进行了验证但我无法在.Net中验证token。这是我到目前为止的代码:classProgram{staticstringkey="401b09eab3c013d4ca54922bb802bec8fd5318192b0a75f201d8b3727429090fb337591abd3e44453b954555b7a0812e1081c39b740293f765eae731f5a65ed1";staticvoidMain(string[]args){varstringToken=

c# - 对 CancellationTokenSource.Cancel 的调用永远不会返回

我有一种情况,对CancellationTokenSource.Cancel的调用永远不会返回。相反,在Cancel被调用之后(在它返回之前),执行将继续执行被取消代码的取消代码。如果被取消的代码随后没有调用任何可等待的代码,那么最初调用Cancel的调用者永远不会取回控制权。这很奇怪。我希望Cancel简单地记录取消请求并立即返回独立于取消本身。事实上,调用Cancel的线程最终会执行属于被取消操作的代码,并且在返回给Cancel的调用者之前这样做看起来像框架中的错误。这是怎么回事:有一段代码,我们称之为“工作代码”,它正在等待一些异步代码。为简单起见,假设此代码正在等待Task.D

c# - SqlCommand.Cancel() 导致性能提升?

我已经看到它出现在代码中的几个地方,从来没有解释,只是在它上面的一个神秘注释(声明和执行包括上下文的概念。它只是运行SqlCommand的标准过程)://SqlCommandcmd=newSqlCommand();//cmd.ExecuteReader();//Readofftheresults//Cancelthecommand.Thisimprovesquerytime.cmd.Cancel();基本上,在完成查询后,它会返回并取消它,声称性能有所提升。我想您可能会在它消失并释放XmlReader时取回一些内存,但通常它无论如何都会超出范围。我以前从来没有为它烦恼过,但它终于出现在

c# - 防伪 token 竞争条件

我有一个应该是iFramed的MVCView。它的多个实例可能在同一个主机页面中被iFramed。在我看来,我有这个:@Html.AntiForgeryToken()我用它来尝试确保对WebAPI的调用仅来自此页面。我的主机页面可能看起来像这样:在我看来,我获取token并在header中提交它,以便我可以在我的API中检查它:varheaders=actionContext.Request.Headers;varheaderToken=headers.Contains("__RequestVerificationToken")?headers.GetValues("__Request

c# - 从 Google 身份验证服务为 .NET 中的 REST 服务检索新的 Firebase 访问 token

这个问题在这里已经有了答案:UsingCustomTokenstomakeRESTrequeststoFBDBasanadmin(2个答案)关闭6年前。更改firebase授权系统后,我正在尝试从googleauth服务器检索c#中的访问token。根据新文档:https://firebase.google.com/docs/reference/rest/database/user-auth#section-api-usage我在C#中创建了类似的东西:usingGoogle.Apis.Auth.OAuth2;[...]asyncTaskGetToken(){GoogleCredent

c# - 返回无效或过期 token 的错误

我正在尝试使用Owin实现OAuthBearer身份验证。当传递无效或过期的token时,默认实现是将其记录为警告,只是不设置身份。但是,在这种情况下,我想拒绝整个请求并出错。但我该怎么做呢?在深入研究代码后,我发现在OAuthBearerAuthenticationHandler中,当提供的AuthenticationTokenProvider未解析任何票证(如默认执行)。当token无法解析为任何票证或token过期时,此处理程序将记录警告。但是我找不到任何地方来插入我自己的逻辑来处理token无效或过期时发生的情况。理论上我可以在AuthenticationTokenProvid

c# - 为什么在 oauth2 中缓存访问 token 被认为是不好的?

我正在关注这篇文章以撤销用户访问:http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/现在考虑在验证用户后,我已经发布了一个生命周期为30分钟的访问token,如上面的文章所示,刷新token为1天,但是如果管理员在10分钟内删除该用户,还剩下20分钟,那么现在在这种情况下我需要撤销该用户的访问权限。为了做到这一点,我需要从刷新token表中删除该用户条目以禁止进一步的访问token请求,但由于访问token过期时间仍有20分钟,因此

c# - 如何获取 google oauth 的访问 token ?

我正在使用C#(ASP.NET)。我想使用GoogleOAuth访问我的应用程序中的用户个人资料详细信息。我成功获得了授权码,但在获取访问token时遇到问题。我更喜欢Googletutorials.在教程中,我读到我必须发送请求并从谷歌获得响应。为此,我使用System.Net.HttpWebRequest/HttpWebResponse(我的方法是否正确)。我用过这个代码...byte[]buffer=Encoding.ASCII.GetBytes("?code="+code+"&client_id=xxx&client_secret=xxx&redirect_uri=xxxx&g