CREATE ENDPOINT (Transact-SQL)CREATE ENDPOINT (Transact-SQL)

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Crea gli endpoint e ne definisce le proprietà, inclusi i metodi disponibili alle applicazioni client.Creates endpoints and defines their properties, including the methods available to client applications. Per le informazioni sulle autorizzazioni correlate, vedere GRANT-autorizzazioni per Endpoint ( Transact-SQL ) .For related permissions information, see GRANT Endpoint Permissions (Transact-SQL).

La sintassi di CREATE ENDPOINT può essere logicamente suddivisa in due parti:The syntax for CREATE ENDPOINT can logically be broken into two parts:

  • La prima parte inizia con AS e termina prima della clausola FOR.The first part starts with AS and ends before the FOR clause.

    In questa parte vengono fornite informazioni specifiche del protocollo di trasporto TCP e viene impostato un numero di porta di attesa per l'endpoint, nonché il metodo di autenticazione dell'endpoint e/o l'elenco degli eventuali indirizzi IP che si desidera escludere dall'accesso all'endpoint.In this part, you provide information specific to the transport protocol (TCP) and set a listening port number for the endpoint, as well as the method of endpoint authentication and/or a list of IP addresses (if any) that you want to restrict from accessing the endpoint.

  • La seconda parte inizia dalla clausola FOR.The second part starts with the FOR clause.

    In questa parte viene definito il payload supportato dall'endpoint.In this part, you define the payload that is supported on the endpoint. I tipi di payload supportati sono Transact-SQLTransact-SQL, SERVICE BROKER e DATABASE MIRRORING.The payload can be one of several supported types: Transact-SQLTransact-SQL, service broker, database mirroring. In questa parte è inoltre possibile includere informazioni specifiche della lingua.In this part, you also include language-specific information.

Nota: servizi Web XML nativi (endpoint SOAP/HTTP) è stata rimossa in SQL Server 2012SQL Server 2012.NOTE: Native XML Web Services (SOAP/HTTP endpoints) was removed in SQL Server 2012SQL Server 2012.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintassiSyntax

CREATE ENDPOINT endPointName [ AUTHORIZATION login ]  
[ STATE = { STARTED | STOPPED | DISABLED } ]  
AS { TCP } (  
   <protocol_specific_arguments>  
        )  
FOR { TSQL | SERVICE_BROKER | DATABASE_MIRRORING } (  
   <language_specific_arguments>  
        )  

<AS TCP_protocol_specific_arguments> ::=  
AS TCP (  
  LISTENER_PORT = listenerPort  
  [ [ , ] LISTENER_IP = ALL | ( 4-part-ip ) | ( "ip_address_v6" ) ]  

)  

<FOR SERVICE_BROKER_language_specific_arguments> ::=  
FOR SERVICE_BROKER (  
   [ AUTHENTICATION = {   
            WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]   
      | CERTIFICATE certificate_name   
      | WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ] CERTIFICATE certificate_name   
      | CERTIFICATE certificate_name WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]   
    } ]  
   [ [ , ] ENCRYPTION = { DISABLED | { { SUPPORTED | REQUIRED }   
       [ ALGORITHM { AES | RC4 | AES RC4 | RC4 AES } ] }   
   ]  
   [ [ , ] MESSAGE_FORWARDING = { ENABLED | DISABLED } ]  
   [ [ , ] MESSAGE_FORWARD_SIZE = forward_size ]  
)  


<FOR DATABASE_MIRRORING_language_specific_arguments> ::=  
FOR DATABASE_MIRRORING (  
   [ AUTHENTICATION = {   
            WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]   
      | CERTIFICATE certificate_name   
      | WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ] CERTIFICATE certificate_name   
      | CERTIFICATE certificate_name WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]   
   [ [ [ , ] ] ENCRYPTION = { DISABLED | { { SUPPORTED | REQUIRED }   
       [ ALGORITHM { AES | RC4 | AES RC4 | RC4 AES } ] }   

    ]   
   [ , ] ROLE = { WITNESS | PARTNER | ALL }  
)  

