

 適用於 JavaScript 的 AWS SDK v2 已end-of-support。我們建議您遷移至 [適用於 JavaScript 的 AWS SDK v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/)。如需如何遷移的其他詳細資訊和資訊，請參閱此[公告](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 處理 IAM 伺服器憑證
<a name="iam-examples-server-certificates"></a>

![\[JavaScript code example that applies to Node.js execution\]](http://docs.aws.amazon.com/zh_tw/sdk-for-javascript/v2/developer-guide/images/nodeicon.png)

**這個 Node.js 程式碼範例會說明：**
+ 如何執行管理 HTTPS 連線伺服器憑證的基本任務。

## 使用案例
<a name="iam-examples-server-certificates-scenario"></a>

若要啟用網站或應用程式的 HTTPS 連線 AWS，您需要 SSL/TLS *伺服器憑證*。若要將從外部供應商取得的憑證與網站或應用程式搭配使用 AWS，您必須將憑證上傳至 IAM 或將其匯入 AWS Certificate Manager。

在此範例中，一系列 Node.js 模組用於處理 IAM 中的伺服器憑證。Node.js 模組使用適用於 JavaScript 的 SDK，以下列 `AWS.IAM`用戶端類別的方法管理伺服器憑證：
+ [listServerCertificates](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IAM.html#listServerCertificates-property)
+ [getServerCertificate](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IAM.html#getServerCertificate-property)
+ [updateServerCertificate](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IAM.html#updateServerCertificate-property)
+ [deleteServerCertificate](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IAM.html#deleteServerCertificate-property)

如需伺服器憑證的詳細資訊，請參閱《*IAM 使用者指南*》中的[使用伺服器憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html)。

## 先決條件任務
<a name="iam-examples-server-certificates-prerequisites"></a>

若要設定和執行此範例，您必須先完成這些任務：
+ 安裝 Node.js。如需安裝 Node.js 的詳細資訊，請參閱 [Node.js 網站](https://nodejs.org)。
+ 透過使用者登入資料建立共用組態檔。如需提供共用登入資料檔案的詳細資訊，請參閱 [從共用登入資料檔案中在 Node.js 中載入登入資料](loading-node-credentials-shared.md)。

## 列出伺服器憑證
<a name="iam-examples-server-certificates-listing"></a>

以檔名 `iam_listservercerts.js` 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 IAM，請建立 `AWS.IAM` 服務物件。呼叫 `AWS.IAM` 服務物件的 `listServerCertificates` 方法。

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the IAM service object
var iam = new AWS.IAM({ apiVersion: "2010-05-08" });

iam.listServerCertificates({}, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

若要執行範例，請在命令列中輸入以下內容。

```
node iam_listservercerts.js
```

您可以在 [GitHub 上](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/iam/iam_listservercerts.js)找到這個範本程式碼。

## 取得伺服器憑證
<a name="iam-examples-server-certificates-getting"></a>

以檔名 `iam_getservercert.js` 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 IAM，請建立 `AWS.IAM` 服務物件。建立包含取得憑證所需參數的 JSON 物件，其應由您要的伺服器憑證名稱所組成。呼叫 `AWS.IAM` 服務物件的 `getServerCertificates` 方法。

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the IAM service object
var iam = new AWS.IAM({ apiVersion: "2010-05-08" });

iam.getServerCertificate(
  { ServerCertificateName: "CERTIFICATE_NAME" },
  function (err, data) {
    if (err) {
      console.log("Error", err);
    } else {
      console.log("Success", data);
    }
  }
);
```

若要執行範例，請在命令列中輸入以下內容。

```
node iam_getservercert.js
```

您可以在 [GitHub 上](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/iam/iam_getservercert.js)找到這個範本程式碼。

## 更新伺服器憑證
<a name="iam-examples-server-certificates-updating"></a>

以檔名 `iam_updateservercert.js` 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 IAM，請建立 `AWS.IAM` 服務物件。建立包含更新憑證所需參數的 JSON 物件，其應由現有伺服器憑證名稱和新憑證名稱所組成。呼叫 `AWS.IAM` 服務物件的 `updateServerCertificate` 方法。

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the IAM service object
var iam = new AWS.IAM({ apiVersion: "2010-05-08" });

var params = {
  ServerCertificateName: "CERTIFICATE_NAME",
  NewServerCertificateName: "NEW_CERTIFICATE_NAME",
};

iam.updateServerCertificate(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

若要執行範例，請在命令列中輸入以下內容。

```
node iam_updateservercert.js
```

您可以在 [GitHub 上](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/iam/iam_updateservercert.js)找到這個範本程式碼。

## 刪除伺服器憑證
<a name="iam-examples-server-certificates-deleting"></a>

以檔名 `iam_deleteservercert.js` 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 IAM，請建立 `AWS.IAM` 服務物件。建立包含刪除伺服器憑證所需參數的 JSON 物件，其應由要刪除的憑證名稱所組成。呼叫 `AWS.IAM` 服務物件的 `deleteServerCertificates` 方法。

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the IAM service object
var iam = new AWS.IAM({ apiVersion: "2010-05-08" });

iam.deleteServerCertificate(
  { ServerCertificateName: "CERTIFICATE_NAME" },
  function (err, data) {
    if (err) {
      console.log("Error", err);
    } else {
      console.log("Success", data);
    }
  }
);
```

若要執行範例，請在命令列中輸入以下內容。

```
node iam_deleteservercert.js
```

您可以在 [GitHub 上](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/iam/iam_deleteservercert.js)找到這個範本程式碼。