CHECK_POLICY standardmäßig deaktivieren

8

Wir sind von SQL Server 2000 zu SQL Server 2005 gewechselt. Die Client-Software, die ich nicht ändern kann, erstellt einen Benutzer ohne Option

CHECK_POLICY = OFF;

Nach dem Erstellen eines Benutzers muss ich den Befehl ausführen

ALTER LOGIN username WITH CHECK_POLICY = OFF;

Deaktivieren Sie die Richtlinie, wie empfohlen, ich kann nicht.

Ist es möglich, die Standardeinstellung zu deaktivieren, die CHECK_POLICYohne ihren CREATE LOGINBenutzer erstellt wurde CHECK_POLICY = OFF?

Arty
quelle
2
Warum aktualisieren Sie von einer alten Version auf eine andere alte Version? Wir hatten 3 neue Versionen seit Ihrer "neuen" Version.
Marian
2
Ich würde annehmen, dass die Antwort auf diese Frage darin besteht, dass der Softwareanbieter nur bis zu SQL 2005 unterstützt. Dies ist sehr häufig.
Mrdenny
An mrdenny: Der Softwareanbieter betrachtet dies nicht als Problem.
Arty

Antworten:

6

Sie tun dies mit einem DDL-Trigger, der das DDL-Ereignis für erfasst 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
quelle
Waren DDL-Trigger in SQL 2005 verfügbar?
Mrdenny
Cool. Es ist schon eine Weile her, dass ich mit SQL 2005 etwas Aufregendes machen musste. Ich konnte mich für mein ganzes Leben nicht erinnern. Sie wären auch mein Vorschlag gewesen.
Mrdenny
Ich bin nirgends in der Dokumentation zu finden, wo CHECK_POLICY nicht standardmäßig deaktiviert ist. Aber es scheint so wie es ist.
Arty
@Arty: Ich habe auch überall nachgesehen. Einschließlich verschiedener MS SQL Server-Blogs. Es kann nicht global von dem eingestellt werden, was ich gelesen habe.
Gbn
0

Diese funktionieren nicht, wenn Sie Ihr Login mit MUST_CHANGE erstellt haben und der Benutzer das Standardkennwort nicht geändert hat, sonst funktioniert es einwandfrei ...


quelle