Partager via


ALTER ENDPOINT (Transact-SQL)

Permet de modifier un point de terminaison existant selon plusieurs procédures :

  • en ajoutant une nouvelle méthode à un point de terminaison existant ;

  • en modifiant ou supprimant une méthode existante du point de terminaison ;

  • en modifiant les propriétés d'un point de terminaison.

Notes

Cette rubrique décrit la syntaxe et les arguments spécifiques à ALTER ENDPOINT. Pour les descriptions des arguments communs à CREATE ENDPOINT et ALTER ENDPOINT, consultez CREATE ENDPOINT (Transact-SQL).

Les Services Web XML natifs (points de terminaison SOAP/HTTP) sont déconseillés. Pour plus d'informations, consultez Services Web XML natifs : déconseillés dans SQL Server 2008.

Icône Lien de rubriqueConventions de la syntaxe Transact-SQL

Syntaxe

ALTER ENDPOINT endPointName [ AUTHORIZATION login ]
[ STATE = { STARTED | STOPPED | DISABLED } ]
[ AS { TCP | HTTP } ( <protocol_specific_items> ) ]
[ FOR { SOAP | TSQL | SERVICE_BROKER | DATABASE_MIRRORING } (
   <language_specific_items>
        ) ]

<AS HTTP_protocol_specific_arguments> ::=
AS HTTP (
  [ [ , ] PATH = 'url' ]
  [ [ , ] PORTS = ( { CLEAR | SSL } [ ,...n ] ) ]
  [ [ , ] SITE = { '*' | '+' | 'webSite' } , ]
  [ [ , ] CLEAR_PORT = clearPort ]
  [ [ , ] SSL_PORT = SSLPort ]
  [ [,] AUTHENTICATION = ( { BASIC | DIGEST | NTLM | KERBEROS | INTEGRATED } [ ,...n ] ) ]
  [ [ , ] AUTH_REALM = { 'realm' | NONE } ]
  [ [ , ] DEFAULT_LOGON_DOMAIN = { 'domain' | NONE } ]
  [ [ , ] COMPRESSION = { ENABLED | DISABLED } ]
)

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

<FOR SOAP_language_specific_arguments> ::=
FOR SOAP (
  [ { ADD WEBMETHOD [ 'namespace' .] 'method_alias' 
    (   NAME = 'database.owner.name'
      [ , SCHEMA = {NONE | STANDARD | DEFAULT } ]
      [ , FORMAT = { ALL_RESULTS | ROWSETS_ONLY | NONE} ]
    )  
  } [ ,...n ] 
  ]

  [ { ALTER WEBMETHOD [ 'namespace' .] 'method_alias' 
    (   NAME = 'database.owner.name'
      [ , SCHEMA = {NONE | STANDARD | DEFAULT} ]
      [ , FORMAT = { ALL_RESULTS | ROWSETS_ONLY } ]
    )  
  } [ ,...n] 
]
  [ [ , ] { DROP WEBMETHOD [ 'namespace' .] 'method_alias' } [ ,...n ] ]
  [ [ , ] BATCHES = { ENABLED | DISABLED } ]
  [ [ , ] WSDL = { NONE | DEFAULT | 'sp_name' } ]
  [ [ , ] SESSIONS = { ENABLED | DISABLED } ]
  [ [ , ] LOGIN_TYPE = { MIXED | WINDOWS } ]
  [ [ , ] SESSION_TIMEOUT = timeoutInterval ]
  [ [ , ] DATABASE = { 'database_name' | DEFAULT } ]
  [ [ , ] NAMESPACE = { 'namespace' | DEFAULT } ]
  [ [ , ] SCHEMA = { NONE | STANDARD } ]
  [ [ , ] CHARACTER_SET = { SQL | XML } ]
  [ [ , ] HEADER_LIMIT = int ]
)

<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 { RC4 | AES | AES RC4 | RC4 AES } ] } 
   ]

  [ , MESSAGE_FORWARDING = {ENABLED | DISABLED} ]
  [ , MESSAGE_FORWARD_SIZE = forwardSize
)

