Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Azure SQL Managed Instance
Pour permettre à une autre instance d'envoyer des messages en utilisant la sécurité du transport Service Broker, créez un utilisateur pour cette autre instance et installez son certificat.
Autoriser l’accès à partir d’une autre instance à l’aide de certificats
Procurez-vous le certificat pour cette autre instance auprès d'une source fiable. En règle générale, cela implique l’envoi du certificat à l’aide d’un e-mail chiffré ou le transfert du certificat sur un support physique, tel qu’un disque de floppy.
Notes
Installez uniquement des certificats provenant de sources fiables.
Créez une connexion.
Créez un utilisateur pour la connexion dans la
masterbase de données.Installez le certificat pour l’autre instance de la
masterbase de données. L'utilisateur créé à l'étape 3 est propriétaire du certificat.Accordez l’accès de connexion
CONNECTau point de terminaison Service Broker.Videz le certificat utilisé pour la sécurité du transport Service Broker dans l’instance locale.
Notes
Conservez uniquement le certificat utilisé pour la sécurité du transport. Ne videz pas ou ne distribuez pas la clé privée associée au certificat.
Fournissez le certificat à l'administrateur de l'autre base de données. L’administrateur de la base de données distante installe ce certificat à l’aide des étapes précédentes 1 à 4.
Une fois l'accès configuré dans chaque instance, les communications entre ces deux instances utilisent la sécurité du transport Service Broker dès que leurs points de terminaison sont configurés pour autoriser la sécurité du transport.
Examples
USE master;
GO
-- Create a login for the remote instance.
CREATE LOGIN RemoteInstanceLogin WITH PASSWORD = '<password>';
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