CERTPRIVATEKEY (Transact-SQL)
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Banco de Dados SQL no Microsoft Fabric
Essa função retorna a chave privada de um certificado em formato binário. Essa função não utiliza três argumentos.
- Uma ID de certificado.
- Uma senha de criptografia, usada para criptografar os bits de chave privada retornados pela função. Essa abordagem não expõe as chaves como um texto não criptografado para os usuários.
- Uma senha de descriptografia opcional. Uma senha de descriptografia especificada é usada para descriptografar a chave privada do certificado. Caso contrário, a chave mestra de banco de dados é usada.
Somente os usuários com acesso à chave privada do certificado podem usar essa função. Essa função retorna a chave privada em formato PVK.
Sintaxe
CERTPRIVATEKEY
(
cert_ID
, ' encryption_password '
[ , ' decryption_password ' ]
)
Argumentos
certificate_ID
A certificate_id do certificado. Obtenha esse valor de sys.certificates ou da função CERT_ID (Transact-SQL). cert_id tem um tipo de dados int.
encryption_password
A senha usada para criptografar o valor binário retornado.
decryption_password
A senha usada para descriptografar o valor binário retornado.
Tipos de retorno
varbinary
Comentários
Use CERTENCODED e CERTPRIVATEKEY em conjunto para retornar diferentes partes de um certificado em formato binário.
Permissões
CERTPRIVATEKEY está disponível publicamente.
Exemplos
CREATE DATABASE TEST1;
GO
USE TEST1
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Use 5tr0ng P^55Words'
GO
CREATE CERTIFICATE Shipping04
WITH SUBJECT = 'Sammamish Shipping Records',
EXPIRY_DATE = '20401031';
GO
SELECT CERTPRIVATEKEY(CERT_ID('Shipping04'), 'jklalkaa/; uia3dd');
Confira o Exemplo B em CERTENCODED (Transact-SQL) para obter um exemplo mais complexo que usa CERTPRIVATEKEY e CERTENCODED para copiar um certificado para outro banco de dados.
Confira também
Funções de segurança (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)Security Functions (Transact-SQL)sys.certificates (Transact-SQL)