Product Documentation

PKIエンティティ

Apr 27, 2017

XenMobileのPKI(Public Key Infrastructure:公開キーのインフラストラクチャ)エンティティ構成は、実際のPKI処理(発行、失効、状態情報)を実行するコンポーネントを表します。これらのコンポーネントはXenMobileに対して内部(この場合は随意と呼ばれます)、またはそれらが企業インフラストラクチャの一部である場合はXenMobileに対して外部になります。 

XenMobileは次の種類のPKIエンティティをサポートします。

  • 任意 CA(Certificate Authority:証明機関)
  • 汎用PKIs (GPKIs)
  • Microsoft 証明書サービス

XenMobileでは、次のCAサーバーがサポートされます。

  • Windows Server 2008 R2
  • Windows Server 2012
  • Windows Server 2012 R2

共通のPKI 概念

種類に関係なく、すべてのPKIエンティティには以下の機能のサブセットがあります。

  • sign: 証明書署名要求(CSR)に基づく新しい 証明書の発行
  • fetch: 既存の証明書とキーペアの回収
  • revoke: クライアント証明書の 失効

CA証明書

PKIエンティティを構成するときに、XenMobileに、そのエンティティにより発行される(またはそのエンティティから回収される)証明書の署名者になるCA証明書を示す必要があります。1つの同じPKIエンティティから、複数の異なるCAが署名した、(フェッチされたか、または新たに署名された)証明書が返されることがあります。これらのCAそれぞれの証明書を、PKIエンティティ構成の一部として提供する必要があります。これを行うため、証明書をXenMobileにアップロードして、PKIエンティティでそれらを参照します。随意CAの場合、証明書は暗黙的に署名CA証明書になりますが、外部のエンティティの場合は、手動で証明書を指定する必要があります。

汎用 PKI

汎用PKI(Generic PKI:GPKI)プロトコルは、さまざまなPKIソリューションとの統一された連携を目的としてSOAP Webサービスレイヤーで実行される独自のXenMobileプロトコルです。GPKIプロトコルは、以下の3つの基本PKI処理を定義します。

  • sign: アダプターは CSRを取得し、それらの要求をPKIに送信して、新しい 署名入り証明書を返すことができます。
  • fetch:アダプターは既存の証明書とキーペア(入力パラメーターによる)をPKIから取得できます。
  • revoke: アダプターは PKIで特定の証明書を失効させることができます。

GPKIプロトコルの受信側はGPKIアダプターです。GPKIアダプターによって、基本処理がそのアダプターが作成された特定の種類のPKIに変換されます。つまり、RSA用のGPKIアダプターと、もう1つEnTrust用のGPKIアダプターなどがあります。

GPKIアダプターは、SOAP Webサービスのエンドポイントとして、自己記述型のWeb Services Description Language(WSDL)定義を公開します。GPKI PKIエンティティの作成は、URLを通じてまたはファイルそのものをアップロードして、XenMobileにそのWSDL定義を提供することを意味します。

アダプターでの各PKI操作のサポートはオプションです。アダプターが特定の処理をサポートする場合、アダプターには対応する機能(署名、フェッチ、失効)があると見なされます。これらの各機能は一連のユーザーパラメーターに関連付けられている場合があります。

ユーザーパラメーターは、特定の処理についてGPKIアダプターで定義されるパラメーターで、XenMobileに値を提供する必要があります。アダプターがサポートする処理(アダプターの機能)と各処理に必要なパラメーターは、XenMobileによりWSDLファイルを解析して決定されます。選択した場合、SSLクライアント認証によってXenMobileとGPKIアダプターの間の接続が保護されます。

汎用PKIを追加するには

1. XenMobileコンソールで、[Configure][Settings][More][PKI Entities]の順にクリックします。

2.[PKI Entities]ページで、[Add]をクリックします。

追加できるPKIエンティティの種類を示す一覧が表示されます。

3.[Generic PKI Entity]をクリックします。

[Generic PKI Entity: General Information]ページが開きます。

4.[Generic PKI Entity: General Information]ページで、以下を行います。

  • Name:PKIエンティティの説明的な名前を入力します。
  • WSDL URL:アダプターについて記述しているWSDLの場所を入力します。
  • Authentication type:一覧から、使用する認証方法を選択します。
  • なし
  • HTTP Basic:アダプターへの接続に必要なユーザー名とパスワードを指定します。
  • Client certificate:正しいSSLクライアント証明書を選択します。

5.[Next]をクリックします。

[Generic PKI Entity: Adapter Capabilities]ページが開きます。

6.[Generic PKI Entity: Adapter Capabilities]ページで、アダプターに関連付けられた機能とパラメーターを確認して、[Next]をクリックします。

