X509Certificate2.GetCertContentType Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Indica o tipo de certificado contido em uma matriz ou arquivo de bytes.
Sobrecargas
GetCertContentType(String) |
Indica o tipo de certificado contido em um arquivo. |
GetCertContentType(ReadOnlySpan<Byte>) |
Indica o tipo de certificado contido nos dados fornecidos. |
GetCertContentType(Byte[]) |
Indica o tipo de certificado contido em uma matriz de bytes. |
GetCertContentType(String)
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
Indica o tipo de certificado contido em um arquivo.
public:
static System::Security::Cryptography::X509Certificates::X509ContentType GetCertContentType(System::String ^ fileName);
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (string fileName);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (string fileName);
static member GetCertContentType : string -> System.Security.Cryptography.X509Certificates.X509ContentType
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member GetCertContentType : string -> System.Security.Cryptography.X509Certificates.X509ContentType
Public Shared Function GetCertContentType (fileName As String) As X509ContentType
Parâmetros
- fileName
- String
O nome de um arquivo de certificado.
Retornos
Um objeto X509ContentType.
- Atributos
Exceções
fileName
é null
.
Comentários
Esse método permite que você descubra o tipo de certificado em um arquivo.
Aplica-se a
GetCertContentType(ReadOnlySpan<Byte>)
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
Indica o tipo de certificado contido nos dados fornecidos.
public:
static System::Security::Cryptography::X509Certificates::X509ContentType GetCertContentType(ReadOnlySpan<System::Byte> rawData);
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (ReadOnlySpan<byte> rawData);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (ReadOnlySpan<byte> rawData);
static member GetCertContentType : ReadOnlySpan<byte> -> System.Security.Cryptography.X509Certificates.X509ContentType
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member GetCertContentType : ReadOnlySpan<byte> -> System.Security.Cryptography.X509Certificates.X509ContentType
Public Shared Function GetCertContentType (rawData As ReadOnlySpan(Of Byte)) As X509ContentType
Parâmetros
- rawData
- ReadOnlySpan<Byte>
Os dados a serem identificados.
Retornos
Um dos valores de enumeração que indicam o tipo de conteúdo dos dados fornecidos.
- Atributos
Aplica-se a
GetCertContentType(Byte[])
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
- Origem:
- X509Certificate2.cs
Indica o tipo de certificado contido em uma matriz de bytes.
public:
static System::Security::Cryptography::X509Certificates::X509ContentType GetCertContentType(cli::array <System::Byte> ^ rawData);
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (byte[] rawData);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType (byte[] rawData);
static member GetCertContentType : byte[] -> System.Security.Cryptography.X509Certificates.X509ContentType
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member GetCertContentType : byte[] -> System.Security.Cryptography.X509Certificates.X509ContentType
Public Shared Function GetCertContentType (rawData As Byte()) As X509ContentType
Parâmetros
- rawData
- Byte[]
Uma matriz de bytes que contém dados de um certificado X.509.
Retornos
Um objeto X509ContentType.
- Atributos
Exceções
rawData
tem um comprimento zero ou é null
.
O tipo de conteúdo em rawData
não pôde ser determinado ou desconhecido.
Exemplos
O exemplo de código a seguir abre o repositório de certificados do usuário atual, seleciona apenas certificados ativos e permite que o usuário selecione um ou mais certificados. Em seguida, o exemplo grava informações de certificado no console.
#using <System.dll>
#using <System.Security.dll>
using namespace System;
using namespace System::Security::Cryptography;
using namespace System::Security::Permissions;
using namespace System::IO;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
try
{
X509Store ^ store = gcnew X509Store( "MY",StoreLocation::CurrentUser );
store->Open( static_cast<OpenFlags>(OpenFlags::ReadOnly | OpenFlags::OpenExistingOnly) );
X509Certificate2Collection ^ collection = dynamic_cast<X509Certificate2Collection^>(store->Certificates);
X509Certificate2Collection ^ fcollection = dynamic_cast<X509Certificate2Collection^>(collection->Find( X509FindType::FindByTimeValid, DateTime::Now, false ));
X509Certificate2Collection ^ scollection = X509Certificate2UI::SelectFromCollection(fcollection, "Test Certificate Select","Select a certificate from the following list to get information on that certificate",X509SelectionFlag::MultiSelection);
Console::WriteLine( "Number of certificates: {0}{1}", scollection->Count, Environment::NewLine );
System::Collections::IEnumerator^ myEnum = scollection->GetEnumerator();
while ( myEnum->MoveNext() )
{
X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current);
array<Byte>^rawdata = x509->RawData;
Console::WriteLine( "Content Type: {0}{1}", X509Certificate2::GetCertContentType( rawdata ), Environment::NewLine );
Console::WriteLine( "Friendly Name: {0}{1}", x509->FriendlyName, Environment::NewLine );
Console::WriteLine( "Certificate Verified?: {0}{1}", x509->Verify(), Environment::NewLine );
Console::WriteLine( "Simple Name: {0}{1}", x509->GetNameInfo( X509NameType::SimpleName, true ), Environment::NewLine );
Console::WriteLine( "Signature Algorithm: {0}{1}", x509->SignatureAlgorithm->FriendlyName, Environment::NewLine );
Console::WriteLine( "Private Key: {0}{1}", x509->PrivateKey->ToXmlString( false ), Environment::NewLine );
Console::WriteLine( "Public Key: {0}{1}", x509->PublicKey->Key->ToXmlString( false ), Environment::NewLine );
Console::WriteLine( "Certificate Archived?: {0}{1}", x509->Archived, Environment::NewLine );
Console::WriteLine( "Length of Raw Data: {0}{1}", x509->RawData->Length, Environment::NewLine );
x509->Reset();
}
store->Close();
}
catch ( CryptographicException^ )
{
Console::WriteLine( "Information could not be written out for this certificate." );
}
}
using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;
class CertSelect
{
static void Main()
{
X509Store store = new X509Store("MY",StoreLocation.CurrentUser);
store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates;
X509Certificate2Collection fcollection = (X509Certificate2Collection)collection.Find(X509FindType.FindByTimeValid,DateTime.Now,false);
X509Certificate2Collection scollection = X509Certificate2UI.SelectFromCollection(fcollection, "Test Certificate Select","Select a certificate from the following list to get information on that certificate",X509SelectionFlag.MultiSelection);
Console.WriteLine("Number of certificates: {0}{1}",scollection.Count,Environment.NewLine);
foreach (X509Certificate2 x509 in scollection)
{
try
{
byte[] rawdata = x509.RawData;
Console.WriteLine("Content Type: {0}{1}",X509Certificate2.GetCertContentType(rawdata),Environment.NewLine);
Console.WriteLine("Friendly Name: {0}{1}",x509.FriendlyName,Environment.NewLine);
Console.WriteLine("Certificate Verified?: {0}{1}",x509.Verify(),Environment.NewLine);
Console.WriteLine("Simple Name: {0}{1}",x509.GetNameInfo(X509NameType.SimpleName,true),Environment.NewLine);
Console.WriteLine("Signature Algorithm: {0}{1}",x509.SignatureAlgorithm.FriendlyName,Environment.NewLine);
Console.WriteLine("Public Key: {0}{1}",x509.PublicKey.Key.ToXmlString(false),Environment.NewLine);
Console.WriteLine("Certificate Archived?: {0}{1}",x509.Archived,Environment.NewLine);
Console.WriteLine("Length of Raw Data: {0}{1}",x509.RawData.Length,Environment.NewLine);
X509Certificate2UI.DisplayCertificate(x509);
x509.Reset();
}
catch (CryptographicException)
{
Console.WriteLine("Information could not be written out for this certificate.");
}
}
store.Close();
}
}
Imports System.Security.Cryptography
Imports System.Security.Permissions
Imports System.IO
Imports System.Security.Cryptography.X509Certificates
Class CertSelect
Shared Sub Main()
Dim store As New X509Store("MY", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadOnly Or OpenFlags.OpenExistingOnly)
Dim collection As X509Certificate2Collection = CType(store.Certificates, X509Certificate2Collection)
Dim fcollection As X509Certificate2Collection = CType(collection.Find(X509FindType.FindByTimeValid, DateTime.Now, False), X509Certificate2Collection)
Dim scollection As X509Certificate2Collection = X509Certificate2UI.SelectFromCollection(fcollection, "Test Certificate Select", "Select a certificate from the following list to get information on that certificate", X509SelectionFlag.MultiSelection)
Console.WriteLine("Number of certificates: {0}{1}", scollection.Count, Environment.NewLine)
For Each x509 As X509Certificate2 In scollection
Try
Dim rawdata As Byte() = x509.RawData
Console.WriteLine("Content Type: {0}{1}", X509Certificate2.GetCertContentType(rawdata), Environment.NewLine)
Console.WriteLine("Friendly Name: {0}{1}", x509.FriendlyName, Environment.NewLine)
Console.WriteLine("Certificate Verified?: {0}{1}", x509.Verify(), Environment.NewLine)
Console.WriteLine("Simple Name: {0}{1}", x509.GetNameInfo(X509NameType.SimpleName, True), Environment.NewLine)
Console.WriteLine("Signature Algorithm: {0}{1}", x509.SignatureAlgorithm.FriendlyName, Environment.NewLine)
Console.WriteLine("Public Key: {0}{1}", x509.PublicKey.Key.ToXmlString(False), Environment.NewLine)
Console.WriteLine("Certificate Archived?: {0}{1}", x509.Archived, Environment.NewLine)
Console.WriteLine("Length of Raw Data: {0}{1}", x509.RawData.Length, Environment.NewLine)
X509Certificate2UI.DisplayCertificate(x509)
x509.Reset()
Catch cExcept As CryptographicException
Console.WriteLine("Information could not be written out for this certificate.")
End Try
Next x509
store.Close()
End Sub
End Class
Comentários
Esse método permite que você descubra o tipo de certificado em um arquivo.