小编And*_*ock的帖子

ASP.NET Identity的默认密码哈希 - 它是如何工作的并且是否安全?

我想知道在MVC 5和ASP.NET Identity Framework附带的UserManager中默认实现的Password Hasher是否足够安全?如果是这样,如果你可以向我解释它是如何工作的?

IPasswordHasher界面如下所示:

public interface IPasswordHasher
{
    string HashPassword(string password);
    PasswordVerificationResult VerifyHashedPassword(string hashedPassword, 
                                                       string providedPassword);
}
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,它不需要盐,但在这个帖子中提到:" Asp.net身份密码哈希 ",它确实在幕后加盐.所以我想知道它是如何做到的?这盐来自何处?

我担心的是盐是静态的,使它非常不安全.

c# asp.net security passwords asp.net-identity

148
推荐指数
5
解决办法
11万
查看次数

实体框架多态关联

我会很快使用实体框架的预约系统(从头做起).

我一直在做一些原型,试图弄清楚在项目启动之前我想做什么(我还在与客户讨论要求等).

考虑这种情况:

我有预订,预订可以有相关的资源,可以预订,但这些资源可以不同,并有不同的字段等.

ER关系图

我之前从未真正使用EF,所以我不知道如何实现这种多态性,我在其他项目中使用它(我们一直在使用原始SQL).

C#模型看起来像这样:

public class Booking
{
    public int BookingID { get; set; }
    public DateTime StartTime { get; set; }
    public DateTime EndTime { get; set; }
    public IRessource Ressources { get; set; }
    ...
}

public interface IRessource
{
    public int RessourceTypeId { get; set; }
}

public class Room : IRessource
{
    public int RoomID { get; set; }
    public int RessourceTypeId { get; set; }
    ...
}

public class Car : IRessource
{ …
Run Code Online (Sandbox Code Playgroud)

c# polymorphism inheritance entity-framework interface

20
推荐指数
1
解决办法
8606
查看次数

MVC 5 IoC和身份验证

我即将开始一个项目,我将使用MVC5.但是,由于我想使用IoC并稍后重用我的用户表,并向其添加自定义内容,我发现很难看到我如何使用MVC5附带的新Identity框架.

我越来越关注基本形式的认证.你有什么解决方案?

我的需求:

  • 必须注入用户存储库/服务
  • 用户存储库必须驻留在DAL中
  • 用户存储库必须能够支持除EF之外的其他技术
  • 使用OpenID和OAuth进行身份验证必须要轻松实现
  • 必须安全
  • 应该可以在其他项目中重复使用,例如.WPF

我一直在寻找答案,但我看到的一切都是在控制器中硬编码的.

你是怎么解决的?您是从头开始编写的,还是可以绑定到可以扩展到其他.NET平台的东西,如WCF和WPF?

以下代码直接来自默认ASP.NET MVC 5模板中的AccountController.它做的第一件事是Bastard Injection.

[Authorize]
public class AccountController : Controller
{
    public AccountController()
        : this(
            new UserManager<ApplicationUser>(
                new UserStore<ApplicationUser>(
                    new ApplicationDbContext())))
    {
    }

    public AccountController(UserManager<ApplicationUser> userManager)
    {
        UserManager = userManager;
    }
}
Run Code Online (Sandbox Code Playgroud)

接受的答案将交给那个人,它向我展示了他们所做的事情,其中​​包含了上述要求

c# authentication asp.net-mvc entity-framework dependency-injection

16
推荐指数
2
解决办法
1万
查看次数

避免使用Async重复代码

如何避免为异步和非异步方法编写相同的代码两次.我目前正在使用ASP.NET,因此我目前正在使用请求线程,并且我很快就知道他在代码下面(应该显示我的意图),这肯定是错误的做法.

应用程序死锁,因为await关键字试图返回.Result阻塞的同一线程.

我这样做的全部原因是避免两次编写相同的"FindAll"代码.

public IEnumerable<Resource> FindAll()
{
   return FindAllAsync().Result;

}

public async Task<IEnumerable<Resource>> FindAllAsync()
{
   return await Context.Resources.ToListAsync();
}
Run Code Online (Sandbox Code Playgroud)

那你怎么解决这个问题呢?

.net c# asp.net-mvc async-await

13
推荐指数
1
解决办法
2263
查看次数

强制HttpClient信任单个证书

你能强迫HttpClient只信任一个证书吗?

我知道你可以这样做:

WebRequestHandler handler = new WebRequestHandler();
X509Certificate2 certificate = GetMyX509Certificate();
handler.ClientCertificates.Add(certificate);
HttpClient client = new HttpClient(handler);
Run Code Online (Sandbox Code Playgroud)

但是这会迫使它只信任单个证书,还是会信任证书和所有证书fx.GlobalSign可以验证吗?

基本上我想确保它只能是我的客户正在与之交谈的服务器/证书.

c# asp.net ssl ssl-certificate

12
推荐指数
1
解决办法
8175
查看次数

jQuery Unslide - Touch不起作用

我已经解决了这个问题,而且我只是发帖帮助别人节省一些时间.

我正在使用unslider用于商业网站,我正在做出响应的网站,因此为滑块添加触摸支持的功能很吸引人.不幸的是,正如作者声称的那样,它不能直接开箱即用.

javascript jquery slideshow touch responsive-design

9
推荐指数
1
解决办法
4976
查看次数

如何知道FTP欢迎消息的结束

我的问题是我正在创建一个FTP客户端,到目前为止它的工作完美无缺,除了一个小细节之外,一直困扰着我.我需要知道FTP欢迎消息跨越多少行......这是不可接受的!

