Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему sp_password может запускать только sysadmin? / 7 сообщений из 7, страница 1 из 1
31.10.2002, 13:36:28
    #32063578
mishgan2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
Вроде бы securityadmin должен этим заниматься.
Есть ли у кого мысли, почему M$ сделала именно так? Может быть тут какие-то организационные вопросы затрагивается?
ЗЫ: то что любой пользователь может менять пароли сам себе я в курсе.
...
Рейтинг: 0 / 0
31.10.2002, 13:46:28
    #32063583
Белов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
Все он может.
Пользователь, входящий в группу Security Administrator
может выполнять указанную хранимую процедуру
...
Рейтинг: 0 / 0
31.10.2002, 14:12:48
    #32063599
mishgan2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
Странно, у меня не выполняет...
В тексте ХР есть такое:
--
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
create procedure sp_password
    @old sysname = NULL,         -- the old (current) password
 
    @new sysname,                -- the new password
 
    @loginame sysname = NULL     -- user to change password on
 
as
     -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES --
 
	set nocount on
    declare @self int
    select @self = CASE WHEN @loginame is null THEN  1  ELSE  0  END

     -- CHECK PERMISSIONS --
 
	IF (not is_srvrolemember('sysadmin') =  1 )
        AND not @self =  1 
	begin
	   raiserror( 15210 ,- 1 ,- 1 )
	   return ( 1 )
	end

---
select @@VERSION возвращает:
Microsoft SQL Server 7.00 - 7.00.961 (Intel X86)
Oct 24 2000 18:39:12
Copyright (c) 1988-1998 Microsoft Corporation
Desktop Edition on Windows NT 4.0 (Build 1381: Service Pack 6)
...
Рейтинг: 0 / 0
31.10.2002, 14:42:16
    #32063627
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
А вот что есть на Microsoft SQL Server 2000 - 8.00.679 (Intel X86):


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
create procedure sp_password
    @old sysname = NULL,         -- the old (current) password
 
    @new sysname,                -- the new password
 
    @loginame sysname = NULL     -- user to change password on
 
as
     -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES --
 
	set nocount on
    declare @self int
    select @self = CASE WHEN @loginame is null THEN  1  ELSE  2  END

     -- RESOLVE LOGIN NAME
 
    if @loginame is null
        select @loginame = suser_sname()

     -- CHECK PERMISSIONS (SecurityAdmin per Richard Waymire) --
 
	IF (not is_srvrolemember('securityadmin') =  1 )
        AND not @self =  1 
	begin
	   dbcc auditevent ( 107 , @self,  0 , @loginame, NULL, NULL, NULL)
	   raiserror( 15210 ,- 1 ,- 1 )
	   return ( 1 )
	end
	ELSE
	begin
	   dbcc auditevent ( 107 , @self,  1 , @loginame, NULL, NULL, NULL)
	end
...


	 -- IF non-SYSADMIN ATTEMPTING CHANGE TO SYSADMIN, REQUIRE PASSWORD (218078) --
 
	if (@self <>  1  AND is_srvrolemember('sysadmin') =  0  AND exists
			(SELECT * FROM master.dbo.syslogins WHERE loginname = @loginame and isntname =  0 
				AND sysadmin =  1 ) )
		SELECT @self =  1 

...
...
Рейтинг: 0 / 0
31.10.2002, 14:48:35
    #32063633
Белов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
А что сервер возвращает при попытке выполнить данную процедуру
...
Рейтинг: 0 / 0
31.10.2002, 15:33:48
    #32063677
mishgan2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
>>А что сервер возвращает при попытке выполнить >>данную процедуру
Server: Msg 15210, Level 16, State 1, Procedure sp_password, Line 15
Only members of the sysadmin role can use the loginame option. The password was not changed.
...
Рейтинг: 0 / 0
31.10.2002, 15:40:25
    #32063681
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему sp_password может запускать только sysadmin?
Не понимаю, о чем тут дискуссия. У mishgan2000'а код процедуры говорит сам за себя. Осталось только проверить, что на семерке код sp_password действительно такой.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему sp_password может запускать только sysadmin? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]