Condividi tramite


sp_changelogreader_agent (Transact-SQL)

Si applica a: SQL Server Istanza gestita di SQL di Azure

Modifica le proprietà di sicurezza di un agente di lettura log. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

Importante

Quando si configura un server di pubblicazione con un server di distribuzione remoto, i valori forniti per tutti i parametri, inclusi @job_login e @job_password, vengono inviati al server di distribuzione come testo normale. È consigliabile crittografare la connessione tra il server di pubblicazione e il server di distribuzione remoto prima di eseguire questa stored procedure. Per ulteriori informazioni, vedere Configurare il motore di database di SQL Server per la crittografia delle connessioni.

Sintassi

sp_changelogreader_agent
    [ [ @job_login = ] N'job_login' ]
    [ , [ @job_password = ] N'job_password' ]
    [ , [ @publisher_security_mode = ] publisher_security_mode ]
    [ , [ @publisher_login = ] N'publisher_login' ]
    [ , [ @publisher_password = ] N'publisher_password' ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Argomenti

[ @job_login = ] N'job_login'

Account di accesso per l'account con cui viene eseguito l'agente. @job_login è nvarchar(257), con il valore predefinito NULL. In Istanza gestita di SQL di Azure usare un account SQL Server.

Nota

Non è possibile modificare questa impostazione per un server di pubblicazione non SQL Server.

[ @job_password = ] N'job_password'

Password per l'account con cui viene eseguito l'agente. @job_password è sysname, con il valore predefinito NULL.

Importante

Se possibile, richiedere agli utenti di immettere le credenziali di sicurezza in fase di esecuzione. Se è necessario archiviare le credenziali in un file script, è fondamentale proteggere il file per evitare accessi non autorizzati.

[ @publisher_security_mode = ] publisher_security_mode

Modalità di sicurezza utilizzata dall'agente durante la connessione al server di pubblicazione. @publisher_security_mode è smallint, con il valore predefinito .NULL I valori seguenti definiscono la modalità di sicurezza:

  • 0 specifica l'autenticazione di SQL Server.
  • 1specifica autenticazione di Windows.
  • 2 specifica l'autenticazione password di Microsoft Entra, a partire da SQL Server 2022 (16.x) CU 6.
  • 3 specifica l'autenticazione integrata di Microsoft Entra, a partire da SQL Server 2022 (16.x) CU 6.
  • 4 specifica l'autenticazione del token Microsoft Entra, a partire da SQL Server 2022 (16.x) CU 6.

Importante

Se possibile, usare l'autenticazione di Windows.

[ @publisher_login = ] N'publisher_login'

Account di accesso utilizzato per la connessione al server di pubblicazione. @publisher_login è sysname, con un valore predefinito .NULL @publisher_login deve essere specificato quando @publisher_security_mode è 0. Se @publisher_login è NULL e @publisher_security_mode è 1, l'account di Windows specificato in @job_login viene usato per la connessione al server di pubblicazione.

[ @publisher_password = ] N'publisher_password'

Password utilizzata per la connessione al server di pubblicazione. @publisher_password è sysname, con un valore predefinito .NULL

Importante

Non usare una password vuota. Usare una password complessa. Se possibile, richiedere agli utenti di immettere le credenziali di sicurezza in fase di esecuzione. Se è necessario archiviare le credenziali in un file script, è fondamentale proteggere il file per evitare accessi non autorizzati.

[ @publisher = ] N'publisher'

Nome del server di pubblicazione. @publisher è sysname, con un valore predefinito .NULL Questo parametro è supportato solo per i server di pubblicazione non SQL Server.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_changelogreader_agent viene usato nella replica transazionale.

sp_changelogreader_agent viene usato per modificare l'account di Windows in cui viene eseguito un agente di lettura log. È possibile cambiare la password di un account di accesso di Windows esistente oppure specificare un nuovo account di accesso di Windows e la password.

Dopo la modifica dell'account di accesso o della password di un agente, è necessario arrestare e riavviare l'agente per rendere effettiva la modifica.

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin o il ruolo predefinito del database db_owner possono eseguire sp_changelogreader_agent.