New-ExchangeCertificate

 

適用先: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1

トピックの最終更新日: 2009-05-11

トランスポート層セキュリティ (TLS) サービスおよび SSL (Secure Sockets Layer) サービス用の新しい自己署名入りの証明書または新しい証明書要求を作成するには、New-ExchangeCertificate コマンドレットを使用します。

important重要 :
SSL および TLS サービス用の証明書を構成する場合、考慮する必要がある変数が多数存在します。これらの変数が構成全体にどのように影響するのかを理解しておく必要があります。作業を続ける前に、「Exchange 2007 Server での証明書の使用」を読んでください。

構文

New-ExchangeCertificate [-Confirm [<SwitchParameter>]] [-DomainController <String>] [-DomainName <MultiValuedProperty>] [-FriendlyName <String>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-PrivateKeyExportable <$true | $false>] [-Services <None | IMAP | POP | UM | IIS | SMTP>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]

New-ExchangeCertificate [-BinaryEncoded <SwitchParameter>] [-Confirm [<SwitchParameter>]] [-DomainController <String>] [-DomainName <MultiValuedProperty>] [-Force <SwitchParameter>] [-FriendlyName <String>] [-GenerateRequest <SwitchParameter>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-Path <String>] [-PrivateKeyExportable <$true | $false>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]

解説

New-ExchangeCertificate コマンドレットでは、SwitchParameter という種類のパラメータを多数使用します。この種類のパラメータを使用する方法の詳細については、「パラメータ」の「スイッチ パラメータ」を参照してください。

New-ExchangeCertificate コマンドレットを実行するには、使用するアカウントに次の権限が委任されている必要があります。

  • Exchange サーバー管理者の役割および対象サーバーのローカル Administrators グループ

エッジ トランスポート サーバーの役割がインストールされているコンピュータで New-ExchangeCertificate コマンドレットを実行するには、そのコンピュータのローカルの Administrators グループのメンバであるアカウントを使用してログオンする必要があります。

Microsoft Exchange Server 2007 を管理するために必要なアクセス許可、役割の委任、および権限の詳細については、「アクセス許可に関する考慮事項」を参照してください。

パラメータ

パラメータ 必須かどうか 種類 説明

BinaryEncoded

省略可能

System.Management.Automation.SwitchParameter

このパラメータ スイッチを使用して、エクスポートしたファイルのエンコード方法を指定します。既定では、このコマンドレットは Base64 でエンコードされたファイルを作成します。

DER エンコード ファイルを作成するには、このパラメータを $True に設定します。

Confirm

省略可能

System.Management.Automation.SwitchParameter

Confirm パラメータを指定すると、コマンドの処理が一時停止します。処理を続行するには、コマンドの処理内容を確認する必要があります。Confirm パラメータに値を指定する必要はありません。

DomainController

省略可能

System.String

Active Directory ディレクトリ サービスからデータを取得するドメイン コントローラの完全修飾ドメイン名 (FQDN) を指定するには、コマンドに DomainController パラメータを含めます。DomainController パラメータは、エッジ トランスポート サーバーの役割を実行するコンピュータではサポートされません。エッジ トランスポート サーバーの役割は、ローカルの Active Directory Application Mode (ADAM) インスタンスにのみ書き込みを行います。

DomainName

省略可能

Microsoft.Exchange.Data.MultiValuedProperty

このパラメータを使用して、作成される証明書要求に 1 つ以上のドメイン名 (FQDN) またはサーバー名を入力します。

ドメイン名に使用する文字は、"a ~ z"、"0 ~ 9" およびハイフン ("-") に制限されています。各ドメイン名は 255 文字以下にする必要があります。

複数のドメイン名またはサーバー名を入力するには、名前をコンマで区切って入力する必要があります。

Force

省略可能

System.Management.Automation.SwitchParameter

このパラメータ スイッチを使用して、このコマンドレットに指定したファイル パスに一致する既存の証明書要求ファイルを上書きします。

既定では、このコマンドレットは既存のファイルを上書きしません。

FriendlyName

省略可能

System.String

このパラメータを使用して、作成される証明書のフレンドリ名を指定します。フレンドリ名は 64 文字未満にする必要があります。

既定のフレンドリ名は "Microsoft Exchange" です。

GenerateRequest

省略可能

System.Management.Automation.SwitchParameter

このパラメータを使用して、作成する証明書オブジェクトの種類を指定します。

既定では、このパラメータはローカル コンピュータの証明書ストアに自己署名入りの証明書を作成します。

