Share via


Эти коварные "конечные точки"

????????? ??? ???????????? ? ????????? – ? ?????-?? ?????? ???????????? ?????? ????? login-? ? SQL Server. ??????? ??????? ?????? – ????????? ????, ???????? login-? – ? ???????????? ???????? ?????? “Login failed”.

? ??? ???? ???????, ? ??? ???????, ? ??????? ???? ????…

?????????? ????????? ????????:

1) ?? ???????? ????? ???????? ????? ??? TCP:

CREATE ENDPOINT tcp_endpoint

    STATE = STARTED

    AS TCP(LISTENER_PORT = 7022)

    FOR TSQL()

   GO

      ??? ???? ?? ????????? ????????? ??????????????:

«Creation of a TSQL endpoint will result in the revocation of any 'Public' connect permissions on the 'TSQL Default TCP' endpoint. If 'Public' access is desired on this endpoint, reapply this permission using 'GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [public]'.»

?????? ????? ??????? ?????????, ??? ??? ?????????????? ???????? ??? ???????? J

2) ????? ?????-?? ????? ?? ???????? ??????? ????????? ???????? ?????:

DROP ENDPOINT tcp_endpoint

GO

? – ???????, ??????? – ? ??? ?????????? ???????? ? ?????????????? ????????????.

??? ?????????…

?? ?????????, ? SQL Server ?????????? ???????? ????? ??? ???? ??????????:

????????

??? ???????? ?????

Shared memory

TSQL LocalMachine

Named pipes

TSQL Named Pipes

TCP/IP

TSQL Default TCP

VIA

TSQL Default VIA

DAC

Dedicated Admin Connection

HTTP

HyperText Transport Protocol

?? ????????? ??, ????????? ???? public (??? ?????? ??????????? ???? ????) ????? ????? ???????????? ????? ??? ???????? ?????. ?.?., ???? ???????????? ???????? ??????????? ? SQL Server, ????????, ???????? TCP\IP, ?? ????? ??????????? ????? ???????? ????? [TSQL Default TCP] ? ?????? ????? ??????????????? ?????. ??? ? ??? ???????, ?? ????????? ?? ?? ?????, ?.?. ??????????? ????????? ???? public, ???????, ? ???? ???????, ????? ????? ??????????? ????? ????????? ???????? ?????.

????? ?? ???????? ????? ???????? ????? ??? TCP ?????????, ????? public ?? ????????? ???????? ????? ??????????, ??, ????? ?? ??? ????? ????? ????????, ??? ?? ???????????? (? ???, ??????????, ? ??????? ??????????????, ??????????? ????). ????? ???????, ????????? ???? public ?? ????? ?????? ???? ???????????, ????????? ???????? TCP\IP.

??? ??????????…

Errorlog ????? ????????? ?????? «Login failed» ?? ???????? 11 ??? 12. ????????:

2009-05-22 18:33:25.78 Logon Error: 18456, Severity: 14, State: 12.

2009-05-22 18:33:25.78 Logon Login failed for user 'lgn_valid'. Reason: Login-based server access validation failed with an infrastructure error. Check for previous errors. [CLIENT: ...]

????????? ?????? ?????????? ?????? ???????? ?????, ????? ??????????? ????? ??????? ???? public:

Select sp.permission_name, sp.state_desc, ep.name

from sys.server_permissions sp join sys.endpoints ep

      on sp.major_id = ep.endpoint_id

where sp.grantee_principal_id = 2 and sp.class = 105

GO

? ????? ??????? ????????? ????? ?????:

CONNECT GRANT TSQL Local Machine

CONNECT GRANT TSQL Named Pipes

CONNECT GRANT TSQL Default VIA

??? ?????, ???????? TCP ??????????? ? ??????.

??? ?????????…

????? ??????? ????? ??????????? ????? ?????? ???????? ????? ????????? ???? public:

GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to public

GO