본문 바로가기

MS-SQL/Query45

링크드서버 사용자계정 맵핑 연결 방법 우선 원격연결할 서버를 로컬서버에 별칭으로 등록해줍니다. -- 링크드서버등록 SP_ADDLINKEDSERVER 'TEST_DB_LINKED','SQL SERVER' -- 위에등록한서버삭제 SP_DROPSERVER 'TEST_DB_LINKED' EXEC SP_ADDLINKEDSRVLOGIN @RMTSRVNAME = 'TEST_DB_LINKED', @USESELF = 'FALSE', --로컬DB 서버에존재하는계정( 현재는윈도우인증의계정) @LOCALLOGIN = 'TELEFYOUSERVER\TEST_ADMIN', -- 원격서버에존재하는계정( 맵핑연결에사용할계정입니다.) @RMTUSER='admin_linked(계정명)', @RMTPASSWORD = '비밀번호' -- 위등록한계정을삭제하는경우실행합니다. EXE.. 2013. 5. 21.
최소한의 권한으로 LOGON TRIGGER 구현 실제 LOGON 트리거를 적용하려고 보니 로그가 남는 테이블에 대한 Write의 권한이 있어야 했다 번거롭게 테이블에 Write 권한을 주는거보다 프로시저를 작성하여 해당 프로시저에게만 실행권한을 주어 접근권한을 최소화 하였다. 아래는 작성한 예제입니다. /****** 개체: DdlTrigger [TRG_LOGON_DBLOGIN] 스크립트날짜: 05/20/2013 18:56:34 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER TRIGGER [TRG_LOGON_DBLOGIN] ON ALL SERVER FOR LOGON AS BEGIN DECLARE @EVENTLOG XML SET @EVENTLOG = EVENTDATA() EXEC TEST_.. 2013. 5. 21.
SQL DB Login 접속 실패 로그 확인 데이터베이스 서버 속성 - 보안 - 로그인 감사 부분에 실패한 로그인만 체크가 되어있는지 확인합니다. SP_READERRORLOG 시스템 프로시저를 실행해 실패한 로그인의 정보를 상세하게 확인할 수 있다. 2013. 5. 10.
로그인시 접속자 로그가 남게 Trigger 생성 - 로그를 저장할 특정 테이블이다. CREATE TABLE DBO.DBLOGIN_LOG_TBL ( LOGIN_NAME NVARCHAR(100) NULL, LOGIN_IP_ADDRESS NVARCHAR(100) NULL, LOGIN_AUTH NVARCHAR(30) NULL, LOGIN_DATE NVARCHAR(10) NOT NULL, LOGIN_TIME NVARCHAR(8) NOT NULL, ) DELETE DBLOGIN_LOG_TBL CREATE INDEX IX_DBLOGIN_LOG_TBL ON DBLOGIN_LOG_TBL (LOGIN_DATE ASC) --트리거생성 CREATE TRIGGER TRG_LOGON_DBLOGIN ON ALL SERVER FOR LOGON AS BEGIN DECLARE @EV.. 2013. 5. 9.