    private Socket connection;
    private PrintWriter outStream;
    private Scanner inStream;

public void InitiateConnection() throws IOException 
{
    log.Info(this, "Initiating connection to host: " + host + ":" + port);
    connection = new Socket(host, port);
    log.Info(this, "Connection initiated.");
    outStream = new PrintWriter(connection.getOutputStream(), true);
    inStream = new Scanner(connection.getInputStream());
    Listen();
    Listen();    
    Listen();
}

public String Listen() throws IOException
{
    if(connection == null)
        throw new IOException("Connection not initiated yet");
    String response = inStream.nextLine();
    log.Info(this, "Response: " + response);
    return response;
}
Run Code Online (Sandbox Code Playgroud)

这是简单的设置,我遗漏了所有其他代码,因为它与我的问题没有任何关系.

我尝试了多种尝试来实现这一目标.解决方案1失败:

String response …
Run Code Online (Sandbox Code Playgroud)

java sockets ftp inputstream

8
推荐指数
1
解决办法
3402
查看次数

q提示视口调整不起作用

我已经解决了这个问题,但我想分享它,因为我可以看到很多人正在处理它,并且没有足够的解决方案可用.

qTip视口调整对我不起作用.

javascript jquery jquery-ui qtip

6
推荐指数
1
解决办法
2081
查看次数

我无法使用Reddit的API登录

我正在尝试使用Reddit API来做一些事情.我有一切工作,但更改页面和登录.

我需要登录才能使用我的程序,我知道如何使用我得到的cookie,但我无法登录.

这是代码:

public static Login POST(URL url, String user, String pw) throws IOException
{

    String encodedData =  URLEncoder.encode("api_type=json&user=" + user +"&passwd="+pw, "UTF-8");
    HttpURLConnection ycConnection = null;
    ycConnection = (HttpURLConnection) url.openConnection();
    ycConnection.setRequestMethod("POST");
    ycConnection.setDoOutput(true);
    ycConnection.setUseCaches (false);
    ycConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
    PrintWriter out = new PrintWriter(ycConnection.getOutputStream());


    out.print(encodedData.getBytes());
    out.close();

    BufferedReader in = new BufferedReader(new InputStreamReader(ycConnection.getInputStream()));
    String response = in.readLine();

    Map<String, List<String>> headers = ycConnection.getHeaderFields(); 
    List<String> values = headers.get("Set-Cookie"); 
    String cookieValue = null; 
    for (java.util.Iterator<String> iter = values.iterator(); iter.hasNext(); ) {
         String v = …
Run Code Online (Sandbox Code Playgroud)

java reddit

5
推荐指数
1
解决办法
3405
查看次数

异常未显示在Application Insights中

我们刚刚在服务器上安装了Application Insights。

一切似乎都运行良好,但是服务器上引发的异常未在门户中显示。

我们正在使用自定义工具记录异常,但我们也希望能够在AI中看到它们,尤其是未处理的异常。

它是Windows Server 2012上AI代理的简单安装。

ApplicationInsigts.confg:

<?xml version="1.0" encoding="utf-8"?>
<ApplicationInsights xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings" schemaVersion="2014-05-30">
  <!-- 
    Learn more about Application Insights configuration with ApplicationInsights.config here: 
    http://go.microsoft.com/fwlink/?LinkID=392530
  -->
  <TelemetryChannel>
    <DeveloperMode>false</DeveloperMode>
  </TelemetryChannel>
  <TelemetryModules>
    <Add Type="Microsoft.ApplicationInsights.Tracing.DiagnosticsTelemetryModule, Microsoft.ApplicationInsights" />
    <Add Type="Microsoft.ApplicationInsights.Web.RequestTracking.TelemetryModules.WebRequestTrackingTelemetryModule, Microsoft.ApplicationInsights.Web" />
    <Add Type="Microsoft.ApplicationInsights.Web.RequestTracking.TelemetryModules.WebExceptionTrackingTelemetryModule, Microsoft.ApplicationInsights.Web" />
    <Add Type="Microsoft.ApplicationInsights.Web.RequestTracking.TelemetryModules.WebSessionTrackingTelemetryModule, Microsoft.ApplicationInsights.Web" />
    <Add Type="Microsoft.ApplicationInsights.Web.RequestTracking.TelemetryModules.WebUserTrackingTelemetryModule, Microsoft.ApplicationInsights.Web" />
    <Add Type="Microsoft.ApplicationInsights.RuntimeTelemetry.RemoteDependencyModule, Microsoft.ApplicationInsights.RuntimeTelemetry" />
    <Add Type="Microsoft.ApplicationInsights.RuntimeTelemetry.ApmcModule, Microsoft.ApplicationInsights.RuntimeTelemetry" />
  </TelemetryModules>
  <ContextInitializers>
    <Add Type="Microsoft.ApplicationInsights.Contexts.ComponentContextInitializer, Microsoft.ApplicationInsights" />
    <Add Type="Microsoft.ApplicationInsights.Contexts.DeviceContextInitializer, Microsoft.ApplicationInsights" />
    <Add Type="Microsoft.ApplicationInsights.Web.AzureRoleEnvironmentContextInitializer, Microsoft.ApplicationInsights.Web" />
  </ContextInitializers>
  <TelemetryInitializers>
    <Add Type="Microsoft.ApplicationInsights.Core.TimestampPropertyInitializer, Microsoft.ApplicationInsights" />
    <Add Type="Microsoft.ApplicationInsights.Contexts.NetBiosMachineNameTelemetryInitializer, …
Run Code Online (Sandbox Code Playgroud)

asp.net azure-application-insights

5
推荐指数
1
解决办法
2770
查看次数