次の方法で共有


MIM 証明書マネージャーの Windows ストア アプリケーションの展開

MIM 2016 と証明書マネージャーを起動して実行したら、MIM Certificate Manager Windows ストア アプリケーションを展開できます。 Windows ストア アプリケーションを使用すると、ユーザーは物理スマート カード、仮想スマート カード、ソフトウェア証明書を管理できます。 MIM CM アプリを展開する手順は次のとおりです。

  1. 証明書テンプレートを作成する。

  2. プロファイル テンプレートを作成する。

  3. アプリを準備する。

  4. SCCM または Intune を使用してアプリを展開する。

証明書テンプレートを作成する

CM アプリに証明書テンプレートを作成します。通常と同じ方法で作成できますが、証明書テンプレートがバージョン 3 以降であることを確認する必要があります。

  1. AD CS を実行しているサーバー (証明書サーバー) にログインします。

  2. MMC を開きます。

  3. ファイル>スナップインの追加と削除をクリックします。

  4. [使用可能なスナップイン] の一覧で、Certificate Templates をクリックし、追加 をクリックします。

  5. MMC のコンソール ルートの下に証明書テンプレートが表示されます。 ダブル クリックすると、すべての利用可能な証明書テンプレートが表示されます。

  6. Smartcard Logon テンプレートを右クリックし、[テンプレートの重複除去] をクリックします。

  7. [互換性] タブの [証明機関] で、Windows Server 2008 を選択します。 [証明書の受信者] で、Windows 8.1/Windows Server 2012 R2 を選択します。 バージョン テンプレートのバージョンは、証明書テンプレートを初めて作成して保存するときに設定されます。 このように証明書テンプレートを作成しなかった場合は、正しいバージョンに変更する方法はありません。

    Note

    この手順は、バージョン 3 (またはそれ以上) の証明書テンプレートがあることを確認するため、非常に重要です。 証明書マネージャー アプリでは、バージョン 3 のテンプレートのみが機能します。

  8. [ General ] タブの [ Display Name フィールドに、アプリの UI に表示する名前 ( 仮想スマート カード ログオンなどを入力します。

  9. [ Request Handling ] タブで、PurposeSignature and encryption に設定し、次の操作を行います。登録時にユーザーにプロンプトを表示するよう選択します。

  10. Provider Categoryの [Cryptography] タブで、[キー ストレージ プロバイダーと要求は、サブジェクトのコンピューターで使用可能な任意のプロバイダーを使用できますを選択します。

    Note

    キー記憶域プロバイダーがオプションとして表示されるのは、テンプレートがバージョン 3 の場合だけです。 表示されない場合は、正しいバージョンで証明書テンプレートが正しく作成されていない可能性があります。 上記の手順 5 を最初から行ってください。

  11. Security タブで、Enroll アクセス権を付与するセキュリティ グループを追加します。 たとえば、すべてのユーザーにアクセス権を付与する場合は、 認証されたユーザー グループを選択し、 登録アクセス許可 を選択します。

  12. [OK をクリックして変更を確定し、新しいテンプレートを作成します。 証明書テンプレートの一覧に、新しいテンプレートが表示されます。

  13. Fileを選択し、[スナップインの追加と削除をクリックして証明機関スナップインを MMC コンソールに追加します。 管理するコンピューターを尋ねるメッセージが表示されたら、[ ローカル コンピューターを選択します。

  14. MMC の左側のウィンドウで、 証明書機関 (ローカル) を展開し、証明機関の一覧内で CA を展開します。

  15. [証明書テンプレート] を右クリックし、[新規作成]>[証明書テンプレート] をクリックして発行します。

  16. 一覧から作成した新しいテンプレートを選択し、 OK をクリックします。

プロファイル テンプレートを作成する

プロファイル テンプレートを作成する際に、必ずテンプレートを vSC の作成/破棄およびデータ コレクションの削除に設定します。 CM アプリは収集したデータを処理できないため、次の手順で無効にすることが重要です。

  1. 管理者特権を持つユーザーとして CM ポータルにログインします。

  2. [管理] > [プロファイル テンプレートの管理] に移動します。 MIM CM サンプル スマート カード ログオン プロファイル テンプレートの横にあるチェック ボックスがオンになっていることを確認し選択したプロファイル テンプレートをコピーをクリックします。

  3. プロファイル テンプレートの名前を入力し、 OKをクリックします。

  4. 次の画面で、[新しい証明書テンプレート 追加] をクリックし CA 名の横にあるチェック ボックスをオンにします。

  5. プロファイル テンプレート Logon の名前の横にあるチェック ボックスをオンにし、[追加 ] をクリック

  6. SmartCardLogon テンプレートを削除するには、その横にあるチェック ボックスをオンにし、 選択した証明書テンプレートを削除しOKします。

  7. 一番下まで下にスクロールし、[ 変更設定をクリックします。

  8. 仮想スマート カードの作成/破棄管理者キーの多様化の横にあるチェック ボックスを選択します。

  9. [ユーザー PIN ポリシー] でユーザー指定を選択します。

  10. 左側のウィンドウで、 [ポリシーの新規作成] > [全般設定の変更] をクリック。 更新時にカードを使用するを選択し OK をクリック。

  11. 左側のウィンドウでポリシーをクリックして、すべてのポリシーのデータ収集項目を無効にする必要があります。 次に、サンプル データ項目の横にあるチェック ボックスをオンにする必要があります[データコレクション項目の削除]をクリックしOKをクリック

CM アプリの展開を準備する

  1. コマンド プロンプトで、次のコマンドを実行してアプリをアンパックします。 このコマンドは、appx という名前の新しいサブフォルダーにコンテンツを抽出し、元のファイルを変更しないようにコピーを作成します。

    makeappx unpack /l /p <app package name>.appx /d ./appx
    ren <app package name>.appx <app package name>.appx.original
    cd appx
    
  2. appx フォルダー内で、CustomDataExample.xml ファイルの名前を Custom.data に変更します。

  3. Custom.data ファイルを開き、必要に応じてパラメーターを変更します。

    パラメーター 説明
    MIMCM URL CM の構成に使用したポータルの FQDN です。 たとえば、https://mimcmServerAddress/certificatemanagement のように指定します。
    ADFS URL AD FS を使用する場合は、自身の AD FS URL を挿入します。 たとえば、 https://adfsServerSame/adfs
    ADFS が使用されていない場合は、空の文字列でこの設定を構成します。 たとえば、<ADFS URL=""/> のように指定します。
    PrivacyUrl 証明書の登録のために収集されたユーザーの詳細の用途を説明する Web ページへの URL を含めることができます。
    サポートメール サポートの問題のために電子メール アドレスを含めることができます。
    LobComplianceEnable これは true または false に設定できます。 既定では true に設定されています。
    PINの最小長 既定では 6 に設定されています。
    NonAdmin これは true または false に設定できます。 既定では false に設定されています。 これは、コンピューター上の管理者ではないユーザーが証明書の登録と更新をできるようにする場合にのみ変更します。

    重要

    ADFS URL に値を指定する必要があります。 値が指定されていない場合、Modern App は最初の使用時にエラーになります。

  4. ファイルを保存し、エディターを終了します。

  5. パッケージに署名すると、署名ファイルが 1 つ作成されるため、AppxSignature.p7x という名前の元の署名ファイルを削除する必要があります。

  6. AppxManifest.xml ファイルは、署名証明書のサブジェクト名を指定します。 このファイルを開いて編集します。

  7. このセクションを開始する前に、署名証明書を取得する必要があります。 以下の、「MIM 2016 Certificate Manager で管理者以外のスマートカードの更新を有効にする」の手順 1 を参照してください。

  8. <Identity>要素で、Publisher 属性の値を、署名証明書に記載されているサブジェクト ("CN=SUBJECT" など) と同じに変更します。

  9. ファイルを保存し、エディターを終了します。

  10. コマンド プロンプトで次のコマンドを実行し、.appx ファイルを再パックして署名します。

    cd ..
    makeappx pack /l /d .\appx /p <app package name>.appx
    

    ここで、アプリのパッケージ名は、コピーを作成したときに使用したのと同じ名前です。

    signtool sign /f <path\>mysign.pfx /p <pfx password> /fd "sha256" <app package name>.ap
    px
    

    これにより新しい .appx ファイルが提供されます。 pfx ファイルは、署名証明書の場所と、.pfx ファイルのパスワードを提供します。

  11. AD FS 認証を使用するには:

    • 仮想スマート カード アプリケーションを開きます。 これにより、次の手順に必要な値が見つけやすくなります。

    • アプリケーションをクライアントとして AD FS サーバーに追加して、サーバー上で CM を構成するには、AD FS サーバーで Windows PowerShell を開き、コマンド ConfigureMimCMClientAndRelyingParty.ps1 –redirectUri <redirectUriString> -serverFQDN <MimCmServerFQDN> を実行します。

      ConfigureMimCMClientAndRelyingParty.ps1 スクリプトを以下に示します。

      # HELP
      
      <#
      .SYNOPSIS
                       Configure ADFS for CM client app and server.
      .DESCRIPTION
          What the Script does:
                                       a. Registers the MIM CM client app on the ADFS server.
                                       b. Registers the MIM CM server relying party (Tells the ADFS server that it issues tokens for the CM server).
                       For parameter information, see 'get-help -detailed'
      .PARAMETER redirectUri
                       The redirectUri for CM client app. Will be added to ADFS server.
                       It can be found as follows:
                       1. Open the settings panel. Under settings, there is a "Redirect Uri" text box (an ADFS server address must be configured in order for the text to display).
                       2. Open MIM CM client app. Navigate to 'C:\Users\<your_username>\AppData\Local\Packages\CmModernAppv.<version>\LocalState', and open 'Logs_Virtual Smart Card Certificate Manager_<version>'. Search for "Redirect URI".
      .PARAMETER serverFqdn
                       Your deployed MIM CM server’s FQDN.
      .EXAMPLE
          .\ConfigureMimCMClientAndRelyingParty.ps1 -redirectUri ms-app://s-1-15-2-0123456789-0123456789-0123456789-0123456789-0123456789-0123456789-0123456789/ -serverFqdn WIN-TRUR24L4CFS.corp.cmteam.com
      #>
      
      # Parameter declaration
      [CmdletBinding()]
      Param(
         [Parameter(Mandatory=$True)]
          [string]$redirectUri,
      
          [Parameter(Mandatory=$True)]
          [string]$serverFqdn
      )
      
      Write-Host "Configuring ADFS Objects for OAuth.."
      
      #Configure SSO to get persistent sign on cookie
      Set-ADFSProperties -SsoLifetime 2880
      
      #Configure Authentication Policy
      #Intranet to use Kerberos
      #Extranet to use U/P
      
      #Create Client Objects
      
      Write-Host "Creating Client Objects..."
      
      $existingClient = Get-ADFSClient -Name "MIM CM Modern App"
      
      if ($existingClient -ne $null)
      {
           Write-Host "Found existing instance of the MIM CM Modern App, removing"
           Remove-ADFSClient -TargetName "MIM CM Modern App"
           Write-Host "Client object removed"
      }
      
      Write-Host "Adding Client Object for MIM CM Modern App client"
      Add-ADFSClient -Name "MIM CM Modern App" -ClientId "70A8B8B1-862C-4473-80AB-4E55BAE45B4F" -RedirectUri $redirectUri
      Write-Host "Client Object for MIM CM Modern App client Created"
      
      #Create Relying Parties
      Write-Host "Creating Relying Party Objects"
      
      $existingRp = Get-ADFSRelyingPartyTrust -Name "MIM CM Service"
      if ($existingRp -ne $null)
      {
           Write-Host "Found existing instance of the MIM CM Service RP, removing"
           Remove-ADFSRelyingPartyTrust -TargetName "MIM CM Service"
           Write-Host "RP object Removed"
      }
      
      $authorizationRules =
      "@RuleTemplate = `"AllowAllAuthzRule`"
      => issue(Type = `"http://schemas.microsoft.com/authorization/claims/permit`", Value = `"true`");"
      
      $issuanceRules =
      "@RuleTemplate = `"LdapClaims`"
      @RuleName = `"Emit UPN and common name`"
      c:[Type == `"http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname`", Issuer == `"AD AUTHORITY`"]
      => issue(store = `"Active Directory`", types =
      (`"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn`",
      `"http://schemas.xmlsoap.org/claims/CommonName`"), query =
      `";userPrincipalName,cn;{0}`", param = c.Value);
      
      @RuleTemplate = `"PassThroughClaims`"
      @RuleName = `"Pass through Windows Account Name`"
      c:[Type ==`"http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname`"] => issue(claim = c);"
      
      Write-Host "Creating RP Trust for MIM CM Service"
      Add-ADFSRelyingPartyTrust -Name "MIM CM Service" -Identifier ("https://"+$serverFqdn+"/certificatemanagement") -IssuanceAuthorizationRules $authorizationRules -IssuanceTransformRules $issuanceRules
      Write-Host "RP Trust for MIM CM Service has been created"
      
    • redirectUri と serverFQDN の値を更新します。

    • redirectUri を見つけるには、Virtual Smart Card アプリケーションでアプリケーション設定パネルを開き、 Settings をクリックすると、AD FS サーバーのアドレス バーにリダイレクト URI が表示されます。 URI は、ADFS サーバーのアドレスが構成されている場合にのみ表示されます。

    • serverFQDN は、MIMCMサーバーの完全なコンピュータ名のみです。

    • ConfigureMIimCMClientAndRelyingParty.ps1 スクリプトのヘルプを表示するには、次を実行します。

      get-help  -detailed ConfigureMimCMClientAndRelyingParty.ps1
      

アプリケーションのデプロイ

CM アプリを設定したら、ダウンロード センターでファイル MIMDMModernApp_<version>_AnyCPU_Test.zipをダウンロードし、そのすべての内容を抽出します。 .appx ファイルはインストーラーです。 通常は、System Center Configuration Manager または Intune を使用して Windows ストア アプリを展開して、ユーザーがポータル サイト経由でアプリにアクセスしたり、コンピューターに直接プッシュしたりできるように、アプリをサイドロードすることができます。

次のステップ