我正在开发一项服务,以在WCF中使用基于SSL / TLS凭据的安全性。端点将使用IIS和HTTPS命中。基本的HTTP绑定可以正常工作,但是一旦我尝试添加凭据,我就会不断收到配置错误。我花了几天时间,读了很多文章,但没有成功。
我尝试过
//后面的代码
public partial class Form1 : Form
{
private ProgramState programState = new ProgramState();
public Form1()
{
InitializeComponent();
}
private void btnAcceptAgreement_Click(object sender, EventArgs e)
{
programState.UserAcceptedAgreement = true;
}
private void btnAcceptLiability_Click(object sender, EventArgs e)
{
programState.UserAcknowledgedLiability = true;
}
private void btnSubmitSignature_Click(object sender, EventArgs e)
{
programState.UserSubmittedSignature = true;
}
public void verify()
{
if (programState.EverythingAccepted)
{
tabControl.SelectedIndex = 2;
}
else
{
MessageBox.Show("Enter parameters");
}
}
}
我不断收到“配置错误”,而没有太多关于我到底在做什么的详细信息。我尝试了不同的实现(wsHttpBindings),但没有成功。
答案 0 :(得分:0)
尽管WCF4.5宣布我们可以通过在服务工具类中使用静态Configure方法来设置服务,但我建议您在配置文件中配置服务。简洁明了。
//我需要显式添加我的证书吗?
您不需要设置证书,因为传输安全模式需要IIS网站绑定模块中的https基地址。
此外,如果要使用证书对客户端进行身份验证,请参考以下链接。
https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/transport-security-with-certificate-authentication
首先应该在服务器和客户端之间建立信任关系,然后客户端应提供服务器信任的证书。由于Makecert命令行已过时,因此建议您使用PowerShell创建自签名证书,并确保客户端和服务器运行时环境高于dotnetframwork4.6.2。
。
https://docs.microsoft.com/en-us/powershell/module/pkiclient/new-selfsignedcertificate?view=win10-ps
https://github.com/dotnet/docs/issues/12000
随时让我知道是否有什么可以帮助您的。