ADD SIGNATURE (Transact-SQL)
Actualizado: 17 de julio de 2006
Agrega una firma digital a un procedimiento almacenado, una función, un ensamblado o un desencadenador.
Convenciones de sintaxis de Transact-SQL
Sintaxis
ADD [ COUNTER ] SIGNATURE TO module_class::module_name
BY <crypto_list> [ ,...n ]
<crypto_list> ::=
CERTIFICATE cert_name
| CERTIFICATE cert_name [ WITH PASSWORD = 'password' ]
| CERTIFICATE cert_name WITH SIGNATURE = signed_blob
| ASYMMETRIC KEY Asym_Key_Name
| ASYMMETRIC KEY Asym_Key_Name [ WITH PASSWORD = 'password']
| ASYMMETRIC KEY Asym_Key_Name WITH SIGNATURE = signed_blob
Argumentos
- module_class
Es la clase del módulo al que se agrega la firma. El valor predeterminado para módulos de ámbito de esquema es OBJECT.
- module_name
Es el nombre de un procedimiento almacenado, una función, un ensamblado o un desencadenador que se firmará o contrafirmará.
- CERTIFICATE cert_name
Es el nombre de un certificado con el que está firmado o contrafirmado el procedimiento almacenado, la función, el ensamblado o el desencadenador.
- WITH PASSWORD ='password'
Es la contraseña necesaria para descifrar la clave privada del certificado o la clave simétrica. Esta cláusula sólo se requiere si la clave privada no está protegida por la clave maestra de la base de datos.
- SIGNATURE = signed_blob
Especifica el objeto binario grande (BLOB) firmado del módulo. Esta cláusula es útil si desea enviar un módulo sin enviar la clave privada. Si utiliza esta cláusula, sólo se necesitan el módulo, la firma y la clave pública para agregar el objeto binario grande firmado a una base de datos. signed_blob es el propio objeto binario grande en formato hexadecimal.
- ASYMMETRIC KEY Asym_Key_Name
Es el nombre de una clave asimétrica con el que está firmado o contrafirmado el procedimiento almacenado, la función, el ensamblado o el desencadenador.
Notas
El módulo que se va a firmar o contrafirmar y el certificado o la clave simétrica utilizada para firmarlo ya deben existir. En el cálculo de la firma se incluyen todos los caracteres del módulo. Esto incluye avances de línea y retornos de carro iniciales.
Un módulo se puede firmar y contrafirmar por diversos certificados y claves simétricas.
La firma de un módulo se quita cuando se cambia el módulo.
Si un módulo contiene una cláusula EXECUTE AS, el Id. de seguridad (SID) de la entidad de seguridad también se incluye como parte del proceso de firma.
Advertencia: |
---|
La firma de módulos sólo se debe utilizar para conceder permisos, nunca para denegarlos ni revocarlos. |
Para obtener más información acerca de firmas, vea la vista de catálogo sys.crypt_properties.
Permisos
Requiere el permiso ALTER para el objeto y el permiso CONTROL para el certificado o la clave asimétrica. Si una clave privada asociada está protegida por una contraseña, el usuario también debe tener la contraseña.
Ejemplos
En el siguiente ejemplo se firma el procedimiento almacenado HumanResources.uspUpdateEmployeeLogin
con el certificado HumanResourcesDP
.
USE AdventureWorks;
ADD SIGNATURE TO HumanResources.uspUpdateEmployeeLogin
BY CERTIFICATE HumanResourcesDP;
GO
Vea también
Referencia
sys.crypt_properties (Transact-SQL)
DROP SIGNATURE (Transact-SQL)
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
17 de julio de 2006 |
|