ArgomentiArguments

endPointNameendPointName
Nome assegnato per l'endpoint in fase di creazione.Is the assigned name for the endpoint you are creating. Utilizzare questo nome in caso di aggiornamento o eliminazione dell'endpoint.Use when updating or deleting the endpoint.

AUTORIZZAZIONE account di accessoAUTHORIZATION login
Specifica un account di accesso SQL ServerSQL Server o Windows valido a cui viene assegnata la proprietà del nuovo oggetto endpoint creato.Specifies a valid SQL ServerSQL Server or Windows login that is assigned ownership of the newly created endpoint object. Se si omette AUTHORIZATION, per impostazione predefinita il chiamante diventerà il proprietario del nuovo oggetto creato.If AUTHORIZATION is not specified, by default, the caller becomes owner of the newly created object.

Per assegnare la proprietà tramite Authorization, il chiamante deve disporre dell'autorizzazione IMPERSONATE per l'oggetto specificato accesso.To assign ownership by specifying AUTHORIZATION, the caller must have IMPERSONATE permission on the specified login.

Per riassegnare la proprietà, vedere ALTER ENDPOINT ( Transact-SQL ) .To reassign ownership, see ALTER ENDPOINT (Transact-SQL).

STATO = {AVVIATO | ARRESTATO | DISABILITATO}STATE = { STARTED | STOPPED | DISABLED }
Stato dell'endpoint al momento della creazione.Is the state of the endpoint when it is created. Se durante la procedura di creazione non viene specificato uno stato, per impostazione predefinita verrà utilizzato STOPPED.If the state is not specified when the endpoint is created, STOPPED is the default.

STARTEDSTARTED
L'endpoint viene avviato ed è attivamente in attesa di connessioni.Endpoint is started and is actively listening for connections.

DISABLEDDISABLED
L'endpoint è disabilitato.Endpoint is disabled. In questo stato, tramite il server vengono attese le richieste della porta, ma anche restituiti errori ai client.In this state, the server listens to port requests but returns errors to clients.

ARRESTATOSTOPPED
L'endpoint è arrestato.Endpoint is stopped. In questo stato, tramite il server non vengono attese le richieste della porta dell'endpoint né viene fornita una risposta ai tentativi di richiesta di utilizzare l'endpoint.In this state, the server does not listen to the endpoint port or respond to any attempted requests to use the endpoint.

Per modificare lo stato, utilizzare ALTER ENDPOINT ( Transact-SQL ) .To change the state, use ALTER ENDPOINT (Transact-SQL).

AS { TCP }AS { TCP }
Viene specificato il protocollo di trasporto da utilizzare.Specifies the transport protocol to use.

FOR { TSQL | SERVICE_BROKER | DATABASE_MIRRORING }FOR { TSQL | SERVICE_BROKER | DATABASE_MIRRORING }
Specifica il tipo di payload.Specifies the payload type.

Attualmente non sono presenti argomenti specifici del linguaggio Transact-SQLTransact-SQL da passare nel parametro <language_specific_arguments>.Currently, there are no Transact-SQLTransact-SQL language-specific arguments to pass in the <language_specific_arguments> parameter.

Opzione TCPTCP Protocol Option

I seguenti argomenti sono validi solo per l'opzione TCP.The following arguments apply only to the TCP protocol option.

LISTENER_PORT = listenerPortLISTENER_PORT =listenerPort
Specifica il numero della porta della quale il protocollo TCP/IP di Service Broker è in attesa delle connessioni.Specifies the port number listened to for connections by the service broker TCP/IP protocol. Per convenzione, viene utilizzato il valore 4022 ma sono validi tutti i numeri compresi tra 1024 e 32767.By convention, 4022 is used but any number between 1024 and 32767 is valid.