[Generic PKI Entity: Issuing CA Certificates]ページが開きます。

7. [Generic PKI Entity: Issuing CA Certificates]ページで、エンティティで使用する証明書を選択します。

注:エンティティからは、異なるCAによって署名された証明書が返される場合がありますが、特定の証明書プロバイダーから取得される証明書の署名は、すべて同じCAによって行われる必要があります。したがって、資格情報プロバイダー設定を構成するときに[Distribution]ページで、ここで構成したいずれかの証明書を選択してください。

8.[Save]をクリックします。

[PKI Entities]の表にエンティティが表示されます。

Microsoft 証明書サービス

XenMobileは、Web登録インターフェイスを通じてMicrosoft Certificate Servicesと連携します。XenMobileはそのインターフェイスを使用した新しい証明書の発行(GPKI署名機能と同等の機能)のみをサポートします。

XenMobileでMicrosoft CA PKIエンティティを作成するには、Certificate ServicesのWebインターフェイスのベースURLを指定する必要があります。選択した場合、SSLクライアント認証によって、XenMobileとCertificate ServicesのWebインターフェイスとの間の接続が保護されます。

Microsoft Certificate Servicesエンティティを追加するには

1. XenMobileコンソールで、右上の歯車アイコンをクリックした後、[More][PKI Entities]をクリックします。

2.[PKI Entities]ページで、[Add]をクリックします。

追加できるPKIエンティティの種類を示す一覧が表示されます。

3.[Microsoft Certificate Services Entity]をクリックします。

[Microsoft Certificate Services Entity: General Information]ページが開きます。

