ページの先頭です

ページ内を移動するためのリンク
本文へ (c)

ここから本文です。

Microsoft Cloud PKI でらくらく証明書配布~そしてパスワードレス認証へ~

Microsoft Cloud PKI for Microsoft Intune(以下、クラウド PKI)をご紹介します。

ライター:渥美 淳一
セキュリティアーキテクトとして活動。変革し続けるニーズからセキュリティのあるべき姿を見極める。「セキュリティには統合された認証基盤が欠かせない」と考えている。

目次

はじめに

認証を狙うサイバー攻撃 にパスワードを盗まれるケースが増えています。そこで注目されるのが攻撃に強いパスワードレス認証。パスキー もいいですが、スマートフォンやセキュリティキーの管理がちょっと面倒です。そんな中、証明書ベースの認証が再注目されています。クラウド PKI を使えば、悩ましい「認証用の証明書の配布」もクラウドでらくらく。安全でスマートなパスワードレス認証、はじめてみませんか?

やりたいこと

  • 多要素認証を導入したい
  • パスワードレス認証を導入したい
  • スマートフォンやセキュリティキーは利用したくない

  • 証明書を選ぶだけでログインしたい

  • 証明書の配布・更新・失効を自動化したい

  • オンプレミスの公開キー基盤(PKI)をなくしたい

  • Active Directory 証明書サービスをリプレースしたい

できること

クラウド PKI は Intune(会社のデバイスの「アプリ」「設定」「セキュリティポリシー」「証明書」などをまとめて管理できるクラウドサービス)が管理するデバイスに証明書を自動配布します。従業員はそのデバイスから業務アプリにアクセスします。Entra ID のログイン画面になり、クラウド PKI の証明書が要求されます。正しい証明書を選んでログインしなければ Entra ID にブロックされます。

用意するもの

  • Entra ID ライセンス

  • Intune ライセンス

  • Intune Suite(またはクラウド PKI スタンドアロン アドオン)ライセンス

  • Intune に登録された Windows | macOS | Android | iOS | iPadOS デバイス

  • かつ SCEP 証明書プロファイルをサポートするデバイス

証明書プロファイルとは「どんな証明書を、どのデバイスに、どうやって配るか」を決める Intune 設定です。Intune から SCEP(Simple Certificate Enrollment Protocol)証明書プロファイルを取得したデバイスは自ら証明書署名要求を作成し、それを SCEP URL に送信して、認証用の証明書を自動取得できるようになります。

使いかた

おおまかな設定手順です。

  1. ルート証明機関を作成(以下、ルート CA)

  2. デバイスに証明書を発行する証明機関を作成(以下、発行元 CA)

  3. 信頼済み証明書プロファイルを作成

  4. SCEP 証明書プロファイルを作成

まずクラウド PKI にルート CA を作成します。
クラウド PKI 設定は Intune 管理センター の「テナント管理」にあります。

作成したルート CA の「CRL 配布ポイント」をコピーし、証明書を「ダウンロード」しておきます。(CRL とは失効した証明書の情報が書かれたファイルです)

次に発行元 CA を作成します。

作成した発行元 CA の「CRL 配布ポイント」「SCEP URI」をコピーし、証明書を「ダウンロード」しておきます。

ダウンロードしておいたルート CA の証明書をデバイスに配布する「信頼済み証明書プロファイル」を作成します。

ダウンロードしておいた発行元 CA の証明書をデバイスに配布する「信頼済み証明書プロファイル」を作成します。

発行元 CA(SCEP URI)から認証用の証明書をデバイスに自動取得させる「SCEP 証明書プロファイル」を作成します。

このとき「SCEP サーバーの URL」にコピーしておいた SCEP URI を入力します。
{{CloudPKIFQDN}} の部分も変更せずそのまま入力します。

Intune に登録されたデバイス(今回は Windows)を確認します。
ルート CA 証明書が配布されました。

発行元 CA 証明書も配布されました。

認証用の証明書も配布されました。
この証明書を使って Entra ID にログインできるようにします。

