107 lines
3.2 KiB
Transact-SQL
107 lines
3.2 KiB
Transact-SQL
/*
|
|
COMMENT: Stellt den Demo-Zertifikatspfad für DE-Test / ct-ZADBService sicher.
|
|
Kann allein gegen eine bestehende EsbZertifikatManager-DB laufen
|
|
(ohne Drop/Create). EnvironmentCode muss TEST sein (appsettings).
|
|
*/
|
|
USE [EsbZertifikatManager];
|
|
GO
|
|
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
|
|
DECLARE @SonicContainerId [int];
|
|
DECLARE @TargetDirectory [nvarchar](500) =
|
|
N'\\dekun-painwbdet\e$\proalpha-inwb\test\Containers\proalpha-test.ct-ZADBService\certs';
|
|
DECLARE @TargetFileName [nvarchar](260) = N'server.p12';
|
|
|
|
SELECT @SonicContainerId = container.[SonicContainerId]
|
|
FROM [dbo].[SonicContainer] AS container
|
|
INNER JOIN [dbo].[SonicConnection] AS connection
|
|
ON connection.[SonicConnectionId] = container.[SonicConnectionId]
|
|
INNER JOIN [dbo].[Environment] AS environment
|
|
ON environment.[EnvironmentId] = connection.[EnvironmentId]
|
|
WHERE environment.[EnvironmentCode] = N'TEST'
|
|
AND connection.[ConnectionName] = N'DE-Test'
|
|
AND container.[ContainerName] = N'ct-ZADBService';
|
|
|
|
IF @SonicContainerId IS NULL
|
|
BEGIN
|
|
THROW 50010,
|
|
N'Demo-Pfad: Container ct-ZADBService / DE-Test / TEST nicht gefunden. Zuerst 03_Seed.sql ausführen.',
|
|
1;
|
|
END;
|
|
|
|
/* Alte Platzhalter am gleichen Container auf Demo-Pfad umbiegen */
|
|
UPDATE [dbo].[CertificateTarget]
|
|
SET
|
|
[TargetDirectory] = @TargetDirectory,
|
|
[TargetFileName] = @TargetFileName,
|
|
[BackupEnabled] = 1,
|
|
[BackupDirectoryName] = N'Backup',
|
|
[IsActive] = 1,
|
|
[ModifiedDateTime] = SYSUTCDATETIME(),
|
|
[ModifiedBy] = SUSER_SNAME()
|
|
WHERE [SonicContainerId] = @SonicContainerId
|
|
AND
|
|
(
|
|
[TargetFileName] IN (N'server.crt', N'server.p12')
|
|
OR [TargetDirectory] LIKE N'C:\ESB\Certificates%'
|
|
);
|
|
|
|
IF NOT EXISTS
|
|
(
|
|
SELECT 1
|
|
FROM [dbo].[CertificateTarget] AS target
|
|
WHERE target.[SonicContainerId] = @SonicContainerId
|
|
AND target.[TargetDirectory] = @TargetDirectory
|
|
AND target.[TargetFileName] = @TargetFileName
|
|
AND target.[IsActive] = 1
|
|
)
|
|
BEGIN
|
|
INSERT INTO [dbo].[CertificateTarget]
|
|
(
|
|
[SonicContainerId],
|
|
[TargetDirectory],
|
|
[TargetFileName],
|
|
[BackupEnabled],
|
|
[BackupDirectoryName],
|
|
[IsActive],
|
|
[CreationDateTime],
|
|
[CreatedBy]
|
|
)
|
|
VALUES
|
|
(
|
|
@SonicContainerId,
|
|
@TargetDirectory,
|
|
@TargetFileName,
|
|
1,
|
|
N'Backup',
|
|
1,
|
|
SYSUTCDATETIME(),
|
|
SUSER_SNAME()
|
|
);
|
|
END;
|
|
|
|
SELECT
|
|
target.[CertificateTargetId],
|
|
company.[CompanyCode],
|
|
environment.[EnvironmentCode],
|
|
connection.[ConnectionName],
|
|
container.[ContainerName],
|
|
target.[TargetDirectory],
|
|
target.[TargetFileName],
|
|
target.[IsActive]
|
|
FROM [dbo].[CertificateTarget] AS target
|
|
INNER JOIN [dbo].[SonicContainer] AS container
|
|
ON container.[SonicContainerId] = target.[SonicContainerId]
|
|
INNER JOIN [dbo].[SonicConnection] AS connection
|
|
ON connection.[SonicConnectionId] = container.[SonicConnectionId]
|
|
INNER JOIN [dbo].[Environment] AS environment
|
|
ON environment.[EnvironmentId] = connection.[EnvironmentId]
|
|
INNER JOIN [dbo].[Company] AS company
|
|
ON company.[CompanyId] = container.[CompanyId]
|
|
WHERE container.[SonicContainerId] = @SonicContainerId;
|
|
|
|
PRINT N'Demo-Pfad ist aktiv: \\dekun-painwbdet\e$\...\certs\server.p12';
|
|
GO
|