証明書リソース

証明書は、Web サーバーが ID とセキュリティで保護された通信チャネルを証明するためのメカニズムを提供します。 証明書 API は、HTTPS 経由でコンテンツを提供する Web サイトを作成するために不可欠です。

get/api/certificates/{id}する

{
    "alias": "My Self Signed Certificate",
    "id": "{id}",
    "issued_by": "CN=localhost",
    "subject": "CN=localhost",
    "thumbprint": "1E927A29E966FA11A7C469BC565A9E00B11F5F95",
    "signature_algorithm": "sha256RSA",
    "valid_from": "2017-04-12T11:26:26Z",
    "valid_to": "2019-04-12T11:26:26Z",
    "version": "3",
    "intended_purposes": [
        "Client Authentication",
        "Server Authentication"
    ],
    "private_key": {
        "exportable": "false"
    },
    "subject_alternative_names": [
        "DNS Name=localhost",
        "DNS Name=my-work-pc"
    ],
    "store": {
        "name": "My",
        "id": "{store-id}",
        "_links": {
            "self": {
                "href": "/api/certificates/stores/{store-id}"
            }
        }
    }
}

範囲要求

Web サーバーが非常に大量の証明書を持つことは珍しくありません。 これらのサーバーの証明書 API の使いやすさを向上させるために、エンドポイントは範囲要求をサポートします。 証明書エンドポイントに HEAD 要求を送信すると、X-Total-Count HTTP ヘッダーで使用可能な証明書の合計数で応答するようにサーバーに求められます。 その後、後続の要求で Range ヘッダーを設定することで、証明書をチャンク単位で要求できます。

HEAD/api/certificates

200 OK
x-total-count: 100

100 から 2 番目と 3 番目の証明書を再処理する

GET /api/certificates
Access-Token: Bearer {Access-Token}
Range: certificates=1-2

証明書ストア

すべての証明書は証明書ストアに属します。 使用可能な証明書ストアの一覧は、/api/certificates/stores証明書ストア エンドポイントから取得できます。 これらの証明書ストアには、ストア内の証明書に対して許可される操作を指定する 要求 プロパティがあります。 このアクセスは、アプリケーション設定 ファイルの証明書セクションを使用して構成できます。 現在、証明書ストアでは読み取り操作のみがサポートされています。 今後、API は証明書のインポート、エクスポート、削除、作成をサポートする可能性があります。

get/api/certificates/storesする

{
    "stores": [
        {
            "name": "My",
            "id": "{store-id}",
            "_links": {
                "self": {
                    "href": "/api/certificates/stores/{store-id}"
                }
            }
        },
        {
            "name": "WebHosting",
            "id": "{store-id}"
            // _links omitted
        },
        {
            "name": "IIS Central Certificate Store",
            "id": "{store-id}"
            // _links omitted
        }
    ]
}

特定のストアの証明書を一覧表示する

証明書 API では、ストア別の証明書のフィルター処理がサポートされています。 これを行うには、ターゲット証明書ストアの id プロパティを取得する必要があります。 これは、証明書ストア エンドポイントを介して行うことができます。 その後、クエリ文字列の store.id フィールドを指定する証明書エンドポイントに対して要求を行う必要があります。 次の要求は、組み込みの Web ホスティング 証明書ストアのすべての証明書を取得します。

GET/api/certificates?store.id={store-id}

{
    "certificates": [
        {
            "alias": "WebHostCert",
            "id": "{cert-id}",
            "issued_by": "CN=localhost",
            "subject": "CN=localhost",
            "thumbprint": "8E7933F41998C507B30F0E0AC8B548A903FE7843",
            "valid_to": "2019-02-28T14:32:33Z",
            "_links": {
                "self": {
                    "href": "/api/certificates/{cert-id}"
                }
            }
        }
    ]
}