Учёт DEPO, права в msdb: пользователь bj, оставшийся от прежнего логина, перепривязывается к нынешнему (иначе bj входит как guest и не видит джобу)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -779,6 +779,8 @@ ELSE
|
||||
GO
|
||||
|
||||
-- Логину bj — чтение списка джоб и их истории: bj проверяет, что джоба запускается по расписанию.
|
||||
-- (пользователь, оставшийся от прежнего логина с тем же именем, перепривязывается к нынешнему)
|
||||
IF EXISTS (SELECT 1 FROM sys.database_principals WHERE name = N'%[5]s' AND type = 'S' AND sid <> SUSER_SID(N'%[5]s')) ALTER USER [%[5]s] WITH LOGIN = [%[5]s];
|
||||
IF USER_ID(N'%[5]s') IS NULL CREATE USER [%[5]s] FOR LOGIN [%[5]s];
|
||||
IF IS_ROLEMEMBER(N'SQLAgentReaderRole', N'%[5]s') = 0 ALTER ROLE SQLAgentReaderRole ADD MEMBER [%[5]s];
|
||||
GO
|
||||
@@ -921,7 +923,7 @@ func humanEvery(d time.Duration) string {
|
||||
|
||||
// depoJobReaderGrant — право логину bj видеть джобы и их историю (для проверки джобы из bj).
|
||||
func depoJobReaderGrant(f FancyMSSQLSettings) string {
|
||||
return fmt.Sprintf("USE msdb;\nIF USER_ID(N'%[1]s') IS NULL CREATE USER [%[1]s] FOR LOGIN [%[1]s];\nIF IS_ROLEMEMBER(N'SQLAgentReaderRole', N'%[1]s') = 0 ALTER ROLE SQLAgentReaderRole ADD MEMBER [%[1]s];", f.User)
|
||||
return fmt.Sprintf("USE msdb;\nIF EXISTS (SELECT 1 FROM sys.database_principals WHERE name = N'%[1]s' AND type = 'S' AND sid <> SUSER_SID(N'%[1]s')) ALTER USER [%[1]s] WITH LOGIN = [%[1]s];\nIF USER_ID(N'%[1]s') IS NULL CREATE USER [%[1]s] FOR LOGIN [%[1]s];\nIF IS_ROLEMEMBER(N'SQLAgentReaderRole', N'%[1]s') = 0 ALTER ROLE SQLAgentReaderRole ADD MEMBER [%[1]s];", f.User)
|
||||
}
|
||||
|
||||
// depoProcCheck — работает ли сама обработка событий (процедуры FTV_M2M_*): таблицы, пользователь
|
||||
|
||||
Reference in New Issue
Block a user