4.[Microsoft Certificate Services Entity: General Information]ページで、以下を行います。

  • Name:新しいエンティティの名前を入力します。この名前は後でそのエンティティを参照するために使用します。エンティティ名は一意の名前にする必要があります。
  • Web enrollment service root URL:Microsoft CA Web登録サービスのベースURL(https://192.0.2.13/certsrv/など)を入力します。URLには、HTTPまたはHTTP-over-SSLを使用します。
  • certnew.cer page name:certnew.cerページの名前。何らかの理由で名前を変更した場合を除き、デフォルト名を使用します。
  • certfnsh.asp:certfnsh.aspページの名前。何らかの理由で名前を変更した場合を除き、デフォルト名を使用します。
  • Authentication type:一覧から、使用する認証方法を選択します。
  • なし
  • HTTP Basic:接続に必要なユーザー名とパスワードを指定します。
  • Client certificate:正しいSSLクライアント証明書を選択します。

5.[Next]をクリックします。

[Microsoft Certificate Services Entity: Templates]ページが開きます。このページで、Microsoft CAがサポートするテンプレートの内部名を指定します。資格情報プロバイダーを作成するとき、ここで定義したテンプレートを一覧で選択します。このエンティティを使用するすべての資格情報プロバイダーが、このようなテンプレートを1つだけ使用します。

Microsoft Certificate Servicesテンプレートの要件は、お使いのMicrosoft ServerバージョンのMicrosoftドキュメントを参照してください。XenMobileには、「証明書」で説明している証明書の形式以外、配布する証明書の要件はありません。

6.[Microsoft Certificate Services Entity: Templates]ページで[Add]をクリックし、テンプレートの名前を入力して、[Save]をクリックします。追加する各テンプレートについて、この手順を繰り返します。

7.[Next]をクリックします。

[Microsoft Certificate Services Entity: HTTP parameters]ページが開きます。このページで、Microsoft Web登録インターフェイスに対するHTTP要求にXenMobileが挿入するカスタムパラメーターを指定します。これは、カスタマイズしたスクリプトをCAで実行している場合にのみ使用できます。

8.[Microsoft Certificate Services Entity: HTTP parameters]ページで[Add]をクリックし、追加するHTTPパラメーターの名前と値を入力して、[Next]をクリックします。

[Microsoft Certificate Services Entity: CA Certificates]ページが開きます。このページでは、システムでこのエンティティを通じて取得される証明書の署名者をXenMobileに通知するよう要求されます。CA証明書が更新された場合は、そのCA証明書をXenMobileで更新すると、変更がエンティティに透過的に適用されます。

9.[Microsoft Certificate Services Entity: CA Certificates]ページで、このエンティティで使用する証明書を選択します。

10.[Save]をクリックします。

[PKI Entities]の表にエンティティが表示されます。

NetScaler証明書失効一覧(CRL)

XenMobileは、サードパーティ証明機関でのみ証明書失効一覧(CRL)をサポートします。Microsoft CAが構成されている場合、XenMobileはNetScalerを使用して失効を管理します。クライアント証明書ベースの認証を構成する場合、NetScaler証明書失効一覧(CRL)設定を構成する必要があるかどうか検討します。[Enable CRL Auto Refresh]。この手順を使用すると、MAM-onlyモードのデバイスのユーザーがデバイス上の既存の証明書を使用して認証することができなくなります。ユーザー証明書が失効してもユーザーによる生成が制限されるわけではないので、XenMobileは新しい証明書を再発行します。この設定は、CRLが期限切れのPKIエンティティを確認する場合、PKIエンティティのセキュリティを強化します。

任意 CA

任意CAは、CA証明書と関連の秘密キーをXenMobileに提供したときに作成されます。XenMobileは、管理者が指定したパラメーターに従って、証明書の発行、失効、および状態情報を内部で処理します。

任意CAを構成するときに、そのCAに対してOCSP(Online Certificate Status Protocol)サポートをアクティブにするオプションがあります。OCSPサポートを有効にした場合に限り、CAは発行する証明書にid-pe-authorityInfoAccess拡張を追加して、以下の場所にあるXenMobileの内部OSCPレスポンダーを指し示します。

https://server/instance/ocsp

OCSPサービスを構成するときに、該当の随意エンティティのOCSP署名証明書を指定する必要があります。CA証明書そのものを署名者として使用できます。CA秘密キーの不必要な漏えいを防ぐ場合(推奨)は、CA証明書で署名された、委任OCSP署名証明書を作成し、id-kp-OCSPSigning extendedKeyUsage拡張を含めます。

XenMobile OCSPレスポンダーサービスは、基本のOCSP応答と要求の以下のハッシュアルゴリズムをサポートします。

  • SHA-1
  • SHA-224
  • SHA-256
  • SHA-384
  • SHA-512

応答はSHA-256および署名証明書キーアルゴリズム(DSA、RSAまたはECDSA)で署名されます。

随意CAを追加するには

1. XenMobileコンソールで、右上の歯車アイコンをクリックした後、[More][PKI Entities]をクリックします。

2.[PKI Entities]ページで、[Add]をクリックします。

追加できるPKIエンティティの種類を示す一覧が表示されます。

3.[Discretionary CA]をクリックします。

[Discretionary CA: General Information]ページが開きます。

4.[Discretionary CA: General Information]ページで、以下を行います。

  • Name:随意CAの説明的な名前を入力します。
  • CA certificate to sign certificate requests:一覧から、証明書要求に署名するために使用する随意CAの証明書を選択します。この証明書一覧は、[Configure][Settings][Certificates]でXenMobileにアップロードした、秘密キーのあるCA証明書から生成されます。

5.[Next]をクリックします。

[Discretionary CA: Parameters]ページが開きます。

6.[Discretionary CA: Parameters]ページで、以下を行います。
  • Serial number generator:随意CAは発行する証明書のシリアル番号を生成します。一覧で[Sequential]または[Non-sequential]を選択して、番号の生成方法を指定します。
  • Next serial number:値を入力して、次に発行される番号を指定します。
  • Certificate valid for:証明書の有効期間(日数)を入力します。
  • Key usage:適切なキーを[On]に設定して、随意CAが発行する証明書の目的を指定します。設定すると、CAによる証明書の発行がそれらの目的に限定されます。
  • Extended key usage:追加パラメーターを追加するには、[Add]をクリックし、キー名を入力して[Save]をクリックします。

7. Nextをクリックします。

[Discretionary CA: Distribution]ページが開きます。

8. [Discretionary CA: Distribution]ページで、配布モードを選択します。

  • Centralized: server-side key generation。この集中管理オプションをお勧めします。サーバー上で秘密キーが生成および保存され、ユーザーデバイスに配布されます。
  • Distributed: device-side key generation。ユーザーデバイス上で秘密キーが生成されます。この分散モードはSCEPを使用し、keyUsage keyEncryptionによるRA暗号化証明書とKeyUsage digitalSignatureによるRA署名証明書が必要です。暗号化と署名で同じ証明書を使用できます。

9. Nextをクリックします。

[Discretionary CA: Online Certificate Status Protocol (OCSP)]ページが開きます。

[Discretionary CA: Online Certificate Status Protocol (OCSP)]ページで、以下を行います。

  • このCAが署名する証明書にAuthorityInfoAccess(RFC2459)拡張を追加する場合は、[Enable OCSP support for this CA][On]に設定します。この拡張は、CAのOCSPレスポンダー(https://server/instance/ocsp)を指し示します。
  • OCSPサポートを有効にした場合は、OSCP署名CA証明書を選択します。この証明書一覧は、XenMobileにアップロードしたCA証明書から生成されます。

10. [Save]をクリックします。

[PKI Entities]の表に随意CAが表示されます。