Отчет об отдельных интервалах истечения срока действия пароля в Sybase ASE 12.5
-
18-09-2019 - |
Вопрос
Я хочу запустить отчет, чтобы убедиться, что срок действия пароля каждого пользователя истекает каждые 30 дней, но интервал истечения срока действия, похоже, не сохраняется в syslogins?
Решение
вы можете получить отчет с помощью следующей процедуры:
use sybsystemprocs
go
----------------------------------------------------------------------------
print 'sp__helpexpire'
----------------------------------------------------------------------------
if exists (select 1 from sysobjects where type = "P" and name = "sp__helpexpire")
drop proc sp__helpexpire
go
create procedure sp__helpexpire
as
begin
set nocount on
declare @swexpire int
select @swexpire=value from master.dbo.sysconfigures
where name = 'systemwide password expiration'
print "Serverwide password expire: %1!" ,@swexpire
print ""
print "Logins:"
print "=============================================================="
select l.name login , case a.int_value
when null then @swexpire
else a.int_value end "expire in days"
from master.dbo.syslogins l , master.dbo.sysattributes a
where l.suid *= a.object
and a.object_type='PS'
and a.attribute=0
and object_cinfo='login'
print ""
print "Roles:"
print "=============================================================="
select r.name "role name", case a.int_value
when null then @swexpire
else a.int_value end "expire in days"
from master.dbo.syssrvroles r , master.dbo.sysattributes a
where r.srid *= a.object
and a.object_type='PS'
and a.attribute=0
and object_cinfo='role'
end
go
всегда полезно проверять исходный код тех системных процедур (хранящихся в базе данных sybsystemprocs), которые работают с записями, которые вы ищете (в данном случае это sp_addlogin, sp_modifylogin)
Другие советы
Вы можете использовать sp_configure для установки даты истечения срока действия пароля всех пользователей
sp_configure "systemwide password expiration", 30
go
срок действия паролей всех пользователей истечет через 30 дней.Однако не уверен, что это значение может быть прочитано для отчета.Значение по умолчанию равно 0.
попробуй
exec sp_displaylogin исполнительный sp_displaylogin
чтобы получить завивку для настроек для отдельного пользователя, войдите в систему как этот пользователь.