Desactivar CHECK_POLICY por defecto


8

Nos mudamos de SQL Server 2000 a SQL Server 2005. El software del cliente, que no puedo cambiar, crea un usuario sin opción.

CHECK_POLICY = OFF;

Después de crear un usuario, tengo que ejecutar el comando

ALTER LOGIN username WITH CHECK_POLICY = OFF;

Deshabilitar la política, como se recomienda, no puedo.

¿Es posible deshabilitar el valor predeterminado CHECK_POLICYque sin su CREATE LOGINusuario creó con CHECK_POLICY = OFF?


2
¿Por qué pasa de una versión antigua a otra versión antigua? Teníamos 3 nuevas versiones desde su "nueva" versión.
— Marian

2
Supongo que la respuesta a esa pregunta se debe a que el proveedor de software solo admite hasta SQL 2005. Es muy común.
— mrdenny

Para mrdenny: el vendedor de software no considera que esto sea un problema.
— Arty

Respuestas:


6

Lo haces con un disparador DDL que captura el evento DDL para CREATE LOGIN

CREATE TRIGGER PolicyStuff
ON ALL SERVER
FOR CREATE_LOGIN
AS
SET NOCOUNT ON;
IF EVENTDATA().value('(/EVENT_INSTANCE/LoginType)[1]','nvarchar(100)') = 'SQL Login'
BEGIN
    DECLARE @sql nvarchar(1000) = 'ALTER LOGIN ' + QUOTENAME(EVENTDATA().value('(/EVENT_INSTANCE/ObjectName)[1]','nvarchar(max)')) + ' WITH CHECK_POLICY = OFF;';
    EXEC(@sql);
END
GO

CREATE LOGIN foo WITH PASSWORD='C-mplex654Password', CHECK_POLICY=ON;
GO
SELECT SL.name, SL.is_policy_checked FROM sys.sql_logins SL WHERE SL.name = 'foo'
GO
DROP LOGIN foo
GO

¿Los activadores DDL estaban disponibles en SQL 2005?
— mrdenny


Frio. Ha pasado un tiempo desde que tuve que hacer algo emocionante con SQL 2005. No podría recordarlo. Hubieran sido mi sugerencia también.
— mrdenny

No estoy en ninguna parte de la documentación, no encuentro ninguna mención de lo que CHECK_POLICY no está desactivado por defecto. Pero parece que así es.
— Arty

@Arty: también miré por todas partes. Incluyendo varios blogs de MS SQL Server. No se puede establecer globalmente a partir de lo que leo.
— Gbn

0

estos no funcionarán si ha creado su inicio de sesión con MUST_CHANGE y el usuario no cambió la contraseña predeterminada; de lo contrario, funciona bien ...

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.