LISTENER_IP = tutti | (parte-4-ip ) | ( "ip_address_v6" )LISTENER_IP = ALL | (4-part-ip ) | ( "ip_address_v6" )
Specifica l'indirizzo IP in corrispondenza del quale verrà eseguita l'attesa dell'endpoint.Specifies the IP address that the endpoint will listen on. Il valore predefinito è ALL.The default is ALL. Ciò significa che il listener accetterà una connessione su qualsiasi indirizzo IP valido.This means that the listener will accept a connection on any valid IP address.

Se si configura il mirroring del database con un indirizzo IP anziché con un nome di dominio completo (ALTER DATABASE SET PARTNER = partner_IP_address o ALTER DATABASE SET WITNESS = witness_IP_address), è necessario specificare LISTENER_IP =IP_address anziché LISTENER_IP=ALL quando si creano gli endpoint del mirroring.If you configure database mirroring with an IP address instead of a fully-qualified domain name (ALTER DATABASE SET PARTNER = partner_IP_address or ALTER DATABASE SET WITNESS = witness_IP_address), you have to specify LISTENER_IP =IP_address instead of LISTENER_IP=ALL when you create mirroring endpoints.

Opzioni SERVICE_BROKER e DATABASE_MIRRORINGSERVICE_BROKER and DATABASE_MIRRORING Options

Gli argomenti AUTHENTICATION e ENCRYPTION di seguito descritti sono comuni alle opzioni SERVICE_BROKER e DATABASE_MIRRORING.The following AUTHENTICATION and ENCRYPTION arguments are common to the SERVICE_BROKER and DATABASE_MIRRORING options.

Nota

Per le opzioni specifiche per SERVICE_BROKER, vedere "Opzioni di SERVICE_BROKER" di seguito in questo argomento.For options that are specific to SERVICE_BROKER, see "SERVICE_BROKER Options," later in this section. Per le opzioni specifiche per DATABASE_MIRRORING, vedere "Opzioni di DATABASE_MIRRORING" di seguito in questo argomento.For options that are specific to DATABASE_MIRRORING, see "DATABASE_MIRRORING Options," later in this section.

AUTENTICAZIONE = <authentication_options > specifica i requisiti di autenticazione TCP/IP per le connessioni per questo endpoint.AUTHENTICATION = <authentication_options> Specifies the TCP/IP authentication requirements for connections for this endpoint. Il valore predefinito è WINDOWS.The default is WINDOWS.

I metodi di autenticazione supportati includono NTLM o Kerberos oppure entrambi.The supported authentication methods include NTLM and or Kerberos or both.

Importante

Tutte le connessioni per il mirroring in un'istanza del server utilizzano un singolo endpoint del mirroring del database.All mirroring connections on a server instance use a single database mirroring endpoint. Qualsiasi tentativo di creare un endpoint del mirroring del database aggiuntivo avrà esito negativo.Any attempt to create an additional database mirroring endpoint will fail.

<authentication_options >:: =<authentication_options> ::=

WINDOWS [{NTLM | KERBEROS | NEGOTIATE }]WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]
Specifica che l'endpoint deve connettersi utilizzando il protocollo di autenticazione di Windows per autenticare gli endpointSpecifies that the endpoint is to connect using Windows Authentication protocol to authenticate the endpoints. Impostazione predefinita.This is the default.

Se si specifica un metodo di autenticazione (NTLM o KERBEROS), il metodo specificato viene utilizzato sempre come protocollo di autenticazione.If you specify an authorization method (NTLM or KERBEROS), that method is always used as the authentication protocol. Il valore predefinito NEGOTIATE imposta l'utilizzo da parte dell'endpoint di uno dei protocolli di negoziazione di Windows (NTLM o Kerberos).The default value, NEGOTIATE, causes the endpoint to use the Windows negotiation protocol to choose either NTLM or Kerberos.

