草庐IT

AD安全管理

全部标签

c# - 使用 SimpleMembership/Sql Server CE、MongoDB 管理用户配置文件

我选择使用mongodb作为以域为中心的数据的存储。我一直在寻找官方mongodb提供程序,将它们集成到ASP.NETMVC项目中,以保留单个应用程序数据库。没有官方供应商,可用的供应商看起来也不成熟/稳定。所以我决定按原样使用简单的成员资格。如果可能,如何从AccountController中删除EntityFramework特定代码?您将如何管理同时具有SimpleMembershipUserProfile和MongoDBUser的用户配置文件?示例在单独的程序集[project-name].domain中有两个类:publicclassEvent{publicDateTimeSc

c# - Entity Framework 的行级安全性

我一直在考虑如何使用EntityFramework实现行级安全性。这个想法是让数据库不可知,这将提供方法来限制来自ObjectContext的行。我最初的一些想法涉及修改由EDMGEN工具创建的部分类,这提供了一些有限的支持。用户仍然可以通过使用他们自己的eSQL语句和QueryObject来绕过这个解决方案。我一直在寻找一个全面的解决方案,该解决方案将存在于数据库提供商之上,以便它保持不可知。 最佳答案 当然可以。重要的是阻止对对象上下文的直接访问(防止用户构建自己的ObjectQuery),而是为客户端提供一个更窄的网关,在该网

C# 将小数安全地转换为 int

我正在尝试安全地将小数转换为整数。有点像publicstaticboolDecimal.TryConvertToInt32(decimalval,outintval)如果无法转换为整数,则返回false,如果可以,则返回true并成功输出。这是为了避免在decimal.ToInt32方法中捕获OverflowException。最简单的方法是什么? 最佳答案 这里:publicstaticboolTryConvertToInt32(decimalval,outintintval){if(val>int.MaxValue||val

c# - 尝试使用 LDAP 连接来连接 AD 时出错

尝试使用此代码连接ADPrincipalContextcontext=newPrincipalContext(ContextType.Domain,domain)但我收到错误消息:TheLDAPserverisunavailable.有什么想法吗? 最佳答案 问题是:您是否将我们的域指定为“mydomain.com”(DNS格式)或作为“dc=mydomain,dc=com”(AD样式格式)令我惊讶的是,域名必须采用DNS格式(例如“mydomain.com”)才能正常工作(NOT在通常的AD中-样式格式为“dc=mydomain,

c# - 如何管理将 DateTime 的空对象解析为 DBNULL 与 ADO.NET 一起使用

我有两个DateTime对象,BirthDate和HireDate。它们被正确地格式化为字符串,当我将它们传递到我的数据访问层时,它们需要被解析为DateTime对象。DateTimehD=DateTime.Parse(hire);DateTimebD=DateTime.Parse(birth);//incaseofadatestringbeingpassedthroughdateStringPassed="7/2/1969";但有时,字符串hire和birth为null或为空"",如果代码像这样运行,我会得到一个解析空字符串时出现FormatException错误。如何管理空解析并允

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# - 如何使用 OWIN 安全中间件在应用程序中设置 NameClaimType

我已经创建了一个OWINWeb应用程序,它使用OpenIdConnect通过Microsoft.Owin.Security.OpenIdConnect进行身份验证。虽然身份验证有效,但我发现创建的ClaimsIdentity.Name成员为空。ClaimsIdentity似乎希望在声明中提供名称:http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name但是,ThinktectureIdentityServerv3提供的名称只是:nameIfindthisisconfigurableviaNameClaimTypeinolder

c# - 在不锁定集合的情况下从通用集合中获取 Count 值是安全的吗?

我有两个线程,一个生产者线程将对象放入通用列表集合中,另一个消费者线程将这些对象从同一个通用列表中拉出。我已经使用lock关键字正确同步了对集合的读取和写入,并且一切正常。我想知道是否可以在不先锁定集合的情况下访问Count属性。JaredPar引用计数属性inhisblog作为可能导致竞争条件的决策程序,如下所示:if(list.Count>0){returnlist[0];}如果列表中有一个项目,并且在访问Count属性之后但在索引器之前删除了该项目,则会发生异常。我明白了。但是使用Count属性可以确定一个完全不同的集合的初始大小吗?MSDNdocumentation说实例成员不

c# - 在属性中公开 IEnumerable 是否安全?

如果我公开一个IEnumerable作为一个类的属性,它是否有可能被类的用户改变,如果是的话,什么是防止改变的最好方法,同时保持暴露属性的类型IEnumerable? 最佳答案 这取决于您返回的内容。如果你返回(比如说)一个可变的List那么客户端确实可以将其转换回List并对其进行变异。如何保护您的数据取决于您从什么开始。ReadOnlyCollection是一个很好的包装类,假设你有一个IList开始。如果您的客户不会从实现IList的返回值中受益或ICollection,你总是可以做这样的事情:publicIEnumerabl

TM7705(AD7705)驱动调试总结-基于stm32f103zet6-填坑日记

目录AD7705简介​ADC芯片——AD7705最详细讲解(STM32)http://t.csdn.cn/UbXjw工程以及主要代码分享,另外,附带演示视频。AD7705简介模块对输入电压进行了0.5倍的分压,才进入芯片采集。一句话说明白,TM7705是一个外置16位分辨率双通道ADC芯片,SPI通信协议,采用Σ-∆转换技术。价格便宜,对标同型号AD7705,基本能直接替换,程序基本通用。AD7705和TM7705功能区别:AD7705是美国模拟器件公司生产的。15元左右。TM7705是深圳天微生产的,引脚和功能和AD7705完全兼容。可以替代AD7705。价格比进口的便宜几倍。5元左右。(1