web-dev-qa-db-ja.com

証明書テンプレートのOIDを取得するにはどうすればよいですか?

C#(またはVBScript)を使用して、エンタープライズCAから証明書を発行しています。

この答え によると、証明書名の代わりにOIDを指定し、コードの予期しない部分に配置する必要があります。 null文字列は)

証明書マネージャ、テンプレートなどを探していますが、OID使用する必要があります。見つかりません。何か提案はありますか?

6

証明書テンプレートは、Active Directoryの構成パーティションに格納されます。

たとえば、証明書テンプレートの名前が「スマートカード」の場合、DNは次のようになります。

CN=Smartcard,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=Contoso,DC=Com

msPKI-Cert-Template-OIDそのオブジェクトの属性には、OID求めるものが含まれています。

編集:Powershellは次のとおりです。

PS C:\Users\Ryan> Get-ADObject 'CN=Smartcard,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=Contoso,DC=Com' -Properties msPKI-Cert-Template-OID


DistinguishedName       : CN=Smartcard,CN=Certificate Templates,CN=Public Key
                          Services,CN=Services,CN=Configuration,DC=Contoso,DC=Com
msPKI-Cert-Template-OID : 1.3.6.1.4.1.311.21.8.13882702.11110958.1330334.1890290.2281445.541.2.14
Name                    : Smartcard
ObjectClass             : pKICertificateTemplate
ObjectGUID              : 1cd4698d-56fe-4d4b-8005-f89a76d24ae1
5
Ryan Ries

証明書テンプレートの識別名を見つけるのに問題があったため、次の手順に従って他の回答とは異なる方法を見つけました。

  • MMCを開き、証明書テンプレートスナップインを追加します([ファイル]> [スナップインの追加と削除]> [証明書テンプレート]-このスナップインを使用するには、管理者として実行する必要がある場合があります)
  • 必要な証明書テンプレートを右クリックしますOID of
  • プロパティを開く
  • 拡張機能タブを開く
  • 証明書テンプレート情報を選択
  • OIDは、以下の説明の「オブジェクト識別子」の後に表示されます
3
chillNZ

ドメインOIDにこの文字列全体が必要になる場合があると思います。

    Get-ADObject ('CN=OID,CN=Public Key Services,CN=Services,'+(Get-ADRootDSE).configurationNamingContext) -Properties msPKI-Cert-Template-OID | Select-Object -ExpandProperty msPKI-Cert-Template-OID
0
Dean Weis