编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写。

近年来,随着网络犯罪的上升,使用 SSL 保护网站逐渐成为一项备受追捧的功能,Windows Azure 网站也支持此功能。要使用此功能,您需要将证书上传到 Azure,然后将其分配到您的网站。获取证书可能并不容易,因为此过程涉及多个步骤。在本指南中,我们将介绍获取证书的以下方法:

1. 使用 DigiCert 证书实用程序

2. 使用 CertReq

3. 使用 IIS

背景

生成证书的过程由两部分组成。首先,用户创建一个包含请求详细信息的文本文件,即证书签名请求。用户将此文件提交到所选的证书提供商,以获取一个证书响应文件,然后用户可以将此证书响应文件安装在服务器上以完成此过程并获取完整证书。要将此证书用于 Windows Azure 网站,还需完成第 3 部分,即将证书导出为可以上传至 Azure 帐户的 PFX 文件。

大部分服务器产品都具有某些用于生成 CSR 文件和处理证书响应文件的内置机制。例如,在 IIS 中,这是 Action 窗格上的一个按钮:

如果您是一名经验丰富的 IIS 管理员且具有一台可随意使用的服务器,则此过程极为简单直接。如果不是,本指南将提供其他两种执行此过程的方法。

注意:在以下所有过程中,必须在同一台计算机上执行所有的 3 个部分。这是因为 CSR 请求将生成仅此计算机知道的私有加密/解密密钥。如果您尝试在其他计算机上完成此过程,则证书响应将无法获得相匹配的密钥,因此会失败。

使用 DigiCert 证书实用程序创建 CSR

DigiCert 的证书实用程序是一款第三方工具,旨在通过提供简单的过程图形用户界面来简化生成 CSR 的过程。这是迄今为止执行此过程最简单的方法,但是 DigiCert 证书实用程序并非 Microsoft 工具,不受 Microsoft 支持。您可以从此处下载此工具。此工具可用于任何证书提供商。步骤如下:

·   运行此实用程序,然后单击右上角的 Create CSR

·   键入网站的 URL 及其他详细信息。

·   选择 key length。请注意,Microsoft 建议的密钥长度为 2048 位

·   单击 Generate 并接收 CSR 代码:

·  使用产生的 CSR 代码购买证书。大部分提供商均要求将文本粘贴到其网页上,其他提供商则可能要求您将文本保存到某个文件然后上传到其网站。之后,它们将向您提供一个扩展名为
.CER 的文件。将此文件保存到执行 CSR 请求的计算机上。

· 要完成此过程,请单击 DigiCert 实用程序右上角的
Import
,然后导航到从证书提供商接收的 .CER 文件。 ***

· 完成此过程后,您将在工具中看到新的证书。单击此证书,然后单击证书列表屏幕底部的
Export Certificate

· 选择 Yes, export the private key,然后导出到可用于 Azure 网站的
PFX 文件。设置导出密码,稍后将文件上传到 Azure 时需使用此密码:

*** 某些证书提供商提供的证书格式可能与 DigiCert 实用程序不兼容。如果导入失败,您可以使用下述实用程序完成此过程,即按照下一节中的步骤 5 后执行此过程。

使用命令行工具 CertReq 创建 CSR

CertReq 是构建在任何现代版本的 Windows 操作系统中的工具。它旨在获取具有某些参数的简单文本文件,并生成可以发送到证书提供商的 CSR 文件。提供商返回 CER 文件后,您可以使用 CertReq 完成请求。届时,您可以使用
Windows Certificate Management 控制台将证书导出为 Windows Azure 网站可使用的 PFX 格式。以下是此过程的步骤:

· 为 CertReq 创建一个输入文件。这是包含您证书某些详细信息的简单文本文件。最重要的是,Subject Name 需与要使用证书的网站的 URL 相匹配。以下示例是一个标准请求,如果需要,您可以阅读 CertReq 文档并调整参数以满足您的需求。

