Desativando CHECK_POLICY por padrão

8

Passamos do SQL Server 2000 para o SQL Server 2005. O software cliente, que não posso alterar, cria um usuário sem opção

CHECK_POLICY = OFF;

Depois de criar um usuário, eu tenho que executar o comando

ALTER LOGIN username WITH CHECK_POLICY = OFF;

Desative a política, conforme recomendado, não posso.

É possível desativar o padrão CHECK_POLICYque sem o CREATE LOGINusuário criado CHECK_POLICY = OFF?

Arty
fonte
2
Por que você atualiza de uma versão antiga para outra versão antiga? Tivemos 3 novas versões desde a sua "nova" versão.
Marian
2
Eu diria que a resposta para essa pergunta é porque o fornecedor do software suporta apenas o SQL 2005. É muito comum.
Mrdenny
Para mrdenny: O fornecedor do software não considera isso um problema.
Arty

Respostas:

6

Você faz isso com um DDL Trigger que captura o 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
gbn
fonte
Os gatilhos DDL estavam disponíveis no SQL 2005?
Mrdenny
Legal. Já faz um tempo desde que tive que fazer algo empolgante com o SQL 2005. Não me lembro pela vida. Eles teriam sido minha sugestão também.
Mrdenny
Não estou em nenhum lugar da documentação e não encontro nenhuma menção do que CHECK_POLICY não está desativado por padrão. Mas parece que é assim.
Arty
@Arty: Eu olhei por toda parte também. Incluindo vários blogs do MS SQL Server. Não pode ser definido globalmente pelo que li.
gbn 30/05
0

isso não funcionará se você criou seu login com MUST_CHANGE e o usuário não alterou a senha padrão, caso contrário, está funcionando bem ...


fonte