CERTIFICATO nome_certificatoCERTIFICATE certificate_name
Specifica che l'endpoint deve autenticare la connessione utilizzando il certificato specificato dalla nome_certificato per stabilire l'identità per l'autorizzazione.Specifies that the endpoint is to authenticate the connection using the certificate specified by certificate_name to establish identity for authorization. L'endpoint sull'altro lato della connessione deve disporre di un certificato con chiave pubblica corrispondente alla chiave privata del certificato specificato.The far endpoint must have a certificate with the public key matching the private key of the specified certificate.

WINDOWS [{NTLM | KERBEROS | NEGOTIATE }] CERTIFICATO nome_certificatoWINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ] CERTIFICATE certificate_name
Specifica che l'endpoint deve tentare di connettersi utilizzando l'autenticazione di Windows e, se il tentativo ha esito negativo, di provare a utilizzare il certificato specificato.Specifies that endpoint is to try to connect by using Windows Authentication and, if that attempt fails, to then try using the specified certificate.

CERTIFICATO nome_certificato WINDOWS [{NTLM | KERBEROS | NEGOTIATE }]CERTIFICATE certificate_name WINDOWS [ { NTLM | KERBEROS | NEGOTIATE } ]
Specifica che l'endpoint deve tentare di connettersi utilizzando il certificato specificato e, se il tentativo ha esito negativo, di provare a utilizzare l'autenticazione di Windows.Specifies that endpoint is to try to connect by using the specified certificate and, if that attempt fails, to then try using Windows Authentication.

CRITTOGRAFIA = {DISABILITATO | SUPPORTATI | REQUIRED } [ALGORITMO { AES | RC4 | AES RC4 | RC4 AES}]ENCRYPTION = { DISABLED | SUPPORTED | REQUIRED } [ALGORITHM { AES | RC4 | AES RC4 | RC4 AES } ]
Specifica se nel processo viene utilizzata la crittografia.Specifies whether encryption is used in the process. Il valore predefinito è REQUIRED.The default is REQUIRED.

DISABLEDDISABLED
Specifica che i dati inviati tramite una connessione non vengano crittografati.Specifies that data sent over a connection is not encrypted.

SUPPORTEDSUPPORTED
Specifica che i dati vengano crittografati solo se per l'endpoint opposto è stato specificato SUPPORTED o REQUIRED.Specifies that the data is encrypted only if the opposite endpoint specifies either SUPPORTED or REQUIRED.

REQUIREDREQUIRED
Specifica che le connessioni con questo endpoint devono utilizzare la crittografia.Specifies that connections to this endpoint must use encryption. Per connettersi a questo endpoint, è necessario impostare l'argomento ENCRYPTION su SUPPORTED o REQUIRED per l'altro endpoint.Therefore, to connect to this endpoint, another endpoint must have ENCRYPTION set to either SUPPORTED or REQUIRED.

Facoltativamente, è possibile utilizzare l'argomento ALGORITHM per specificare la forma di crittografia utilizzata dall'endpoint, come descritto di seguito.Optionally, you can use the ALGORITHM argument to specify the form of encryption used by the endpoint, as follows:

AESAES
Specifica che l'endpoint deve utilizzare l'algoritmo AES.Specifies that the endpoint must use the AES algorithm. Questo è l'impostazione predefinita in SQL Server 2016SQL Server 2016 e versioni successive.This is the default in SQL Server 2016SQL Server 2016 and later.

RC4RC4
Specifica che l'endpoint deve utilizzare l'algoritmo RC4.Specifies that the endpoint must use the RC4 algorithm. Questa è l'impostazione predefinita tramite SQL Server 2014SQL Server 2014.This is the default through SQL Server 2014SQL Server 2014.

Nota

