feat: integrate AD domain account impersonation for SQL Windows Authentication in SqlService, SettingsView, and SqlDatabaseView
This commit is contained in:
@@ -1,5 +1,19 @@
|
||||
# Enterprise Admin Studio - 변경 이력 (CHANGELOG.md)
|
||||
|
||||
## [v1.6.0] - 2026-10-21
|
||||
### Added
|
||||
- **MS SQL Server AD 도메인 계정 기반 Windows 통합 인증 위장(Impersonation) 엔진 탑재**:
|
||||
- `Modules/SqlService.ps1`: Win32 `advapi32.dll`의 `LogonUser` API(Type 9 `LOGON32_LOGON_NEW_CREDENTIALS`, `/netonly`)와 `WindowsIdentity.RunImpersonated`를 결합하여, 사용자가 입력한 AD 도메인 ID/PW를 Windows 보안 토큰으로 위장한 뒤 SQL Server에 `Integrated Security=True`로 인증하는 엔진 구현
|
||||
- `Test-SqlConnection`: SQL Server가 실제로 누구로 인증했는지 `SELECT SUSER_SNAME()`을 질의하여 반환 메시지에 실시간 출력
|
||||
- `Get-SqlDatabases`, `Invoke-SqlBackupAction`, `Invoke-SqlQuerySnippet`: 모든 SQL 작업이 설정된 인증 컨텍스트(`Invoke-WithSqlAuthContext`) 하에서 안전하게 실행되도록 통합
|
||||
- **환경설정 UI (`Views/SettingsView.xaml`) 및 SQL 관리 화면 (`Views/SqlDatabaseView.xaml`) 연동**:
|
||||
- 인증 방식 선택 옵션 3종 확장:
|
||||
1) 현재 PC Windows 통합 인증 (Current Session)
|
||||
2) AD 도메인 계정 위장 Windows 인증 (AD LogonUser /netonly)
|
||||
3) SQL Server 자체 계정 인증 (User ID / Password)
|
||||
- `SettingsView.xaml`: `TxtSqlDomain` (AD 도메인 입력칸), `LblSqlDomain`, 동적 설명 힌트(`TxtSqlAuthHint`) 및 선택 변경에 따른 입력 필드 실시간 활성화/비활성화 처리 연동
|
||||
- `config.json`: `MsSql.Domain` 필드 추가 및 영속적 저장 지원
|
||||
|
||||
## [v1.5.0] - 2026-10-20
|
||||
### Added
|
||||
- **다중 도메인 컨트롤러(6대 DC) 환경 NetApp 활성 DC 감지 및 복제 지연(Replication Lag) 방지 전략 탑재**:
|
||||
|
||||
Reference in New Issue
Block a user