スプリットテナンシー

circle-exclamation

概要

SCEPman は、証明書をユーザーやデバイスに発行する Azure/Intune テナントとは別の Azure テナントから動作するように設定できます。この構成はスプリットテナンシーとして知られており、特に MSP に便利です 各顧客ごとに専用のバックエンドとユニークな CA を維持しながら顧客間で Azure インフラストラクチャのコストを統合したい場合。

スプリットテナンシーには 重大な欠点: マネージド ID があり、もはや使用できなくなります。つまり、Graph API(Azure AD と Intune)への認証はアプリ登録とクライアント シークレットを使用して行われ、そのシークレットは期限切れとなるため(MSP によって)管理する必要があります。

以下ではホスティング テナントを ホーム テナント と呼び、顧客のテナントを ターゲット テナントと呼びます。SCEPman のリソースは ホーム テナントに存在し、管理対象デバイスは ターゲット テナント 下の図のようになります:

構成手順

  1. の中で ホーム テナントまず、通常どおり SCEPman/Certificate Master の標準デプロイを当社の手順に従って実行してください。 はじめにガイド.

SCEPman(ホーム テナント)で

  1. SCEPman の App Service に移動し、次に「設定」→「環境変数」へ進みます。次のパラメーターを見つけて 削除 してください:

環境変数

AppConfig:AuthConfig:ManagedIdentityEnabledForWebsiteHostname

AppConfig:AuthConfig:ManagedIdentityEnabledOnUnixTime

AppConfig:AuthConfig:ManagedIdentityPermissionLevel

  1. 次の設定の名前を変更してください( 値は変更しないでください):):

元の名前
新しい名前

AppConfig:AuthConfig:ApplicationId

AppConfig:AuthConfig:HomeApplicationId

AppConfig:AuthConfig:TenantId

AppConfig:AuthConfig:HomeTenantId

  1. 次に、 アプリ登録ターゲット テナント を作成します。手順は次のとおりです: Azure アプリ登録。この アプリ登録 により SCEPman は ターゲット テナント.

circle-exclamation

作成 アプリ登録作成時にまだ行っていない場合、次の新しい環境変数を追加してください:

名前

AppConfig:AuthConfig:ApplicationId

作成された アプリ登録 の GUID(以前に作成された) (ターゲット テナント)。

AppConfig:AuthConfig:TenantId

のテナント ID ターゲット テナント.

AppConfig:AuthConfig:ApplicationKey

おめでとうございます!SCEPman のデプロイが完了しました。次の クライアント シークレット がこの アプリ登録ターゲット テナント.

  1. の一部として作成されました。

  2. 変更を適用します。 App Service.

Certificate Master(証明書マスター)

  1. SCEPman を再起動します。 App Service Certificate Master に移動し、次に「設定」>「環境変数」へ進みます。

  2. これで2つのオプションがあります:

    1. あなたの ホーム テナント のユーザーが Certificate Master にログインして証明書を発行すること、これにはターゲット テナントのゲスト ユーザーを含む、例:ホーム テナントからのユーザーが含まれます。

オプション1:ホーム テナントのユーザーが Certificate Master にログインする

もしそうであれば、 名前を変更してください 値は変更しないでください):):

元の名前
新しい名前

AppConfig:AuthConfig:TenantId

AppConfig:AuthConfig:HomeTenantId

AppConfig:AuthConfig:ApplicationId

AppConfig:AuthConfig:HomeApplicationId

b. あなたはあなたの ターゲット テナント のユーザーが Certificate Master にログインして証明書を発行することを望んでおり、これにはホーム テナントからのゲスト ユーザーなどターゲット テナントのゲスト ユーザーが含まれます。

オプション2:ターゲット テナントのユーザーが Certificate Master にログインする

その場合は、次の手順を実行してください:

  • を開き、 PowerShell または Azure Cloud Shell あなたの ターゲット テナント で以下のコマンドを実行します:

を置き換えてください <url> あなたの Certificate Master の URL と共に

  • NAC ソリューションが Intune デバイス ID を基にデバイスを識別するために使用されます。値は次のようにする必要があります: コマンドレット は以下を出力します アプリケーション ID および テナント ID (それは ターゲット テナントのもの)。これら2つの値を Certificate Master の設定の

    • AppConfig:AuthConfig:HomeApplicationId および

    • AppConfig:AuthConfig:HomeTenantId として入力します。

  • 次に 作成します 次の新しいアプリケーション設定を作成します。既存のものを上書きする場合があります。SCEPman と同じ値を使用してください:

名前

AppConfig:AuthConfig:ApplicationId

作成された アプリ登録 以前に作成されたもの。

AppConfig:AuthConfig:TenantId

のテナント ID ターゲット テナント.

AppConfig:AuthConfig:ApplicationKey

おめでとうございます!SCEPman のデプロイが完了しました。次の クライアント シークレット がこの アプリ登録 以前に。 必要であれば、Certificate Master 用に別の新しいクライアント シークレットを作成できます。

  1. 変更を保存してください

  2. SCEPman Certificate Master を再起動します App Service.

  3. web アプリ経由で証明書を要求する権限を付与します、参照: Certificate Master(証明書マスター) 参照 こちら

概要として、ここでは によって使用されるアカウントとその用途を示します: Certificate Master(証明書マスター) およびそれらの用途:

アカウント
何に使用されますか?
注意事項

マネージド ID

  • SCEPman に提出された CSR を承認する

  • ストレージ アカウントへのアクセス

該当なし

からのアプリ ID を持つアプリ登録 ApplicationId

Certificate Master はこのコンテキストで Microsoft Graph にアクセスして、どの証明書が Intune 経由で登録されたかを確認します

もし ApplicationKey が存在しない場合は、代わりにマネージド ID が使用されます。

からのアプリ ID を持つアプリ登録 HomeApplicationId

ユーザーは認証します このアプリケーション。Certificate Masterにアクセスするユーザーが存在するテナントに配置する必要があります(ただし、他のテナントのゲストユーザーも許可できます)

もし HomeApplicationId が存在しません、 ApplicationId の代わりに使用されます。

これで分割テナンシーの構成は完了です。続いて、MDMに基づいたSCEPプロファイルの構成を行ってください。参照: こちらarrow-up-right

複数のターゲットテナントを持つ場合の考慮事項

異なるターゲットテナントに証明書を発行するために複数のSCEPmanインスタンスを持ちたい場合、これらのインスタンスを相互に分離するための追加の構成手順が必要になります。

1つの可能な設計として、単一のApp Service Planを保持する管理リソースグループを作成し、すべてのSCEPman App Serviceに対してコンピューティング資源を提供する方法があります。複数のテナントに対してこれを行う際には次の点を考慮してください:

  • 各インスタンスは識別のために独自のリソースグループを持つべきです

  • 権限を分離するために各インスタンス用のApp Registrationを作成する必要があります

  • App Service Planは複数のインスタンスにサービスを提供するため、独立した管理リソースグループに作成するべきです

この図では、管理テナントとその2つのSCEPmanインスタンスがContosoおよびTailwindのテナントに証明書を提供しています:

Unexpected error with integration mermaid: Integration is not installed on this space

既存のApp Service Planに新しいSCEPmanインスタンスを追加する

新しいSCEPmanインスタンスを エンタープライズデプロイメント方法arrow-up-right を使用してデプロイする際に、このインスタンスを追加する既存のApp Service PlanのリソースIDを入力するオプションが提供されます。

このリソースIDは既存のApp Service Planのプロパティで確認できます:

顧客固有のApp登録を作成する

アプリの権限を分離するために、デプロイ後コマンドを調整してカスタムのApp Registrationを指定する必要があります:

このコマンドにより、既存のインスタンスから分離された完全に構成されたSCEPmanインスタンスが作成されます。これでこのインスタンスの分割テナンシーの構成を続けることができます。

上記のCertificate Masterに関するセクションは、このサービスを顧客テナントからアクセス可能にしたい場合に任意で適用できます。

最終更新

役に立ちましたか?