aws acm get-certificate

表題のコメントについて。

■ 環境

  • awscli 1.14.50
  • Mac OSX El Capitan

■ get-certificate

サブコマンド名の通り、証明書の取得である。

もちろん取得できるのは証明書と中間証明書だけである。下記のようにして取得することができる。まずは`acm list-certificates`で取得したい証明書の”CertificateArn“を確認することが必要である。

$ aws acm list-certificates
{
    "CertificateSummaryList": [
        {
            "CertificateArn": "arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
            "DomainName": "example.withsin.net"
        },
        {
  :
$ aws acm get-certificate --certificate-arn arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
{
    "Certificate": "-----BEGIN CERTIFICATE-----\nMII...\n-----END CERTIFICATE-----\n",
    "CertificateChain": "-----BEGIN CERTIFICATE-----\nMII.../\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMII...\n-----END CERTIFICATE-----"
}

ManagementConsoleから証明書をインポートした時には下記3つを投入している。

  • 証明書本文
  • 証明書のプライベートキー
  • 証明書チェーン

インポート時に注意メッセージがあったように、秘密鍵は取得することはできない。当然か。

以上。

■ 関連

aws acm describe-certificate

aws acm list-certificates

aws acm describe-certificate

表題について。

■ 環境

  • awscli 1.14.30
  • Mac OSX El Capitan

■ describe-certificate

個々の証明書についての情報を取得できる。オプションに”–certificate-arn“は必須であり、`aws acm list-certificates`の結果が必要である。

$ aws acm list-certificates
{
    "CertificateSummaryList": [
        {
            "CertificateArn": "arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
            "DomainName": "www.withsin.net"
        },
  :
    ]
}
$
$ aws acm describe-certificate --certificate-arn arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
{
    "Certificate": {
        "CertificateArn": "arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
        "DomainName": "www.withsin.net",
        "SubjectAlternativeNames": [
            "www.withsin.net"
        ],
        "DomainValidationOptions": [
            {
                "DomainName": "www.withsin.net",
                "ValidationStatus": "SUCCESS",
                "ResourceRecord": {
                    :
                },
                "ValidationMethod": "DNS"
            }
        ],
        "Serial": "XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX",
        "Subject": "CN=www.withsin.net",
        "Issuer": "Amazon",
        :
        "Status": "ISSUED",
        :
        "KeyAlgorithm": "RSA-2048",
        "SignatureAlgorithm": "SHA256WITHRSA",
        "InUseBy": [
            "arn:aws:elasticloadbalancing:ap-northeast-1:XXXXXXXXXXXX:loadbalancer/app/withsin/XXXXXXXXXXXXXXXX"
        ],
        "Type": "AMAZON_ISSUED",
        :
    }
}
$

結構いろいろわかる。”ACMで発行された証明書”であるとか。ManagementConsoleでは一覧画面で出ている内容である。ちなみにインポートした証明書の場合は下記のようになっていた。

$ aws acm describe-certificate --certificate-arn arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
{
  :
        "Serial": "XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX",
        "Subject": "CN=blog.withsin.net",
        "Issuer": "GeoTrust Inc.",
        "ImportedAt": XXXXXXXX.0,        :
        "Status": "ISSUED",
  :
        "Type": "AMAZON_ISSUED",
  :
}
$

以上。

■ 関連

aws acm list-certificates

aws acm list-certificates

AWS Certificate Managerを触る時はほぼManagement Consoleからしか触らないのであるが、`aws`コマンドではどうやるのかな?と思ってやってみた。まずは表題のコマンドから。

■ 環境

  • awscli 1.14.30
  • Mac OSX El Capitan

■ ACM

Management Consoleで触る時はいつも一覧から探しだせずに検索しているのだが下記にある。

セキュリティ、アイデンティティ、コンプライアンス > Certificate Manager

ACM“という言葉で引っかからないのにいつもハマる。

■ list-certificates

Management Consoleでは証明書の一覧を取得できる。ACMでリクエストした証明書もインポートした証明書も含まれる。コマンドでは下記のように取得できる。

$ aws acm list-certificates
{
    "CertificateSummaryList": [
        {
            "CertificateArn": "arn:aws:acm:ap-northeast-1:XXXXXXXXXXXX:certificate/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
            "DomainName": "www.withsin.net"
        },
  :
    ]
}
$

さすがにManagement Consoleのように他にも情報を含めて表示はしてくれない。この結果から得られたARNを使ってさらに問い合わせをする必要がある。

以上。

■ 関連

aws acm describe-certificate