<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 { RC4 | AES | AES RC4 | RC4 AES } ] } 
    ] 
   [ , ] ROLE = { WITNESS | PARTNER | ALL }
)

Arguments

Notes

Les arguments suivants sont spécifiques à ALTER ENDPOINT. Pour obtenir une description des autres arguments, consultez CREATE ENDPOINT (Transact-SQL).

  • ADD WEBMETHOD
    Ajoute un point de terminaison de méthode.

    Important

    Lorsque vous utilisez ADD WEBMETHOD pour exposer des méthodes, vous devez vérifier qu'il n'y a pas de chevauchement de noms si plusieurs bases de données SQL Server sont desservies par le même point de terminaison HTTP. Pour éviter ce problème, pensez à ajouter l'URL de votre nom de domaine inscrit dans le chemin d'accès de l'espace de noms.

  • ALTER WEBMETHOD
    Modifie la définition d'un point de terminaison de méthode existant.

  • AS { TCP | HTTP }
    Vous ne pouvez pas modifier le protocole de transport avec ALTER ENDPOINT.

  • AUTHORIZATIONlogin
    L'option AUTHORIZATION n'est pas disponible dans ALTER ENDPOINT. La propriété ne peut être assignée que lorsque le point de terminaison est créé.

  • DROP WEBMETHOD
    Supprime un point de terminaison de méthode existant.

  • FOR { SOAP | TSQL | SERVICE_BROKER | DATABASE_MIRRORING }
    Vous ne pouvez pas modifier le type de charge utile avec ALTER ENDPOINT.

Notes

Lorsque vous utilisez ALTER ENDPOINT, spécifiez uniquement les paramètres que vous souhaitez mettre à jour. Toutes les propriétés d'un point de terminaison existant restent inchangées tant que vous ne les modifiez pas explicitement.

Il n'est pas possible d'exécuter d'instructions ENDPOINT DDL à l'intérieur d'une transaction utilisateur.

Pour obtenir des informations sur le choix d'un algorithme de chiffrement à utiliser avec un point de terminaison, consultez Choix d'un algorithme de chiffrement.

Notes

RC4 est un algorithme relativement faible, et AES est un algorithme relativement fort. Toutefois, AES est considérablement plus lent que RC4. Si vous considérez que la sécurité est une priorité plus importante que la vitesse, nous vous recommandons d'utiliser AES.

Autorisations

L'utilisateur doit être membre du rôle serveur fixe sysadmin, propriétaire du point de terminaison ou bénéficier de l'autorisation ALTER ANY ENDPOINT.

Pour modifier l'appartenance d'un point de terminaison existant, vous devez utiliser l'instruction ALTER AUTHORIZATION. Pour plus d'informations, consultez ALTER AUTHORIZATION (Transact-SQL).

Pour plus d'informations, consultez GRANT – octroi d'autorisations de point de terminaison (Transact-SQL).

Exemples

A. Ajout d'une nouvelle méthode à un point de terminaison existant

L'exemple suivant ajoute une nouvelle méthode au point de terminaison sql_endpoint créé précédemment.

ALTER ENDPOINT sql_endpoint
FOR SOAP
(
  ADD WEBMETHOD 'SayHello' (name='AdventureWorks2008R2.dbo.SayHello')
);

B. Ajout d'une nouvelle méthode fonctionnant en mode RAW SOAP

L'exemple suivant ajoute une nouvelle méthode Web ReportUsageStats qui fonctionne en mode RAW, spécifiée par FORMAT=NONE, pour fournir les résultats d'une procédure stockée telle quelle aux clients SOAP. Pour plus d'informations, consultez la description de l'option FORMAT dans CREATE ENDPOINT (Transact-SQL).

ALTER ENDPOINT sql_endpoint
FOR SOAP
(
  ADD WEBMETHOD 'ReportUsageStats' (name='myDatabase.dbo.sp_reportserverstats', FORMAT=NONE)
);