繁体   English   中英

ssl自签名证书错误-本地主机

[英]ssl self signed certificate error - localhost

我正在使用这门课程,这很有趣,但是我有一些问题。

http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api

我收到证书错误,但我知道为什么会出现此问题。 该证书应连接到我的计算机的名称。 我不了解他如何使用此证书以及如何编辑此问题。

在此处输入图片说明

这是重要的代码。 解决证书名称问题该怎么办?

using System;
using System.Net;
using System.Net.Http;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;

namespace LocalAccountsApp.Filters
{
    public class RequireHttpsAttribute : AuthorizationFilterAttribute
    {
        public int Port { get; set; }

        public RequireHttpsAttribute()
        {
            Port = 443;
        }

        public override void OnAuthorization(HttpActionContext actionContext)
        {
            var request = actionContext.Request;

            if (request.RequestUri.Scheme != Uri.UriSchemeHttps)
            {
                var response = new HttpResponseMessage();

                if (request.Method == HttpMethod.Get || request.Method == HttpMethod.Head)
                {
                    var uri = new UriBuilder(request.RequestUri);
                    uri.Scheme = Uri.UriSchemeHttps;
                    uri.Port = this.Port;

                    response.StatusCode = HttpStatusCode.Found;
                    response.Headers.Location = uri.Uri;
                }
                else
                {
                    response.StatusCode = HttpStatusCode.Forbidden;
                }

                actionContext.Response = response;
            }
            else
            {
                base.OnAuthorization(actionContext);
            }
        }
    }

}

该错误是正确的。 您正在使用的证书是针对localhost自己签名的。 由于它不是由受信任的证书根(例如,Verisign)签名的,因此浏览器会警告您该证书无效,因此该站点可能是非法的。

该错误应该不会导致功能问题,并且在部署到生产环境时,应该为要部署到的域获取一个受信任的证书签名。

您不会让任何人为域localhost签署证书,但是如果错误困扰您,可以使用MMC将正在使用的证书添加到受信任的根证书列表中,如本TechNet文章所述。 。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM