---
title: "Personalizando a listagem de certificados"
description: "Como personalizar o texto de cada certificado na listagem do Web PKI com selectOptionFormatter e as propriedades dos certificados."
canonical: "https://docs.lacunasoftware.com/articles/web-pki/cert-select"
locale: "pt-BR"
product: "Web PKI"
last_updated: "2026-10-12"
---

# Personalizando a listagem de certificados

É possível personalizar o texto mostrado para cada certificado na listagem de certificados utilizando as
[Propriedades dos certificados](https://docs.lacunasoftware.com/articles/web-pki/cert-properties) retornadas pelo Web PKI:

```js
function onWebPkiReady() {
	pki.listCertificates({
		selectId: 'certificateSelect',
		selectOptionFormatter: getCertText
	});
}

function getCertText(cert) {
	return cert.subjectName + ' (issued by ' + cert.issuerName + ')';
}
```

O mesmo se aplica se você estiver processando o array de certificados manualmente:

```js
function onWebPkiReady() {
	pki.listCertificates().success(function (certs) {
		var select = $('#certificateSelect');
		for (var i = 0; i < certs.length; i++) {
			var cert = certs[i];
			select.append(
				$('<option />').val(cert.thumbprint).text(getCertText(cert))
			);
		}
	});
}

function getCertText(cert) {
	return cert.subjectName + ' (issued by ' + cert.issuerName + ')';
}
```

Por exemplo, para exibir a **data de validade** de cada certificado:

```js
function getCertText(cert) {
	return cert.subjectName + ' (expires on ' + cert.validityEnd.toLocaleDateString() + ')';
}
```

Ou para exibir um prefixo `[EXPIRADO]` se o certificado estiver expirado:

```js
function getCertText(cert) {
	var text = cert.subjectName;
	if (new Date() > cert.validityEnd) {
		text = '[EXPIRADO] ' + text;
	}
	return text;
}
```

> **Dica**
>
> Recomendamos utilizar pelo menos uma propriedade adicional além do nome do titular para ajudar usuários com
> mais de um certificado com o mesmo nome (em outras palavras, não use apenas `return cert.subjectName;`)

## Validação de certificados

Essa seção foi movida para um artigo separado: [Pré-validação de certificados](https://docs.lacunasoftware.com/articles/web-pki/cert-validation)

## Ordenação

Essa seção foi removida porque o Web PKI agora retorna automaticamente a lista de certificados ordenada pelo `subjectName`.

> **Observação**
>
> Caso na sua aplicação os certificados não estejam ordenados, atualize a biblioteca de JavaScript do Web PKI.

**Demonstrações e exemplos**

- Demonstração: [Seus certificados no navegador](https://try.lacunasoftware.com/pt/web-pki/certificates-in-the-browser)
- Listar os certificados do usuário com o Web PKI: [.NET](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/dotnet/mvc/PkiSuiteAspNetMvcSample/Controllers/ListCertJQueryController.cs) · [Java](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/java/springmvc/src/main/java/com/lacunasoftware/pkisuite/controller/ListCertJQueryController.java) · [Node.js](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/nodejs/expressmvc/routes/list-cert-jquery.js) · [Python](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/python/flask/sample/views/list_cert_jquery.py) · [Ruby](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/ruby/rails/app/controllers/list_cert_jquery_controller.rb)
- Ler os dados de um certificado com o Web PKI: [.NET](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/dotnet/mvc/PkiSuiteAspNetMvcSample/Controllers/ReadCertJQueryController.cs) · [Java](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/java/springmvc/src/main/java/com/lacunasoftware/pkisuite/controller/ReadCertJQueryController.java) · [Node.js](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/nodejs/expressmvc/routes/read-cert-jquery.js) · [Python](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/python/flask/sample/views/read_cert_jquery.py) · [Ruby](https://github.com/LacunaSoftware/PkiSuiteSamples/blob/master/ruby/rails/app/controllers/read_cert_jquery_controller.rb)