L'algoritmo RC4 è supportato solo per motivi di compatibilità con le versioni precedenti.The RC4 algorithm is only supported for backward compatibility. È possibile crittografare il nuovo materiale usando RC4 o RC4_128 solo quando il livello di compatibilità del database è 90 o 100.New material can only be encrypted using RC4 or RC4_128 when the database is in compatibility level 90 or 100. (Non consigliato.) Usare un algoritmo più recente, ad esempio uno degli algoritmi AES.(Not recommended.) Use a newer algorithm such as one of the AES algorithms instead. In SQL Server 2012SQL Server 2012 e versioni successive il materiale crittografato utilizzando RC4 o RC4_128 può essere decrittografato in qualsiasi livello di compatibilità.In SQL Server 2012SQL Server 2012 and later versions, material encrypted using RC4 or RC4_128 can be decrypted in any compatibility level.

AES RC4AES RC4
Specifica che due endpoint eseguiranno la negoziazione di un algoritmo di crittografia con l'endpoint corrente, dando la priorità all'algoritmo AES.Specifies that the two endpoints will negotiate for an encryption algorithm with this endpoint giving preference to the AES algorithm.

RC4 AESRC4 AES
Specifica che due endpoint eseguiranno la negoziazione di un algoritmo di crittografia con l'endpoint corrente, dando la priorità all'algoritmo RC4.Specifies that the two endpoints will negotiate for an encryption algorithm with this endpoint giving preference to the RC4 algorithm.

Nota

L'algoritmo RC4 è deprecato.The RC4 algorithm is deprecated. Questa funzionalità verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server.This feature will be removed in a future version of Microsoft SQL Server. Non usare questa funzionalità in un nuovo progetto di sviluppo e modificare non appena possibile le applicazioni in cui è attualmente implementata.Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible. È consigliabile utilizzare AES. We recommend that you use AES.

Se i due endpoint specificano entrambi gli algoritmi, ma con un ordine diverso, l'algoritmo verrà definito dall'endpoint che accetta la connessione.If both endpoints specify both algorithms but in different orders, the endpoint accepting the connection wins.

Opzioni di SERVICE_BROKERSERVICE_BROKER Options

Gli argomenti seguenti sono specifici dell'opzione SERVICE_BROKER.The following arguments are specific to the SERVICE_BROKER option.

MESSAGE_FORWARDING = {ABILITATO | DISABILITATO }MESSAGE_FORWARDING = { ENABLED | DISABLED }
Determina se i messaggi ricevuti da questo endpoint e destinati a servizi ubicati altrove verranno inoltrati.Determines whether messages received by this endpoint that are for services located elsewhere will be forwarded.

ENABLEDENABLED
Inoltra i messaggi se è disponibile un indirizzo di inoltro.Forwards messages if a forwarding address is available.

DISABLEDDISABLED
Cancella i messaggi per i servizi ubicati altrove.Discards messages for services located elsewhere. Impostazione predefinita.This is the default.

MESSAGE_FORWARD_SIZE = forward_sizeMESSAGE_FORWARD_SIZE =forward_size
Specifica lo spazio di archiviazione massimo espresso in MB da allocare per l'endpoint durante l'archiviazione dei messaggi da inoltrare.Specifies the maximum amount of storage in megabytes to allocate for the endpoint to use when storing messages that are to be forwarded.

Opzioni di DATABASE_MIRRORINGDATABASE_MIRRORING Options

L'argomento seguente è specifico dell'opzione DATABASE_MIRRORING.The following argument is specific to the DATABASE_MIRRORING option.

RUOLO = {CONTROLLO | PARTNER | TUTTI I}ROLE = { WITNESS | PARTNER | ALL }
Specifica il ruolo o i ruoli di mirroring del database supportati dall'endpoint.Specifies the database mirroring role or roles that the endpoint supports.

WITNESSWITNESS
Consente all'endpoint di assumere un ruolo di controllo del mirroring durante il processo di mirroring.Enables the endpoint to perform in the role of a witness in the mirroring process.

Nota

