---
title: "AttributeCertificateGenerator"
description: "Namespace: Lacuna.Pki"
canonical: "https://docs.lacunasoftware.com/api/Lacuna.Pki/AttributeCertificateGenerator"
locale: "pt-BR"
product: "PKI SDK"
last_updated: "2026-06-02"
---

# AttributeCertificateGenerator

**Namespace:** `Lacuna.Pki`  
**Assembly:** `Lacuna.Pki`  
_Class_

```csharp
public class AttributeCertificateGenerator
```

**Hierarquia:** [`object`](https://learn.microsoft.com/dotnet/api/system.object) → `AttributeCertificateGenerator`

## Construtores

### `AttributeCertificateGenerator()`

```csharp
public AttributeCertificateGenerator()
```

---

## Propriedades

### `IncludeAuthorityKeyIdExtension`

```csharp
public bool IncludeAuthorityKeyIdExtension { get; set; }
```

**Retorno**

[`bool`](https://learn.microsoft.com/dotnet/api/system.boolean)

---

### `Warnings`

```csharp
public List<string> Warnings { get; }
```

**Retorno**

[`List<string>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

## Métodos

### `AddAttribute<T>(string, IEnumerable<T>)`

```csharp
public void AddAttribute<T>(string oid, IEnumerable<T> values)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `oid` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) |  |
| `values` | [`IEnumerable<T>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1) |  |

**Parâmetros de tipo**

| Nome | Descrição |
|---|---|
| `T` |  |

---

### `AddAttribute<T>(string, T)`

```csharp
public void AddAttribute<T>(string oid, T value)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `oid` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) |  |
| `value` | `T` |  |

**Parâmetros de tipo**

| Nome | Descrição |
|---|---|
| `T` |  |

---

### `AddRawAttribute(string, byte[])`

```csharp
public void AddRawAttribute(string oid, byte[] encodedValue)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `oid` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) |  |
| `encodedValue` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) |  |

---

### `AddRawAttribute(string, IEnumerable<byte[]>)`

```csharp
public void AddRawAttribute(string oid, IEnumerable<byte[]> encodedValues)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `oid` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) |  |
| `encodedValues` | [`IEnumerable<byte[]>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1) |  |

---

### `Generate(bool)`

```csharp
public AttributeCertificate Generate(bool validate = true)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `validate` | [`bool`](https://learn.microsoft.com/dotnet/api/system.boolean) |  |

**Retorno**

[`AttributeCertificate`](https://docs.lacunasoftware.com/api/Lacuna.Pki/AttributeCertificate)

---

### `GenerateToSignBytes()`

```csharp
public byte[] GenerateToSignBytes()
```

**Retorno**

[`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte)

---

### `GenerateUniqueSerialNumber()`

```csharp
public BigInteger GenerateUniqueSerialNumber()
```

**Retorno**

[`BigInteger`](https://learn.microsoft.com/dotnet/api/system.numerics.biginteger)

---

### `SetCAIssuersUri(Uri)`

```csharp
public void SetCAIssuersUri(Uri caIssuersUri)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `caIssuersUri` | [`Uri`](https://learn.microsoft.com/dotnet/api/system.uri) |  |

---

### `SetCrlDistributionPoint(Uri)`

```csharp
public void SetCrlDistributionPoint(Uri uri)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `uri` | [`Uri`](https://learn.microsoft.com/dotnet/api/system.uri) |  |

---

### `SetExtensionNoRevocationAvailable()`

```csharp
public void SetExtensionNoRevocationAvailable()
```

---

### `SetHolderName(Name)`

```csharp
public void SetHolderName(Name name)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `name` | [`Name`](https://docs.lacunasoftware.com/api/Lacuna.Pki/Name) |  |

---

### `SetHolderPKCertificate(PKCertificate)`

```csharp
public void SetHolderPKCertificate(PKCertificate holderCertificate)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `holderCertificate` | [`PKCertificate`](https://docs.lacunasoftware.com/api/Lacuna.Pki/PKCertificate) |  |

---

### `SetIssuer(PKCertificate)`

```csharp
public void SetIssuer(PKCertificate issuer)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `issuer` | [`PKCertificate`](https://docs.lacunasoftware.com/api/Lacuna.Pki/PKCertificate) |  |

---

### `SetIssuer(PKCertificateWithKey)`

```csharp
public void SetIssuer(PKCertificateWithKey issuerWithKey)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `issuerWithKey` | [`PKCertificateWithKey`](https://docs.lacunasoftware.com/api/Lacuna.Pki/PKCertificateWithKey) |  |

---

### `SetOcspUri(Uri)`

```csharp
public void SetOcspUri(Uri ocspUri)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `ocspUri` | [`Uri`](https://learn.microsoft.com/dotnet/api/system.uri) |  |

---

### `SetPrecomputedSignature(byte[], byte[])`

```csharp
public void SetPrecomputedSignature(byte[] signature, byte[] toSignBytes)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signature` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) |  |
| `toSignBytes` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) |  |

---

### `SetSerialNumber(BigInteger)`

```csharp
public void SetSerialNumber(BigInteger serialNumber)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `serialNumber` | [`BigInteger`](https://learn.microsoft.com/dotnet/api/system.numerics.biginteger) |  |

---

### `SetSignatureAlgorithm(SignatureAlgorithm)`

```csharp
public void SetSignatureAlgorithm(SignatureAlgorithm signatureAlg)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signatureAlg` | [`SignatureAlgorithm`](https://docs.lacunasoftware.com/api/Lacuna.Pki/SignatureAlgorithm) |  |

---

### `SetValidity(DateTimeOffset, DateTimeOffset)`

```csharp
public void SetValidity(DateTimeOffset start, DateTimeOffset end)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `start` | [`DateTimeOffset`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `end` | [`DateTimeOffset`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |

---

### `SetValidityFromNow(TimeSpan)`

```csharp
public void SetValidityFromNow(TimeSpan period)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `period` | [`TimeSpan`](https://learn.microsoft.com/dotnet/api/system.timespan) |  |

---

## Membros herdados

[`ToString()`](https://learn.microsoft.com/dotnet/api/system.object.tostring), [`Equals(object)`](<https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)>), [`Equals(object, object)`](<https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)>), [`ReferenceEquals(object, object)`](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [`GetHashCode()`](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [`GetType()`](https://learn.microsoft.com/dotnet/api/system.object.gettype), [`MemberwiseClone()`](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone)