ローカルの要求ストアに、PKI 証明書 (PKCS #10) に対する証明書要求を作成するには、このパラメータを $True に設定します。

IncludeAcceptedDomains

省略可能

System.Management.Automation.SwitchParameter

このパラメータを使用して、定義されているすべての承認済みドメインをドメイン名フィールドに入力します。

要求に DomainName パラメータを指定することもできます。作成される証明書または要求には、2 つの値を結合した結果が入力されます。

IncludeAutoDiscover

省略可能

System.Management.Automation.SwitchParameter

このパラメータを使用して、作成される証明書に対して生成される各ドメイン名に "autodiscover" という接頭辞を追加します。このパラメータは、クライアント アクセス サーバーの役割がインストールされた Exchange Server でこのコマンドレットを実行する場合にのみ、指定します。注 : "autodiscover" という接頭辞がドメイン名に既に含まれている場合、このパラメータはこの接頭辞を追加しません。

Instance

省略可能

System.Security.Cryptography.X509Certificates.X509Certificate2

このパラメータを使用して、オブジェクト全体をコマンドに渡して処理します。Instance パラメータは、オブジェクト全体をコマンドに渡す必要があるスクリプトで主に使用されます。

KeySize

省略可能

System.Int32

このパラメータを使用して、作成する証明書に関連付けられた RSA パブリック キーのサイズ (ビット単位) を指定します。

指定できる値は、40962048、および 1024 です。既定値は 2048 です。

Path

省略可能

System.String

このパラメータを使用して、作成される PKCS #10 要求ファイルのパスを指定します。

このパラメータは、GenerateRequest$true に設定されている場合のみ有効です。

New-ExchangeCertificate コマンドレットは、Path パラメータが指定されていても、ローカルの証明書ストアに証明書要求を生成します。ローカルの証明書ストアに生成される証明書要求には、作成される証明書のキーが含まれます。

このパラメータを使用する場合は、要求ファイルの名前を指定する必要があります。要求ファイルの名前は、次の例のように拡張子 .req で終わる必要があります。

-Path c:\certificates\request.req

.req ファイルは証明機関 (CA) が証明書を生成するために使用します。

PrivateKeyExportable

省略可能

System.Boolean

このパラメータを使用して、作成される証明書の秘密キーをエクスポート可能とするかどうかを指定します。

既定では、このコマンドレットによって作成するすべての証明書要求および証明書で、秘密キーはエクスポートできません。

秘密キーをエクスポートできない場合、証明書自体をエクスポートおよびインポートできないということを理解しておく必要があります。

作成される証明書から秘密キーをエクスポートできるようにするには、このパラメータを $true に設定します。

Services

省略可能

Microsoft.Exchange.Management.SystemConfigurationTasks.AllowedServices

このパラメータを使用して、作成される証明書を使用するサービスを指定します。GenerateRequest の値を $true に設定した場合は、サービスを指定できません。

有効なエントリには、以下のサービスの組み合わせが含まれます。

  • IMAP
  • POP
  • UM
  • IIS
  • SMTP
  • None

複数のサービスで使用する自己署名入りの証明書を作成するには、次の例のように値をコンマで区切り、引用符で囲みます。

-Services "IMAP, POP, IIS"

別のコンピュータにエクスポートできるように無効化した証明書を作成するには、このパラメータを None に設定します。

既定値は SMTP です。

SubjectName

省略可能

System.Security.Cryptography.X509Certificates.X500DistinguishedName

このパラメータを使用して、作成される証明書のサブジェクト名を指定します。

証明書のサブジェクト名は、DNS に対応するサービスによって使用されるフィールドです。"サブジェクト名" フィールドは、証明書を特定のサーバーまたはドメイン名にバインドします。

サブジェクト名は、1 つ以上の相対識別名 (RDN とも呼ばれる) から成る X.500 の識別名です。

既定では、コマンドレットを実行するサーバーのホスト名が、作成される証明書で CN として使用されます。たとえば、コマンドレットがサーバー EXMBX01 で実行される場合は、サブジェクト名 CN=EXMBX01 が使用されます。

WhatIf

省略可能

System.Management.Automation.SwitchParameter

WhatIf パラメータには、オブジェクトに対して行われる操作をシミュレートすることを指定します。WhatIf パラメータを使用することで、実際に変更を加えずに、発生する変更内容を表示することができます。WhatIf パラメータに値を指定する必要はありません。

入力の種類

戻り値の種類

エラー

エラー 説明

 

例外

例外 説明

 

最初の例は、引数を指定しないコマンドレットの実行を示しています。引数を指定しないで New-ExchangeCertificate コマンドレットを実行すると、SMTP SSL/TLS 用の自己署名入りの証明書が生成されます。ローカル コンピュータの FQDN が証明書のサブジェクト名になります。この内部トランスポートの証明書はそのまま、エッジ トランスポート サーバーとハブ トランスポート サーバー間で直接信頼を目的とした認証および暗号化に使用されます。また、Network Services ローカル セキュリティ グループに、証明書に関連付けられた秘密キーに対する読み取りアクセス権が与えられます。さらに、証明書が Active Directory に発行され、相互 TLS のためのサーバーの正当性を Exchange Server の直接信頼を使用して検証できるようになります。

2 番目の例は、証明書要求を生成してローカル コンピュータのパスにコピーするコマンドレットの実行を示しています。作成される証明書には以下の属性が関連付けられます。

  • サブジェクト名 : c=<ES>,o=<Diversión de Bicicleta>,cn=mail1.DiversiondeBicicleta.com
  • サブジェクトの別名 : woodgrove.com and example.com
  • エクスポート可能な秘密キー

詳細については、「TLS の証明書または証明書の要求の作成」および次の Exchange Server チームのブログ エントリを参照してください。

詳細については、ドメインのセキュリティに関するホワイト ペーパーを参照してください (このサイトは英語の場合があります)。

New-ExchangeCertificate
New-ExchangeCertificate -GenerateRequest -Path c:\certificates\request.req -SubjectName "c=ES, o=Diversión de Bicicleta, cn=mail1. DiversiondeBicicleta.com" -DomainName woodgrove.com, example.com -PrivateKeyExportable $true 

参照している情報が最新であることを確認したり、他の Exchange Server 2007 ドキュメントを見つけたりするには、Exchange Server TechCenter を参照してください。