Per SQL Server 2005 Express EditionSQL Server 2005 Express Edition WITNESS è l'unica opzione disponibile.For SQL Server 2005 Express EditionSQL Server 2005 Express Edition, WITNESS is the only option available.

PARTNERPARTNER
Consente all'endpoint di assumere un ruolo di partner del mirroring durante il processo di mirroring.Enables the endpoint to perform in the role of a partner in the mirroring process.

ALLALL
Consente all'endpoint di assumere i ruoli di controllo e partner del mirroring durante il processo di mirroring.Enables the endpoint to perform in the role of both a witness and a partner in the mirroring process.

Per ulteriori informazioni su questi ruoli, vedere il mirroring del Database ( SQL Server ) .For more information about these roles, see Database Mirroring (SQL Server).

Nota

Non esiste alcuna porta predefinita per DATABASE_MIRRORING.There is no default port for DATABASE_MIRRORING.

OsservazioniRemarks

Non è possibile eseguire le istruzioni ENDPOINT DDL all'interno di una transazione utente.ENDPOINT DDL statements cannot be executed inside a user transaction. Le istruzioni ENDPOINT DDL non avranno esito negativo anche in presenza di una transazione attiva a livello di isolamento dello snapshot che utilizza l'endpoint in fase di modifica.ENDPOINT DDL statements do not fail even if an active snapshot isolation level transaction is using the endpoint being altered.

Le richieste possono essere eseguite su ENDPOINT da:Requests can be executed against an ENDPOINT by the following:

  • I membri di sysadmin ruolo predefinito del serverMembers of sysadmin fixed server role

  • Il proprietario dell'endpointThe owner of the endpoint

  • Utenti o gruppi a cui è stata concessa l'autorizzazione CONNECT per l'endpoint.Users or groups that have been granted CONNECT permission on the endpoint

PermissionsPermissions

È richiesta l'autorizzazione CREATE ENDPOINT o l'appartenenza al ruolo predefinito del server sysadmin .Requires CREATE ENDPOINT permission, or membership in the sysadmin fixed server role. Per altre informazioni, vedere GRANT - autorizzazioni per endpoint (Transact-SQL).For more information, see GRANT Endpoint Permissions (Transact-SQL).

EsempioExample

Creazione di un endpoint del mirroring del databaseCreating a database mirroring endpoint

Nell'esempio seguente viene creato un endpoint del mirroring del database.The following example creates a database mirroring endpoint. L'endpoint utilizza il numero di porta 7022, anche se qualsiasi numero di porta funzionerebbe correttamente.The endpoint uses port number 7022, although any available port number would work. L'endpoint è configurato in modo da utilizzare solo Kerberos come modalità di autenticazione Windows.The endpoint is configured to use Windows Authentication using only Kerberos. L'opzione ENCRYPTION è configurata sul valore non predefinito SUPPORTED per garantire il supporto di dati crittografati e non crittografati.The ENCRYPTION option is configured to the nondefault value of SUPPORTED to support encrypted or unencrypted data. L'endpoint verrà configurato in modo da supportare entrambi i ruoli partner e di controllo del mirroring.The endpoint is being configured to support both the partner and witness roles.

CREATE ENDPOINT endpoint_mirroring  
    STATE = STARTED  
    AS TCP ( LISTENER_PORT = 7022 )  
    FOR DATABASE_MIRRORING (  
       AUTHENTICATION = WINDOWS KERBEROS,  
       ENCRYPTION = SUPPORTED,  
       ROLE=ALL);  
GO  

Vedere ancheSee also

ALTER ENDPOINT (Transact-SQL) ALTER ENDPOINT (Transact-SQL)
Scelta di un algoritmo di crittografia Choose an Encryption Algorithm
DROP ENDPOINT (Transact-SQL) DROP ENDPOINT (Transact-SQL)
EVENTDATA (Transact-SQL)EVENTDATA (Transact-SQL)