将高亮部分替换为您的网站地址。例如,如果您的网站为 https://www.contoso.com,则该行应为:

Subject ="CN=www.contoso.com"

您也可以调整请求的其他属性,但这是高级任务。有关可以为 CertReq 配置的其他选项的详细信息,请访问此页面

·   将该文件另存为文本文件到硬盘上,然后打开 CMD 窗口并导航到保存文件的位置。

·   键入命令 CertReq –new MyRequest.txt MyRequest.csr,其中 MyRequest.txt 是在上一步中保存的文件的名称,MyRequest.csr 是将要创建的目标文件名称:

·  使用产生的 MyRequest.csr 文件购买证书。大部分提供商要求您将文件上传到其服务器。某些提供商可能要求您将文件内容粘贴到其网页中(您可以使用记事本打开此文件)。之后,提供商将向您提供一个扩展名为 .CER 的文件。将此文件复制到执行 CSR 请求的计算机上。

·  在 CMD 窗口中,导航到存储 .CER 文件的位置,然后键入
CertReq –accept –user MyCertificate.cer

·  按 Windows+R 键打开Run,键入
certmgr.msc,然后按 Enter 键以打开证书管理控制台

· 在证书管理器中,导航到 Personal/Certificates。您的新证书应该位于此处:

· 右键单击该证书,然后选择 All Tasks/Export

· 在向导中,选择 YES 导出私钥。在下一页
Personal Information Exchange – PKCS #12上,执行以下操作:

·  在下一页上,启用 password 选项,然后键入一个密码。稍后上传证书时需使用此密码。在下一页上,键入已导出文件的目标路径和名称:

·  这样就可以了,您拥有了可以上传到 Azure 帐户且可用于您的网站的新 PFX 文件。

使用 IIS 创建 CSR

如果您具有一台可随意使用的 IIS 服务器,您可以使用它来生成证书。如果没有,您可以在运行 Windows(服务器或客户端)的任意计算机上轻松安装证书。步骤如下:

· 在要执行此操作的计算机上安装 IIS。

· 打开 IIS 管理控制台

· 单击左侧的计算机名称,然后单击中间的
Server Certificate,再单击右侧 Action 窗格中的 Create Certificate Request

