Condividi tramite


Procedura: Autorizzazione di accesso alla rete per Service Broker mediante certificati (Transact-SQL)

Per consentire a un'altra istanza l'invio di messaggi mediante la protezione del trasporto di Service Broker basata sui certificati, creare un utente e installare il certificato per l'altra istanza.

Per consentire l'accesso da un'altra istanza mediante certificati

  1. Ottenere il certificato per l'altra istanza da una fonte attendibile. In genere, questo comporta l'invio del certificato mediante un messaggio di posta elettronica crittografato o il trasferimento del certificato per mezzo di un supporto fisico, ad esempio un disco floppy.

    ms166077.security(it-it,SQL.90).gifNota sulla protezione:
    Installare i certificati solo da fonti attendibili.
  2. Creare un account di accesso.

  3. Creare un utente per l'account di accesso nel database master.

  4. Installare il certificato per l'altra istanza nel database master. L'utente creato nel passaggio 3 è il proprietario del certificato.

  5. Concedere l'accesso CONNECT per l'endpoint di Service Broker all'account di accesso.

  6. Eseguire il dump del certificato utilizzato per la protezione del trasporto di Service Broker nell'istanza locale.

    ms166077.security(it-it,SQL.90).gifNota sulla protezione:
    Eseguire solo il dump del certificato utilizzato per la protezione del trasporto. Non eseguire il dump né distribuire la chiave privata associata al certificato.
  7. Fornire il certificato all'amministratore dell'altro database. L'amministratore del database remoto installerà il certificato seguendo i passaggi da 1 a 4 precedenti.

Dopo la configurazione dell'accesso in ogni istanza, per le comunicazioni tra le due istanze verrà utilizzata la protezione del trasporto di Service Broker se per gli endpoint di entrambe le istanze è configurata la protezione del trasporto.

Esempio

USE master ;
GO

-- Create a login for the remote instance.

CREATE LOGIN RemoteInstanceLogin
    WITH PASSWORD = '#gh!3A%!1@f' ;
GO

-- Create a user for the login in the master database.

CREATE USER RemoteInstanceUser
    FOR LOGIN RemoteInstanceLogin ;
GO

-- Load the certificate from the file system. Notice that
-- the login owns the certificate.

CREATE CERTIFICATE RemoteInstanceCertificate
    AUTHORIZATION RemoteInstanceUser
    FROM FILE='C:\Certificates\AceBikeComponentsCertificate.cer' ;
GO
GRANT CONNECT ON ENDPOINT::ThisInstanceEndpoint to RemoteInstanceLogin ;
GO
-- Write the certificate from this instance
-- to the file system. This command assumes
-- that the certificate used by the Service Broker
-- endpoint is named TransportSecurity.

BACKUP CERTIFICATE TransportSecurity
    TO FILE = 'C:\Certificates\ThisInstanceCertificate.cer' ;
GO

Vedere anche

Attività

Procedura: Creazione di certificati per la protezione del trasporto di Service Broker (Transact-SQL)

Altre risorse

CREATE CERTIFICATE (Transact-SQL)
CREATE LOGIN (Transact-SQL)
CREATE USER (Transact-SQL)
BACKUP CERTIFICATE (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005