Entra 管理センター で公開キー基盤「クラウド PKI」を作成します。これにより Entra ID はユーザーの認証用の証明書の失効をクラウド PKI に確認できます。

クラウド PKI のルート CA を証明機関として Entra ID に追加します。
ルート CA の証明書と CRL 配布ポイント(証明書失効リストの URL)を登録します。

クラウド PKI の発行元 CA を証明機関として Entra ID に追加します。
発行元 CA の証明書と CRL 配布ポイント(証明書失効リストの URL)を登録します。

Entra ID の「認証方法」で証明書ベースの認証を有効にします。

構成設定で「CRL 検証」と「発行者ヒント」(後述)を有効にします。

「規則の追加」で発行元 CA を証明書の発行者にします。

認証強度「証明書ベースの認証のみ」を作成します。

条件付きアクセスポリシーを作成します。
「認証強度が必要」にして「証明書ベースの認証のみ」を選びます。

これで準備完了です。

業務アプリにアクセスします。
Entra ID にリダイレクトされ、「認証用の証明書の選択」画面になります。

この画面に表示されている以下のメッセージが「発行者ヒント」です。

サイト
t<テナントID>.certauth.login.microsoftonline.com:443 では資格情報が必要です:

認証用の証明書を選択します。
証明書に問題があれば Entra ID にブロックされ、業務アプリにアクセスできません。
(選択した証明書が「正しくない」「取り消し済み」「有効期限切れ」など)

証明書に問題がなければ業務アプリにアクセスできます。

証明書を失効させる方法

デバイスを Intune から登録解除しますと、配布した証明書がデバイスから消えて認証時に選択できなくなる(結果、Entra ID にブロックされる)ので安心です。

また SCEP 証明書プロファイルの設定で有効期限を変更できます。例えば「1年」から「1日」に変更しますと、デバイスの Intune 同期後に反映されます。

変更前

変更後


配布した証明書を取り消すこともできます。
発行元 CA の「すべての証明書を表示」します。

発行済みリーフ証明書を選択します。
(リーフとは証明書の階層の末端を意味し、実際に使われる証明書のことです)

ここで「取り消す」ことができます。

証明書が「取り消し済み」になります。
自動的に新しい証明書が「アクティブ」になります。

デバイスには新しい証明書が配布されます。
(取り消し済みの証明書は消えます)

発行元 CA の「CRL 配布ポイント」の URL にアクセスします。

http://primary-cdn.pki.azure.net/japaneast/crls/11321aXXXXf94780b2e969abcd97c50c/d5f664fd-XXXX-4bad-af2f-5170004afd0f_v1/current.crl

CRL(current.crl ファイル)をダウンロードできます。
ここに「取り消し済み」や「有効期限切れ」の証明書が追加されます。

もし証明書が盗まれても、取り消して CRL に追加されれば Entra ID が認証時にブロックしてくれるので安心です。

注意点

Entra ID は、登録された証明機関(クラウド PKI)の証明書を持つユーザーが最初にログインするときにクラウド PKI から CRL をダウンロードし、キャッシュして一定期間利用します。つまり、認証のたびに最新の CRL を取得しているわけではありません。CRL の「次の更新予定」まではキャッシュした CRL を利用するため、タイミングによっては失効した証明書でも認証に成功する可能性があります。

不審なユーザーを発見したら、そのユーザーの「セッションを取り消す」により次回ログインが最初のログインになり、最新の CRL がダウンロードされます。

Entra ID 以外との連携

クラウド PKI は他社 IDaaS である「Okta」とも連携できます。
Okta はクラウド PKI が発行した証明書を使って認証し、ブロックできます。

Entra ID は最新の CRL を「次の更新予定」に合わせて取得しますが、Okta は 1 時間おきに取得するため、よりリアルタイムに証明書の失効を確認してブロックできます。


ゼロトラスト時代の認証は、証明書でスマートに。
クラウド PKI なら、面倒な管理もぐっと楽になりますよ。

「パスワード頼みの認証」とサヨナラしてみませんか?

※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。

RECOMMEND