日本語フォーラム

 View Only
last person joined: 14 days ago 

Arubaのソリューション、ネットワークマーケットに関する日本語ディスカッションフォーラム

[ClearPass] Microsoft Intune との連携 その2

This thread has been viewed 6 times
  • 1.  [ClearPass] Microsoft Intune との連携 その2

    EMPLOYEE
    Posted Feb 20, 2022 07:31 PM
    以前こちらでIntune連携について概要を紹介しました。
    実際にIntune連携の設定をしてみると少し課題があるので、今回はその課題の解決方法を解説します。

    前提として、以下の点を覚えておいて下さい。
    • ClearPassは認証時に認証ソース、認可ソースとしてEndpoint Repositoryという内部データベースを参照する
    • Endpoint Repository は端末のMACアドレスを一意のキーとしてエントリーを保持している
    • ClearPassはExtensionというAPIを使ってIntuneから端末情報をEndpoint Repositoryにインポートする。この時、Intuneが持っている端末のMACアドレスを使う

    上記の中でIntuneが持っているMACアドレス情報が、端末が認証時に使うMACアドレスと一致しないケースがあります。
    以下のケースでは、Intuneが管理しているのは、Wi-Fiの物理インタフェースではなく、Wi-Fi Direct Adapter のMACアドレスになっています。

    Intuneの管理画面で端末のMACアドレス

    Windows端末のMACアドレス

    ClearPass の Endpoint Repository を確認すると、エントリーが2つできてしまいます。
    その結果、認証時に認可ソースとしてEndpoint Repository を参照しても、正しいエントリーを参照することができません。

    ClearPass Endpoint Repository

    この課題は、iOSやAndroid端末のMACアドレスのランダム化(MAC Randomization)でも起こる可能性があります。
    この課題を解決するために、まずClearPassの認証・認可ソース参照仕組みについて少し解説します。

    ClearPass の認証・認可ソース参照の仕組み
    ClearPassは、入力情報として認証リクエストを受け取ったあと、その情報を元に認証ソース、認可ソースを参照し、それらの情報を使ってポリシー演算をして結果を出力します。Endpoint Repository の参照もこの時に行ってます。

    このEndpoint Repository はSQLデータベースです。
    認証リクエストの中に含まれている端末のMACアドレスを使ってこのデータベースを参照しています。
    実際に、Endpoint Repository の設定を確認すると、SQL文でそのことを確認できます。

    Endpoint Repository の設定


    IntuneのMACアドレスとWi-FiのMACアドレス不一致時の対応策
    この課題を解決するためには、IntuneとWi-Fi端末をマッチングさせるために、なんらかの一意な情報が必要になります。
    今回はその情報として、ユーザIDを使います。
    IntuneはAzure ADのアカウント情報を端末と紐づけています。
    Wi-Fi接続してくる端末も、802.1X認証に同じアカウント情報を使っている必要がありますが、
    こちらで解説したように、Azure AD と ClearPassを使っているのであれば、それらを連携させることで、
    EAP-TLSのクライアント証明書のCommon Name がAzure ADのアカウントになっています。
    ClearPass Onboardを使っていなくとも、Azure ADを使っていれば、クライアント証明書にAzure ADのアカウントを使っている方が自然です。
    実際に、Intuneからインポートした端末の属性情報と、認証リクエストの中のクライント証明書のCommon Nameを確認してみましょう。

    Intuneからインポートした端末の属性情報

    認証リクエストに含まれているクライアント証明書の中身

    上記を見てみると、"Intune User Principal Name" と "Certificate:Subject-CN" が一致していることが分かります。
    この情報を使って Endpoint Repository のエントリーを参照することで、Wi-Fi認証時にIntune端末の属性情報を参照することができます。

    方法は簡単で、「認証」>「ソース」>「Endpoint Repository」の画面で新しいフィルタを作成し、
    そのSQL文の条件として、"Intune User Principal Name" = "Certificate:Subject-CN" と設定します。
    実際の設定は以下の通りです。

    Endpoint Repository にフィルタを追加

    フィルタークエリーのSQL文
    SELECT attributes->>'Intune Azure AD Device Id' AS aad_id, attributes->>'Intune Model' AS model, attributes->>'Intune OS Version' AS os_version, attributes->>'Intune Operating System' AS operating_system, attributes->>'Intune Managed Device Owner Type' AS owner_type, attributes->>'Intune User Principal Name' AS upn, attributes->>'Intune Device Name' AS device_name, attributes->>'Intune Last Updated' AS last_updated, attributes->>'Intune Compliance State' AS compliance_state, attributes->>'Intune Last Sync Date Time' AS last_sync_dt, attributes->>'Intune Device Registration State' AS dr_state FROM tips_endpoints WHERE attributes->>'Intune User Principal Name' = '%{Certificate:Subject-CN}' ORDER BY attributes->>'Intune Last Updated' DESC limit 1;​

    以下に一部抜粋
    FROM tips_endpoints WHERE attributes->>'Intune User Principal Name' = '%{Certificate:Subject-CN}'

    Endpoint Repository は tips_endpoints というテーブル名で保存されており、
    検索条件として'Intune User Principal Name' = '%{Certificate:Subject-CN}'としています。
    あとは、エントリーの中の利用したい値を設定しています。

    設定後のEndpoint Repositoryのフィルタ画面

    あとは、Wi-Fi 認証のサービス設定の認可ソースとして、このEndpoint Repositoryを指定し、Role MappingやEnforcement Profile でIntuneの属性情報を使ってポリシーを設定するだけです。
    設定後のWi-Fi認証時のアクセストラッカーのログを確認すると、認可ソースからIntuneの属性情報を正しく取得できていることが確認できます。


    初めての方には少し難しいかもしれませんが、今回のようにClearPassの内部データベースの参照をうまくカスタマイズすることで、
    ClearPassで実現できることの幅がかなり膨らみます。
    全てがマニュアルにまとまっているわけでは無いので、ここでもまた活用例を紹介していこうと思います。

    何かこういうことができないか、ピンポイントでご質問があれば、Airheads Communityで投稿頂ければ私も確認してみますので、
    是非これからもClearPassをどんどん活用してもらえると嬉しいです!




    ------------------------------
    Keita Shimono,
    Aruba Japan SE Manager & Airheads Leader
    ------------------------------