· 在向导中,填写网站的目标 URL(去掉 HTTPS:// 前缀)及其他详细信息。请注意,Microsoft 建议的密钥长度为 2048 位:

·  完成向导并使用产生的 CSR 文件购买证书。大部分提供商要求您将文件上传到其服务器。某些提供商可能要求您将文件内容粘贴到其网页中(您可以使用记事本打开此文件)。之后,提供商将向您提供一个扩展名为 .CER 的文件。将此文件复制到执行 CSR 请求的计算机上。

·   在 IIS 控制台中,单击 Action 窗格中的 Complete Certificate Request。

·        按照上一节中的步骤 6 到 11 将证书导出到可用于 Azure 网站的 PFX 文件。

后续步骤

现在您已具有 PFX 文件形式的证书,您可以将其上传到您的 Azure 帐户,并将其用于网站和其他服务。有关此过程的更多信息,请访问此文章。在某些情况下,您的证书需求可能有所不同。例如,如果您要使用
SAN 证书或自签名证书,获取这些证书的过程将有所不同。可在此处阅读相关说明

本文翻译自:

http://blogs.msdn.com/b/windowsazure/archive/2013/12/05/obtaining-a-certificate-for-use-with-windows-azure-web-sites-waws.aspx

获取证书以用于 Windows Azure 网站 (WAWS)的更多相关文章

  1. 通过 HTTPS 和 SSL 确保 Windows Azure 网站 (WAWS) 安全

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 随着身份盗窃和各种形式的网络犯罪迅速增多,使用安全套接字层 (SSL) 对网站进行保护变得越来越 ...

  2. 最佳实践:Windows Azure 网站 (WAWS)

     编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Sunitha Muthukrishna 撰写. Windows Azure 网站 (WAWS) 允许您在 Windows ...

  3. Windows Azure 网站 (WAWS) 和中间证书

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 在 Windows Azure 网站上使用 SSL 已经司空见惯.虽然向网站上传和分配证书通常简 ...

  4. Windows Azure 网站 (WAWS) 中的服务器端包含 (SSI)

     编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Erez Benari 撰写. Windows Azure 网站客户普遍关心的一个问题是关于我们对服务器端包含(Server ...

  5. 在 Windows Azure 网站 (WAWS) 上对 Orchard CMS 使用 Azure 缓存

    编辑人员注释: 本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 如果您当前的 OrchardCMS 网站在 Windows Azure 网站 ...

  6. Windows Azure 网站自愈

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Apurva Joshi 撰写. 您有多少次在半夜被叫醒去解决一个仅需重新启动网站即可解决的问题?要是可以自动检测一些状况并自动恢 ...

  7. Windows Azure 网站开发Stacks支持

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Daria Grigoriu 和 Windows Azure 网站开发人员体验合作伙伴共同撰写. Windows Azure 网 ...

  8. 在 Windows Azure 网站中进行纵向扩展和横向扩展

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Byron Tardif 撰写. 当您开始一个新的 Web 项目,或者刚刚开始开发一般的网站和应用程序时,您可能希望从小处着手. ...

  9. 进一步探索:Windows Azure 网站中解锁的配置选项

     编辑人员注释: 本文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 在 Windows Azure 网站 (WAWS) 中管理网站时,许多选项可使用 Azu ...

随机推荐

  1. Mini-project # 1 - Rock-paper-scissors-___An Introduction to Interactive Programming in Python"RICE"

    Mini-project description - Rock-paper-scissors-lizard-Spock Rock-paper-scissors is a hand game that ...

  2. [Swust OJ 799]--Superprime Rib(DFS)

    题目链接:http://acm.swust.edu.cn/problem/799/ Time limit(ms): 1000 Memory limit(kb): 10000   Description ...

  3. ThinkPHP第十二天(Import导入第三方类库方法,独立分组文件夹结构)

    1.Import(路径+类名,基础路径): 平时导入类时有三种基础路径:Think:import('Think.core.Action');Think表示ThinkPHP/Lib基础路径,完整路径为T ...

  4. javascript 检测密码强度 美化版

    模仿美团的美化 <!DOCTYPE> <head runat="server"> <title></title> <link ...

  5. GCC -Wall

    官网:http://gcc.gnu.org/onlinedocs/gcc-4.7.2/gcc/Warning-Options.html#Warning-Options3.8 Options to Re ...

  6. 告别IE给我们的web开发带来的困扰(使用chrome frame v8引擎)

    茶爸爸个人微信:benyzhous,公众号:cha-baba欢迎骚扰 由于客户所有机器必须使用IE6浏览器,导致我们在开发项目过程中遇到非常多的样式与性能问题,在偶然的一次使用360软件管家搜索chr ...

  7. 字符串操作函数<string.h>相关函数strcpy,strcat,等源码。

    首先说一下源码到底在哪里找. 我们在文件中包含<cstring>时,如果点击右键打开文档, 会打开cstring,我们会发现路径为: D:\Program Files\visual stu ...

  8. wiki oi 3116 高精度练习之加法

    题目描述 Description 给出两个正整数A和B,计算A+B的值.保证A和B的位数不超过500位. 输入描述 Input Description 读入两个用空格隔开的正整数 输出描述 Outpu ...

  9. CSS3中的border-radius

    以前在CSS2的基础上做圆角还能算得上是门学问!!各种图片.各种嵌套(<精通CSS——高级web标准解决方案>中有介绍,过程在这就不说了,网上一查就查得到,总之就是:没用CSS3之前觉得很 ...

  10. 【JavaScript】==与===对比

    1.对于string,number等基础类型,==和===是有区别的 1)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,===如果类型不同,其结果就是不等 2)同类型比较,直接进 ...