草庐IT

API安全

全部标签

c# - ASP.NET MVC 消息处理程序与 Web API 消息处理程序

我创建了2个项目:普通、基本的ASP.NETMVC4应用程序基本的ASP.NETWebAPI应用程序我所做的是将派生自DelegatingHandler的自定义消息处理程序添加到它们中。在这里:publicclassMyHandler:DelegatingHandler{protectedoverrideTaskSendAsync(HttpRequestMessagerequest,System.Threading.CancellationTokencancellationToken){returnbase.SendAsync(request,cancellationToken);}}

c# - 升级到 Web API 2 后,HttpApplication.Application_Start 未触发

我将应用程序升级到WebApi2,Application_Start不会触发在IISExpress上运行的升级后。我确实遵循了http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2的官方升级路径并三重检查了我的设置。该应用程序使用StructureMapMVC4来注入(inject)依赖项。因此WebActivator的PreApplicationStartMethod被触发并且依赖解析器被正确设置。此后

c# - 如何将委派处理程序限制为 Web API 中的特定路由?

我有一个自定义委托(delegate)处理程序来管理请求的身份验证。在我的一个Controller中,不应为特定操作启用身份验证。如何禁用方法和路由的委托(delegate)处理程序POSTapi/MyController?一种选择是在处理程序中对路由进行硬编码,但是,我宁愿将此逻辑保留在处理程序之外。此外,我看到自己将此行为添加到更多操作中,这会使此方法难以维护。protectedoverrideSystem.Threading.Tasks.TaskSendAsync(HttpRequestMessagerequest,System.Threading.CancellationTok

c# - 如何从 Fluent Api 检索实体配置

使用Entity-Framework6,我可以像这样通过FluentApi设置配置:publicclassApplicationUserConfiguration:EntityTypeConfiguration{publicApplicationUserConfiguration(){this.HasKey(d=>d.Id);this.Ignore(d=>d.UserId);}}来源自thisquestion使用属性方法我可以通过反射知道属性角色是什么,但我想知道如何检索这些配置,比如Key例如,使用FluentApi方法?EntityTypeConfiguration没有公共(pub

c# - RequestAdditionalTime() 的安全开销是多少?

我有一个Windows服务,它在单独的线程上生成一组子事件,并且只有在所有这些事件都成功完成后才会终止。我事先不知道在收到停止信号后终止事件可能需要多长时间。在OnStop()期间,我每隔一段时间等待该停止信号,并不断请求额外的时间,只要系统愿意授予它即可。基本结构如下:classMyService:ServiceBase{privateCancellationTokenSourcestopAllActivities;privateCountdownEventrunningActivities;protectedoverridevoidOnStart(string[]args){//.

c# - 使用 MVC 6 在 Web API 中找不到 IServiceCollection

我正在使用带有MVC6的WebAPI,在这里我要将存储库注入(inject)Controller,我们需要将其注册到DI容器。打开Startup.cs文件。在ConfigureServices方法中,添加高亮代码:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingMicrosoft.Owin;usingOwin;usingTodoApi.Models;[assembly:OwinStartup(typeof(TodoApi.Startup))]namespaceTodoApi{publicpartialc

c# - 如何使用 Google Calendar API 创建任务

我想使用Google日历API在Google日历中创建任务。使用C#。寻找一些示例代码。 最佳答案 遗憾的是,Google日历中的任务功能没有API。虽然日历数据API非常广泛,但任务团队尚未发布API。包括您在内的许多人都请求过这样的API,但Google尚未采取任何措施来填补这一空白。DataAPI组上有很多关于这个的帖子,例如thisone.但是,Google可能很快就会发布一个。在那之前,如果你真的需要使用任务,你将不得不进行屏幕抓取。换句话说,您必须研究GCalendarUI的工作原理并模拟与之交互。有些人可能已经解决了这

c# - app.config 文件是存储密码的安全位置吗?

我需要在代码中存储secret密码。我不能使用哈希技术,因为需要密码本身。如何将这些数据安全地存储在app.config文件中?还有其他方法可以安全地完成此操作吗?DPAPI和ProtectDataClass不是一个选项,因为key是系统特定的,例如:连接字符串不能以这种方式为不同的最终用户系统存储。 最佳答案 您可以使用DPAPI(数据保护API)来加密配置文件的某些部分。您的代码仍将使用ConfigurationManager并且解密将由框架处理。有关相同内容的更多信息,请参阅此模式和实践文档HowTo:EncryptConfi

c# - 为什么这个赋值不是线程安全的?

我一直在阅读JosephAlbahari关于线程的这本书:http://www.albahari.com/threading/在第2部分中,我找到了这个示例:http://www.albahari.com/threading/part2.aspx#_When_to_Lock这是前面提到的例子:classThreadUnsafe{staticint_x;staticvoidIncrement(){_x++;}staticvoidAssign(){_x=123;}}线程安全版本:classThreadSafe{staticreadonlyobject_locker=newobject();

c# - 我们如何使用 Cake build 对安全的 NuGet 服务器进行身份验证?

我们正致力于使用CakeBuild自动化我们的构建,我们使用来自nuget.org的NuGet包,但我们也有我们自己的NuGetFeed服务器,它有一个用户名/密码身份验证来访问。我们如何将CakeBuild与带有身份验证的自定义NuGet源服务器一起使用? 最佳答案 Cake使用NuGet.exe安装工具、插件和NuGet别名。除非您在#tool/#addin指令中指定了源或提供给NuGet别名,否则NuGet.exe将在当前路径中查找nuget.config并最终以当前用户全局设置(%AppData%\NuGet\NuGet.c