Intune で PKCS 証明書を構成して使用する
Microsoft Intune では、秘密および公開キーのペア (PKCS) の証明書の使用がサポートされています。 この記事では、PKCS 証明書のエクスポート、Intune デバイス構成プロファイルへの追加など、Intune で PKCS 証明書を使用するために必要なものについて確認します。
Microsoft Intune には、組織のリソースへのアクセスと認証に PKCS 証明書を使用するための組み込みの設定が含まれています。 証明書により、VPN や WiFi ネットワークなど、企業リソースへのアクセスが認証され、セキュリティで保護されます。 Intune でデバイス構成プロファイルを使用してこれらの設定をデバイスに展開します。
インポートした PKCS 証明書の使用については、「インポートした PFX 証明書」をご覧ください。
ヒント
PKCS 証明書プロファイルは、Windows Enterprise マルチセッション リモート デスクトップでサポートされています。
要件
Intune で PKCS 証明書を使用するには、次のインフラストラクチャが必要です。
Active Directory ドメイン:
このセクションで示されているすべてのサーバーは、Active Directory ドメインに参加する必要があります。Active Directory Domain Services (AD DS) をインストールして構成する詳細については、「Active Directory の設計と計画について」を参照してください。
証明機関:
エンタープライズ証明機関 (CA)。Active Directory 証明書サービス (AD CS) のインストールおよび構成の詳細については、「Active Directory 証明書サービス ステップ バイ ステップ ガイド」を参照してください。
警告
Intune ではスタンドアロン CA ではなく、エンタープライズ証明機関 (CA) の AD CS を実行する必要があります。
クライアント:
エンタープライズ CA に接続する。ルート証明書:
エンタープライズ CA のルート証明書のエクスポートされたコピーです。Certificate Connector for Microsoft Intune:
証明書コネクタについては、以下を参照してください。
エンタープライズ CA からルート証明書をエクスポートする
VPN、WiFi、またはその他のリソースを使用してデバイスを認証するには、デバイスにルートまたは中間の CA 証明書が必要です。 次の手順では、エンタープライズ CA から必要な証明書を取得する方法について説明します。
コマンド ラインの使用:
管理者アカウントを使用してルート証明機関サーバーにログインします。
[スタート]>[実行] の順に移動し、「Cmd」を入力してコマンド プロンプトを開きます。
certutil -ca.cert ca_name.cer を指定して、ルート証明書を ca_name.cer という名前のファイルとしてエクスポートします。
CA 上で証明書テンプレートを構成する
管理特権があるアカウントでエンタープライズ CA にサインインします。
[証明機関] コンソールで [証明書テンプレート] を右クリックして [管理] を選択します。
User 証明書テンプレートを探して右クリックし、[テンプレートの複製] を選択して [新しいテンプレートのプロパティ] を開きます。
注:
S/MIME メールの署名と暗号化のシナリオの場合、管理者の多くは、署名と暗号化に対して別々の証明書を使用します。 Microsoft Active Directory Certificate Services を使用している場合、S/MIME メールの署名証明書には [Exchange 署名のみ] テンプレートを使用し、S/MIME 暗号化証明書には [Exchange ユーザー] テンプレートを使用することができます。 サード パーティ証明機関を使用している場合は、該当するガイダンスを確認して署名および暗号化のテンプレートを設定することをお勧めします。
[互換性] タブで:
- [証明機関] に[Windows Server 2008 R2] を設定します。
- [証明書の受信者] に[Windows 7 / Server 2008 R2] を設定します。
[ 全般] タブで、以下の操作を実行します。
- [テンプレートの表示名] を自分にとって意味のある名前に設定します。
- [Active Directory で証明書を発行する] をオフにします。
警告
既定では、[テンプレート名] は [テンプレート表示名] (スペースなし) と同じです。 テンプレートの名前をメモします。後で必要になります。
[要求処理] で、[プライベート キーのエクスポートを許可する] を選択します。
注:
SCEP とは異なり、PKCS では、証明書の秘密キーはデバイス上ではなく、証明書コネクタがインストールされているサーバー上で生成されます。 証明書テンプレートで秘密キーのエクスポートを許可する必要があります。それにより、コネクタでは、PFX 証明書をエクスポートし、それをデバイスに送信できます。
証明書がデバイス自体にインストールされると、秘密キーはエクスポート不可としてマークされます。
[暗号化] で、[最小キー サイズ] が 2048 に設定されていることを確認します。
Windows および Android デバイスでは、PKCS 証明書プロファイルでの 4096 ビット キー サイズの使用がサポートされています。 このキー サイズを使用するには、 最小キー サイズとして 4096 を指定します。
注:
Windows デバイスの場合、4096 ビット キー ストレージは ソフトウェア キー ストレージ プロバイダー (KSP) でのみサポートされます。 次は、このサイズのキーの格納をサポートしていません。
- ハードウェア TPM (トラステッド プラットフォーム モジュール)。 回避策として、キー ストレージにソフトウェア KSP を使用できます。
- Windows Hello for Business。 現時点では、Windows Hello for Businessの回避策はありません。
[サブジェクト名] で [要求に含まれる] を選択します。
[拡張子] で、[アプリケーション ポリシー] に暗号化ファイル システム、セキュリティで保護された電子メール、クライアント認証が表示されていることを確認します。
重要
iOS/iPadOS の証明書テンプレートの場合、[拡張] タブで、[キー使用法] を更新し、[署名は発行元の証明である] が選択されていないことを確認します。
セキュリティ:
- (必須): Microsoft Intuneの証明書コネクタをインストールするサーバーのコンピューター アカウントを追加します。 このアカウントに、読み取りと登録のアクセス許可を割り当てます。
- (省略可能ですが推奨): [ドメイン ユーザー] グループを選択し、[削除] を選択して、このテンプレートで許可されているグループまたはユーザー名の一覧から [ドメイン ユーザー ] グループを 削除します。 グループまたはユーザー名の他のエントリで、環境へのアクセス許可と適用性を確認します。
[適用]>[OK] をクリックして証明書テンプレートを保存します。 証明書テンプレート コンソールを閉じます。
[証明機関] コンソールで [証明書テンプレート] を右クリックして、>[新規作成]>[発行する証明書テンプレート] をクリックします。 上記の手順で作成したテンプレートを選択します。 [OK] を選択します。
登録されたデバイスとユーザーの証明書をサーバーで管理するために、次の手順を使用します。
- 証明機関を右クリックして、[プロパティ] を選択します。
- [セキュリティ] タブで、コネクタを実行するサーバーのコンピューター アカウントを追加します。
- このコンピューター アカウントに、証明書の発行と管理と証明書の要求のアクセス許可を付与します。
エンタープライズ CA からサインアウトします。
Certificate Connector for Microsoft Intune をダウンロード、インストール、および構成する
ガイダンスについては、Certificate Connector for Microsoft Intune のインストールと構成に関するページを参照してください。
信頼済み証明書プロファイルを作成する
Microsoft Intune 管理センターにサインインします。
[デバイス>構成の作成]> を選択して移動します。
次のプロパティを入力します。
- プラットフォーム: このプロファイルを受信するデバイスのプラットフォームを選択します。
- Android デバイス管理者
- Android Enterprise:
- フル マネージド
- 専用
- 会社所有の仕事用プロファイル
- 個人所有の仕事用プロファイル
- iOS/iPadOS
- macOS
- Windows 10 または 11
- プロファイル: [信頼された証明書] を選択します。 または、[テンプレート]>[信頼された証明書] を選択します。
- プラットフォーム: このプロファイルを受信するデバイスのプラットフォームを選択します。
[作成] を選択します。
[Basics]\(基本\) で次のプロパティを入力します。
- 名前: プロファイルのわかりやすい名前を入力します。 後で簡単に識別できるよう、プロファイルに名前を付けます。 たとえば、「会社全体の信頼済み証明書プロファイル」は適切なプロファイル名です。
- 説明: プロファイルの説明を入力します この設定は省略可能ですが、推奨されます。
[次へ] を選択します。
[構成設定] で、以前にエクスポートしたルート CA 証明書の .cer ファイルを指定します。
注:
手順 3 で選択したプラットフォームに応じて、証明書の保存先ストアを選択するオプションが使用できる場合と使用できない場合があります。
[次へ] を選択します。
[割り当て] で、プロファイルを割り当てるユーザーまたはデバイス グループを選択します。 詳細については、「Microsoft Intune でフィルターを作成し、[フィルターを編集する] を選択して適用する」を参照してください。
この証明書プロファイルを、PKCS 証明書プロファイルを受け取り、証明書を利用する Wi-Fi プロファイルのような構成プロファイルを受け取る同じグループに展開することを計画します。 プロファイルの割り当ての詳細については、ユーザーおよびデバイス プロファイルの割り当てに関するページを参照してください。
[次へ] を選択します。
(Windows 10/11 のみに適用) [適用性ルール] で、適用性ルールを指定してこのプロファイルの割り当てを調整します。 デバイスの OS エディションまたはバージョンに基づいて、プロファイルを割り当てるかどうかを選択できます。
詳細については、「Microsoft Intune でのデバイス プロファイルの作成」の「適用性ルール」を参照してください。
[確認と作成] で、設定を確認します。 [作成] を選択すると、変更内容が保存され、プロファイルが割り当てられます。 また、ポリシーがプロファイル リストに表示されます。
PKCS 証明書プロファイルを作成する
Important
Microsoft Intune は、Google Mobile Services (GMS) にアクセスできるデバイスでの Android デバイス管理者管理のサポートを 2024 年 8 月 30 日に終了します。 その日以降、デバイスの登録、テクニカル サポート、バグ修正、セキュリティ修正は利用できなくなります。 現在デバイス管理者管理を使用している場合は、サポートが終了する前に、Intune で別の Android 管理オプションに切り替えることを推奨します。 詳細については、「GMS デバイスでの Android デバイス管理者のサポートの終了」を参照してください。
Microsoft Intune 管理センターにサインインします。
[デバイス>構成の作成]> を選択して移動します。
次のプロパティを入力します。
- プラットフォーム: デバイスのプラットフォームを選択します。 次のようなオプションがあります。
- Android デバイス管理者
- Android Enterprise:
- フル マネージド
- 専用
- 会社所有の仕事用プロファイル
- 個人所有の仕事用プロファイル
- iOS/iPadOS
- macOS
- Windows 10 または 11
- プロファイル: [PKCS 証明書] を選択します。 または、[テンプレート]>[PKCS 証明書] を選択します。
注:
Android エンタープライズ プロファイルを使用しているデバイスでは、PKCS 証明書プロファイルを使用してインストールされた証明書は、デバイス上に表示されません。 証明書の展開が成功したことを確認するには、Intune 管理センターでプロファイルの状態をチェックします。
- プラットフォーム: デバイスのプラットフォームを選択します。 次のようなオプションがあります。
[作成] を選択します。
[Basics]\(基本\) で次のプロパティを入力します。
- 名前: プロファイルのわかりやすい名前を入力します。 後で簡単に識別できるよう、プロファイルに名前を付けます。 たとえば、「会社全体の PKCS プロファイル」は適切なプロファイル名です。
- 説明: プロファイルの説明を入力します この設定は省略可能ですが、推奨されます。
[次へ] を選択します。
[構成設定] では、選択したプラットフォームによって構成できる設定が変わります。 詳細な設定については、お使いのプラットフォームを選択してください。
- Android デバイス管理者
- Android Enterprise
- iOS/iPadOS
- Windows 10 または 11
Setting プラットフォーム 詳細 [更新しきい値 (%)] - すべて
推奨値は 20% です [証明書の有効期間] - すべて
証明書テンプレートを変更していない場合、このオプションはおそらく 1 年に設定されています。
有効期間として、5 日から最大 24 か月を使用します。 有効期間が 5 日未満の場合、証明書がほぼ期限切れまたは期限切れの状態になる可能性が高いため、デバイス上の MDM エージェントが証明書をインストールする前に拒否する可能性があります。キー記憶域プロバイダー (KSP) - Windows 10 または 11
Windows では、デバイス上のキーを格納する場所を選択します。 証明機関 - すべて
エンタープライズ CA の内部完全修飾ドメイン名 (FQDN) が表示されます。 証明機関名 - すべて
"Contoso Certification Authority" など、エンタープライズ CA の名前が一覧表示されます。 証明書テンプレート名: - すべて
証明書テンプレートの名前を一覧表示します。 証明書の種類 - Android Enterprise ("企業所有と個人所有の仕事用プロファイル")
- iOS
- macOS
- Windows 10 または 11
種類の選択: - [ユーザー] 証明書には、証明書のサブジェクトとサブジェクトの別名 (SAN) 内にユーザーとデバイスの属性の両方を含めることができます。
- [デバイス] 証明書では、証明書のサブジェクトと SAN にデバイスの属性を含めることができます。 キオスクやその他の共有デバイスなど、ユーザーのいないデバイスなどのシナリオには、[デバイス] を使用します。
この選択は、サブジェクト名の形式に影響します。
件名の形式 - すべて
サブジェクト名の形式を設定する方法については、この記事で後述する「サブジェクト名の形式」を参照してください。
次のプラットフォームの場合、サブジェクト名の形式は証明書の種類によって決まります。- Android Enterprise (仕事用プロファイル)
- iOS
- macOS
- Windows 10 または 11
サブジェクト名の別名 - すべて
[属性] については、特に指定がない場合は [ユーザー プリンシパル名 (UPN)] を選択し、それに対応する [値] を構成して、[追加] を選択します。
両方の証明書の種類の SAN には、変数または静的テキストを使用できます。 変数の使用は必須ではありません。
詳細については、後述する「サブジェクト名の形式」を参照してください。拡張キーの使用 - Android デバイス管理者
- Android Enterprise (デバイスの所有者、企業所有と個人所有の仕事用プロファイル)
- Windows 10 または 11
ユーザーまたはデバイスがサーバーに対して認証できるように、証明書には通常、[クライアント認証] が必要です。 [すべてのアプリが秘密キーにアクセスできるようにする] - macOS
[有効にする] に設定すると、PKCS 証明書の秘密キーへのアクセスが関連 mac デバイスに構成されているアプリに与えられます。
この設定の詳細については、Apple 開発者ドキュメントにある「Configuration Profile Reference」の「Certificate Payload」セクションに記載されている AllowAllAppsAccess を参照してください。ルート証明書 - Android デバイス管理者
- Android Enterprise (デバイスの所有者、企業所有と個人所有の仕事用プロファイル)
前に割り当てられたルート CA 証明書プロファイルを選択します。 この手順は、フル マネージド、Dedicated、Corporate-Owned 仕事用プロファイルの Android Enterprise デバイス プロファイルにのみ適用されます。
[アプリ] で、証明書アクセス権を構成して、証明書アクセスがアプリケーションに付与される方法を管理します。 次から選択します。
- アプリのユーザーの承認を要求する(既定値) – ユーザーはすべてのアプリケーションによる証明書の使用を承認する必要があります。
- 特定のアプリに対してサイレントモードで許可する (他のアプリにユーザーの承認が必要) – このオプションを使用して、[ アプリの追加] を選択し、ユーザーの操作なしで証明書をサイレントに使用する 1 つ以上のアプリを選択します。
[次へ] を選択します。
[割り当て] で、プロファイルを受け取るユーザーまたはグループを選択します。 この証明書プロファイルを、信頼された証明書プロファイルを受け取るのと同じグループに展開し、証明書を使用する Wi-Fi プロファイルのような構成プロファイルを受け取る計画を立てます。 プロファイルの割り当ての詳細については、ユーザーおよびデバイス プロファイルの割り当てに関するページを参照してください。
[次へ] を選択します。
[確認と作成] で、設定を確認します。 [作成] を選択すると、変更内容が保存され、プロファイルが割り当てられます。 また、ポリシーがプロファイル リストに表示されます。
件名の形式
次のプラットフォーム用の PKCS 証明書プロファイルを作成するとき、サブジェクト名の形式のオプションは、選択した証明書の種類 ([ユーザー] または [デバイス]) によって異なります。
プラットフォーム:
- Android Enterprise ("企業所有と個人所有の仕事用プロファイル")
- iOS
- macOS
- Windows 10 または 11
注:
PKCS を使用して証明書を取得する場合の既知の問題があります。これは、結果として得られる証明書署名要求 (CSR) のサブジェクト名にエスケープ文字として次のいずれかの文字が含まれている場合 (円記号 \で進む) 場合と 同じ問題 です。
- +
- ;
- ,
- =
注:
Android 12 以降、Android では、個人所有の仕事用プロファイル デバイスにおいて、次のハードウェア識別子の使用がサポートされなくなりました。
- シリアル番号
- IMEI
- MEID
サブジェクト名または SAN 内のこれらの変数に依存する個人所有の仕事用プロファイル デバイスの Intune 証明書プロファイルは、デバイスが Intune に登録された時点で、Android 12 以降を実行するデバイスで証明書をプロビジョニングできません。 Android 12 にアップグレードする前に登録したデバイスは、Intune が以前にデバイスのハードウェア識別子を取得している限り、引き続き証明書を受け取ることができます。
この変更および Android 12 で導入されたその他の変更の詳細については、ブログ投稿の「Android Day Zero Support for Microsoft エンドポイント マネージャー」を参照してください。
ユーザー証明書の種類
[サブジェクト名の形式] のデータ形式オプションには、共通名 (CN) と メール (E) の 2 つの変数が含まれます。 通常、電子メール (E) は {{EmailAddress}} 変数を使用して設定されます。 例: E={{EmailAddress}}共通名 (CN) は、次のいずれかの変数に設定できます。
CN={{UserName}}: Jane Doe など、ユーザーのユーザー名。
CN={{UserPrincipalName}}: ユーザーのユーザー プリンシパル名 (例: janedoe@contoso.com)。
CN={{AAD_Device_ID}}: Microsoft Entra IDにデバイスを登録するときに割り当てられる ID。 この ID は、通常、Microsoft Entra IDで認証するために使用されます。
CN={{DeviceId}}: Intune にデバイスを登録するときに割り当てられる ID。
CN={{SERIALNUMBER}}: デバイスを識別するために製造元が通常使う一意のシリアル番号 (SN)。
CN={{IMEINumber}}: 携帯電話の識別に使用される IMEI (International Mobile Equipment Identity) の一意の番号。
CN={{OnPrem_Distinguished_Name}}: コンマで区切られた相対識別名のシーケンスです (CN=Jane Doe、OU=UserAccounts、DC=corp、DC=contoso、DC=com など)。
{{OnPrem_Distinguished_Name}} 変数を使用するには、Microsoft Entra Connect を使用して onpremisesdistinguishedname ユーザー属性を Microsoft Entra ID に同期してください。
CN={{onPremisesSamAccountName}}: 管理者は、Microsoft Entra Connect を使用して samAccountName 属性を Active Directory から Microsoft Entra ID に同期して、onPremisesSamAccountName という属性に同期できます。 Intune では、証明書のサブジェクト内の証明書発行要求の一部として、その変数を置き換えることができます。 samAccountName 属性は、以前のバージョンの Windows (windows 2000 より前) のクライアントとサーバーをサポートするために使われるユーザー サインイン名です。 ユーザー サインイン名の形式は、DomainName\testUser、またはtestUser のみです。
{{onPremisesSamAccountName}} 変数を使用するには、Microsoft Entra Connect を使用して onPremisesSamAccountName ユーザー属性を Microsoft Entra ID に同期してください。
次の「デバイス証明書の種類」セクションに記載されているすべてのデバイス変数は、ユーザー証明書のサブジェクト名でも使用できます。
これらの変数の 1 つ以上と静的なテキスト文字列の組み合わせを使うことで、カスタム サブジェクト名の形式を作成できます (例: CN={{UserName}},E={{EmailAddress}},OU=Mobile,O=Finance Group,L=Redmond,ST=Washington,C=US)。
その例には、CN 変数と E 変数に加えて、組織単位、組織、場所、州、国の各値を表す文字列を使用するサブジェクト名形式が含まれています。 CertStrToName 関数の記事では、この関数とそのサポートされる文字列について説明されています。
ユーザー属性は、Android Enterprise 専用として登録されているデバイスなど、ユーザーが関連付けられていないデバイスではサポートされていません。 たとえば、サブジェクトまたは SAN に CN={{UserPrincipalName}} が使用されているプロファイルで、デバイスにユーザーが存在しないときに、ユーザー プリンシパル名を取得することはできません。
デバイス証明書の種類
サブジェクト名の形式のフォーマットオプションには、次の変数が含まれます。- {{AAD_Device_ID}}
- {{DeviceId}} - これは Intune デバイス ID です
- {{Device_Serial}}
- {{Device_IMEI}}
- {{SerialNumber}}
- {{IMEINumber}}
- {{AzureADDeviceId}}
- {{WiFiMacAddress}}
- {{IMEI}}
- {{DeviceName}}
- {{完全修飾ドメイン名}}(Windows およびドメインに参加しているデバイスにのみ適用)
- {{MEID}}
これらの変数は、テキスト ボックスで指定し、その後に変数のテキストを続けることができます。 たとえば、Device1 という名前のデバイスの共通名は、CN={{DeviceName}}Device1 として追加できます。
重要
- 変数を指定する場合は、エラーが発生しないように、例に示すように、変数名を中かっこ { } で囲みます。
- デバイス証明書の "サブジェクト" または SAN で使用されるデバイス プロパティ (IMEI、SerialNumber、FullyQualifiedDomainName など) は、デバイスへのアクセス権を持つユーザーによってスプーフィングされる可能性のあるプロパティです。
- 証明書プロファイルをデバイスにインストールする場合は、そのプロファイルで指定されたすべての変数が該当するデバイスでサポートされている必要があります。 たとえば、{{IMEI}} が SCEP プロファイルのサブジェクト名に使用されていて、IMEI 番号を持たないデバイスに割り当てられている場合、プロファイルのインストールは失敗します。
次の手順
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示