[성현모] VPKI_DataDB DB프로젝트 추가, DB스크립트 추가
This commit is contained in:
20
DBPatch/DBPatch_VPKI_DataDB_Create.bat
Normal file
20
DBPatch/DBPatch_VPKI_DataDB_Create.bat
Normal file
@ -0,0 +1,20 @@
|
||||
@echo off
|
||||
CD ./sqlScripts/
|
||||
|
||||
::log
|
||||
IF NOT EXIST .\logs mkdir logs
|
||||
|
||||
::DB 정의 스키마
|
||||
SET Schema=SystemX.DB.VPKI_DataDB
|
||||
|
||||
::연결정보
|
||||
SET ServerIP=127.0.0.1
|
||||
SET ServerPort=1433
|
||||
SET UserID=SystemX
|
||||
SET Passwd=X
|
||||
SET DBName=VPKI_DataDB
|
||||
|
||||
::Default DB
|
||||
@echo off
|
||||
CALL _CreateDB.bat %Schema% %ServerIP% %ServerPort% %UserID% %Passwd% %DBName%
|
||||
CALL _CreateDB.bat %Schema% %ServerIP% %ServerPort% %UserID% %Passwd% %DBName%_DEV
|
||||
23
DBPatch/DBPatch_VPKI_DataDB_Update.bat
Normal file
23
DBPatch/DBPatch_VPKI_DataDB_Update.bat
Normal file
@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
CD .\sqlScripts\
|
||||
|
||||
::log
|
||||
IF NOT EXIST .\logs mkdir logs
|
||||
|
||||
::DB 정의 스키마
|
||||
SET Schema=SystemX.DB.VPKI_DataDB
|
||||
|
||||
::연결정보
|
||||
SET ServerIP=127.0.0.1
|
||||
SET ServerPort=1433
|
||||
SET UserID=SystemX
|
||||
SET Passwd=X
|
||||
SET DBName=VPKI_DataDB
|
||||
|
||||
@echo off
|
||||
::generate update script
|
||||
CALL _UpdateScriptGenerate.bat %Schema% %ServerIP% %ServerPort% %UserID% %Passwd% %DBName%
|
||||
|
||||
::Default DB
|
||||
CALL _UpdateDB.bat %Schema% %ServerIP% %ServerPort% %UserID% %Passwd% %DBName%
|
||||
CALL _UpdateDB.bat %Schema% %ServerIP% %ServerPort% %UserID% %Passwd% %DBName%_DEV
|
||||
4
DBPatch/Tool_VPKI_DataDB_Scaffold.bat
Normal file
4
DBPatch/Tool_VPKI_DataDB_Scaffold.bat
Normal file
@ -0,0 +1,4 @@
|
||||
::AccountDB
|
||||
cd ../Projects/SystemX.Core/SystemX.Core.DB
|
||||
|
||||
dotnet ef dbcontext scaffold "server=127.0.0.1; user id=SystemX; password=X; database=VPKI_DataDB; TrustServerCertificate=true;" Microsoft.EntityFrameworkCore.SqlServer --namespace SystemX.Core.DB --context-dir VPKI_DataDB\Context --output-dir VPKI_DataDB\Tables -f --use-database-names --no-onconfiguring
|
||||
348
DBPatch/sqlScripts/SystemX.DB.VPKI_DataDB_Create.sql
Normal file
348
DBPatch/sqlScripts/SystemX.DB.VPKI_DataDB_Create.sql
Normal file
@ -0,0 +1,348 @@
|
||||
/*
|
||||
SystemX.DB.VPKI_DataDB의 배포 스크립트
|
||||
|
||||
이 코드는 도구를 사용하여 생성되었습니다.
|
||||
파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
||||
변경 내용이 손실됩니다.
|
||||
*/
|
||||
|
||||
GO
|
||||
SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON;
|
||||
|
||||
SET NUMERIC_ROUNDABORT OFF;
|
||||
|
||||
|
||||
GO
|
||||
/*
|
||||
:setvar DatabaseName "SystemX.DB.VPKI_DataDB"
|
||||
:setvar DefaultFilePrefix "SystemX.DB.VPKI_DataDB"
|
||||
:setvar DefaultDataPath ""
|
||||
:setvar DefaultLogPath ""
|
||||
*/
|
||||
|
||||
GO
|
||||
:on error exit
|
||||
GO
|
||||
/*
|
||||
SQLCMD 모드가 지원되지 않으면 SQLCMD 모드를 검색하고 스크립트를 실행하지 않습니다.
|
||||
SQLCMD 모드를 설정한 후에 이 스크립트를 다시 사용하려면 다음을 실행합니다.
|
||||
SET NOEXEC OFF;
|
||||
*/
|
||||
:setvar __IsSqlCmdEnabled "True"
|
||||
GO
|
||||
IF N'$(__IsSqlCmdEnabled)' NOT LIKE N'True'
|
||||
BEGIN
|
||||
PRINT N'이 스크립트를 실행하려면 SQLCMD 모드를 사용하도록 설정해야 합니다.';
|
||||
SET NOEXEC ON;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
USE [master];
|
||||
|
||||
|
||||
GO
|
||||
|
||||
IF (DB_ID(N'$(DatabaseName)') IS NOT NULL)
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
|
||||
DROP DATABASE [$(DatabaseName)];
|
||||
END
|
||||
|
||||
GO
|
||||
PRINT N'$(DatabaseName) 데이터베이스를 만드는 중...'
|
||||
GO
|
||||
CREATE DATABASE [$(DatabaseName)] COLLATE Korean_Wansung_CI_AS
|
||||
GO
|
||||
USE [$(DatabaseName)];
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET ANSI_NULLS ON,
|
||||
ANSI_PADDING ON,
|
||||
ANSI_WARNINGS ON,
|
||||
ARITHABORT ON,
|
||||
CONCAT_NULL_YIELDS_NULL ON,
|
||||
NUMERIC_ROUNDABORT OFF,
|
||||
QUOTED_IDENTIFIER ON,
|
||||
ANSI_NULL_DEFAULT ON,
|
||||
CURSOR_DEFAULT LOCAL,
|
||||
RECOVERY FULL,
|
||||
CURSOR_CLOSE_ON_COMMIT OFF,
|
||||
AUTO_CREATE_STATISTICS ON,
|
||||
AUTO_SHRINK OFF,
|
||||
AUTO_UPDATE_STATISTICS ON,
|
||||
RECURSIVE_TRIGGERS OFF
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET ALLOW_SNAPSHOT_ISOLATION OFF;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET READ_COMMITTED_SNAPSHOT OFF
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET AUTO_UPDATE_STATISTICS_ASYNC OFF,
|
||||
PAGE_VERIFY NONE,
|
||||
DATE_CORRELATION_OPTIMIZATION OFF,
|
||||
DISABLE_BROKER,
|
||||
PARAMETERIZATION SIMPLE,
|
||||
SUPPLEMENTAL_LOGGING OFF
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF IS_SRVROLEMEMBER(N'sysadmin') = 1
|
||||
BEGIN
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
EXECUTE sp_executesql N'ALTER DATABASE [$(DatabaseName)]
|
||||
SET TRUSTWORTHY OFF,
|
||||
DB_CHAINING OFF
|
||||
WITH ROLLBACK IMMEDIATE';
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
PRINT N'데이터베이스 설정을 수정할 수 없습니다. 이러한 설정을 적용하려면 SysAdmin이어야 합니다.';
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF IS_SRVROLEMEMBER(N'sysadmin') = 1
|
||||
BEGIN
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
EXECUTE sp_executesql N'ALTER DATABASE [$(DatabaseName)]
|
||||
SET HONOR_BROKER_PRIORITY OFF
|
||||
WITH ROLLBACK IMMEDIATE';
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
PRINT N'데이터베이스 설정을 수정할 수 없습니다. 이러한 설정을 적용하려면 SysAdmin이어야 합니다.';
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET TARGET_RECOVERY_TIME = 0 SECONDS
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET FILESTREAM(NON_TRANSACTED_ACCESS = OFF),
|
||||
CONTAINMENT = NONE
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET AUTO_CREATE_STATISTICS ON(INCREMENTAL = OFF),
|
||||
MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = OFF,
|
||||
DELAYED_DURABILITY = DISABLED
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET QUERY_STORE (QUERY_CAPTURE_MODE = ALL, DATA_FLUSH_INTERVAL_SECONDS = 900, INTERVAL_LENGTH_MINUTES = 60, MAX_PLANS_PER_QUERY = 200, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 367), MAX_STORAGE_SIZE_MB = 100)
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET QUERY_STORE = OFF
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 0;
|
||||
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY;
|
||||
ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = OFF;
|
||||
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;
|
||||
ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = ON;
|
||||
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET PARAMETER_SNIFFING = PRIMARY;
|
||||
ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = OFF;
|
||||
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET QUERY_OPTIMIZER_HOTFIXES = PRIMARY;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF EXISTS (SELECT 1
|
||||
FROM [master].[dbo].[sysdatabases]
|
||||
WHERE [name] = N'$(DatabaseName)')
|
||||
BEGIN
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET TEMPORAL_HISTORY_RETENTION ON
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
IF fulltextserviceproperty(N'IsFulltextInstalled') = 1
|
||||
EXECUTE sp_fulltext_database 'enable';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'테이블 [dbo].[tVerifyResult]을(를) 만드는 중...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[tVerifyResult] (
|
||||
[cCuid] BIGINT NOT NULL,
|
||||
[cResult] NCHAR (20) NOT NULL,
|
||||
PRIMARY KEY CLUSTERED ([cCuid] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'테이블 [dbo].[tTbscsr]을(를) 만드는 중...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[tTbscsr] (
|
||||
[cCuid] BIGINT IDENTITY (1, 1) NOT NULL,
|
||||
[cIftid] NVARCHAR (100) NOT NULL,
|
||||
[cMacaddr] NVARCHAR (100) NOT NULL,
|
||||
[cWmi] NVARCHAR (20) NOT NULL,
|
||||
[cIdType] NVARCHAR (10) NOT NULL,
|
||||
[cSupplierId] NVARCHAR (10) NOT NULL,
|
||||
[cDc] NVARCHAR (20) NOT NULL,
|
||||
[cTierCode] NVARCHAR (20) NOT NULL,
|
||||
[cUnitCode] NVARCHAR (20) NOT NULL,
|
||||
[cPublickey] NVARCHAR (1024) NOT NULL,
|
||||
[cCertType] NVARCHAR (20) NOT NULL,
|
||||
[cOriginTbscsr] NVARCHAR (4000) NOT NULL,
|
||||
[cHashedTbscsr] NVARCHAR (1024) NOT NULL,
|
||||
[cPcid] NVARCHAR (50) NOT NULL,
|
||||
[cDn] NVARCHAR (250) NOT NULL,
|
||||
[cDateTime] DATETIME2 (7) NOT NULL,
|
||||
PRIMARY KEY CLUSTERED ([cCuid] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'테이블 [dbo].[tOcsp]을(를) 만드는 중...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[tOcsp] (
|
||||
[cCuid] BIGINT NOT NULL,
|
||||
[cStatus] NVARCHAR (20) NOT NULL,
|
||||
[cVerify] NVARCHAR (20) NOT NULL,
|
||||
[cOcsp] NVARCHAR (MAX) NULL,
|
||||
[cDateTime] DATETIME2 (7) NOT NULL,
|
||||
PRIMARY KEY CLUSTERED ([cCuid] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'테이블 [dbo].[tCertificate]을(를) 만드는 중...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[tCertificate] (
|
||||
[cCuid] BIGINT NOT NULL,
|
||||
[cCsrsignature] NVARCHAR (1024) NOT NULL,
|
||||
[cTierCode] NVARCHAR (20) NOT NULL,
|
||||
[cUnitCode] NVARCHAR (20) NOT NULL,
|
||||
[cVehicleCode] NVARCHAR (20) NOT NULL,
|
||||
[cLocalCode] NVARCHAR (20) NOT NULL,
|
||||
[cBrandCode] NVARCHAR (20) NOT NULL,
|
||||
[cCsr] NVARCHAR (2048) NOT NULL,
|
||||
[cCert] NVARCHAR (2048) NOT NULL,
|
||||
[cMessage] NVARCHAR (250) NOT NULL,
|
||||
[cIssueCount] INT NOT NULL,
|
||||
[cDateTime] DATETIME2 (7) NOT NULL,
|
||||
PRIMARY KEY CLUSTERED ([cCuid] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
DECLARE @VarDecimalSupported AS BIT;
|
||||
|
||||
SELECT @VarDecimalSupported = 0;
|
||||
|
||||
IF ((ServerProperty(N'EngineEdition') = 3)
|
||||
AND (((@@microsoftversion / power(2, 24) = 9)
|
||||
AND (@@microsoftversion & 0xffff >= 3024))
|
||||
OR ((@@microsoftversion / power(2, 24) = 10)
|
||||
AND (@@microsoftversion & 0xffff >= 1600))))
|
||||
SELECT @VarDecimalSupported = 1;
|
||||
|
||||
IF (@VarDecimalSupported > 0)
|
||||
BEGIN
|
||||
EXECUTE sp_db_vardecimal_storage_format N'$(DatabaseName)', 'ON';
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
ALTER DATABASE [$(DatabaseName)]
|
||||
SET MULTI_USER
|
||||
WITH ROLLBACK IMMEDIATE;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'업데이트가 완료되었습니다.';
|
||||
|
||||
|
||||
GO
|
||||
48
DBPatch/sqlScripts/SystemX.DB.VPKI_DataDB_Update.sql
Normal file
48
DBPatch/sqlScripts/SystemX.DB.VPKI_DataDB_Update.sql
Normal file
@ -0,0 +1,48 @@
|
||||
/*
|
||||
VPKI_DataDB의 배포 스크립트
|
||||
|
||||
이 코드는 도구를 사용하여 생성되었습니다.
|
||||
이 파일을 변경하면 잘못된 동작이 발생할 수 있으며 코드가 다시 생성되면
|
||||
이러한 변경 내용이 손실됩니다.
|
||||
*/
|
||||
|
||||
GO
|
||||
SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON;
|
||||
|
||||
SET NUMERIC_ROUNDABORT OFF;
|
||||
|
||||
|
||||
GO
|
||||
/*
|
||||
:setvar DatabaseName "VPKI_DataDB"
|
||||
:setvar DefaultFilePrefix "VPKI_DataDB"
|
||||
:setvar DefaultDataPath "D:\20_MSSQL\DATA\"
|
||||
:setvar DefaultLogPath "D:\20_MSSQL\DATA\"
|
||||
*/
|
||||
|
||||
GO
|
||||
:on error exit
|
||||
GO
|
||||
/*
|
||||
SQLCMD 모드를 검색하고 SQLCMD 모드가 지원되지 않는 경우 스크립트 실행을 사용하지 않도록 설정합니다.
|
||||
SQLCMD 모드를 사용하도록 설정한 후 스크립트를 다시 사용하도록 설정하려면 다음을 실행합니다.
|
||||
NOEXEC를 끕니다.
|
||||
*/
|
||||
:setvar __IsSqlCmdEnabled "True"
|
||||
GO
|
||||
IF N'$(__IsSqlCmdEnabled)' NOT LIKE N'True'
|
||||
BEGIN
|
||||
PRINT N'이 스크립트를 실행하려면 SQLCMD 모드를 사용하도록 설정해야 합니다.';
|
||||
SET NOEXEC ON;
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
USE [$(DatabaseName)];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'업데이트가 완료되었습니다.';
|
||||
|
||||
|
||||
GO
|
||||
Binary file not shown.
Binary file not shown.
BIN
DBPatch/sqlScripts/dacpac/SystemX.DB.VPKI_DataDB.dacpac
Normal file
BIN
DBPatch/sqlScripts/dacpac/SystemX.DB.VPKI_DataDB.dacpac
Normal file
Binary file not shown.
BIN
DBPatch/sqlScripts/dacpac/SystemX.DB.VpkiDB.dacpac
Normal file
BIN
DBPatch/sqlScripts/dacpac/SystemX.DB.VpkiDB.dacpac
Normal file
Binary file not shown.
BIN
DBPatch/sqlScripts/dacpac/VPKI_DataDB.dacpac
Normal file
BIN
DBPatch/sqlScripts/dacpac/VPKI_DataDB.dacpac
Normal file
Binary file not shown.
69
Projects/Config/WebApi.VpkiApi.Config.json
Normal file
69
Projects/Config/WebApi.VpkiApi.Config.json
Normal file
@ -0,0 +1,69 @@
|
||||
{
|
||||
"Server": {
|
||||
"Address": "https://*",
|
||||
"Port": 8080,
|
||||
"IIS": false
|
||||
},
|
||||
"API": [
|
||||
{
|
||||
"ApiName": "vpkira",
|
||||
"Address": "https://vpkira.hmckmc.co.kr/"
|
||||
}
|
||||
],
|
||||
"Auth": {
|
||||
"issuer": "vpki.api",
|
||||
"audience": "vpki",
|
||||
"accessTokenSecret": "t6zdogyrT0U1bYw3gJvMm3JHmj2Iyawr7O2WKE2truX+MK0l/XNGmpU2ofagdUWBN4DxAUv7c8xSYVv/8abL6A==",
|
||||
"accessTokenExpires": 60, //minutes
|
||||
"refreshTokenSecret": "1vVuoGqIqkStFI3QUXHMr0/yO1feLPnhqcfFGjZyk478+4WY7dhrUjCfVeWjmmSZYgb+rtP0X6ec+3iL35Yezw==",
|
||||
"refreshTokenExpires": 1440 //minuts, 60*24 (1day)
|
||||
},
|
||||
"DataBase": [
|
||||
{
|
||||
"IP": "127.0.0.1",
|
||||
"Port": 1433,
|
||||
"DBName": "VPKI_AccountDB",
|
||||
"DBID": 1,
|
||||
"DBContext": "VpkiAccountDbContext",
|
||||
"UserID": "VPKI",
|
||||
"Password": "Kefico!@34"
|
||||
},
|
||||
{
|
||||
"IP": "127.0.0.1",
|
||||
"Port": 1433,
|
||||
"DBName": "VPKI_AccountDB_DEV",
|
||||
"DBID": 2,
|
||||
"DBContext": "VpkiAccountDbContext",
|
||||
"UserID": "VPKI",
|
||||
"Password": "Kefico!@34"
|
||||
},
|
||||
{
|
||||
"IP": "127.0.0.1",
|
||||
"Port": 1433,
|
||||
"DBName": "VPKI_DataDB",
|
||||
"DBID": 1,
|
||||
"DBContext": "VpkiDataDbContext",
|
||||
"UserID": "VPKI",
|
||||
"Password": "Kefico!@34"
|
||||
},
|
||||
{
|
||||
"IP": "127.0.0.1",
|
||||
"Port": 1433,
|
||||
"DBName": "VPKI_DataDB_DEV",
|
||||
"DBID": 2,
|
||||
"DBContext": "VpkiDataDbContext",
|
||||
"UserID": "VPKI",
|
||||
"Password": "Kefico!@34"
|
||||
}
|
||||
],
|
||||
"Openssl": {
|
||||
"Path": "C:/Program Files/OpenSSL-Win64/bin/openssl.exe",
|
||||
"SubCAPath": "../SubCA/",
|
||||
"SubCA": {
|
||||
"prov_v1": "SubCA_P02OEM.pem",
|
||||
"prov_cert": "SubCA_P20OEM.pem",
|
||||
"vehicle_cert": "SubCA_P20VHC.pem"
|
||||
},
|
||||
"RootCA": "hkmcrootca.pem"
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<Name>SystemX.DB.VPKI_DataDB</Name>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>4.1</ProjectVersion>
|
||||
<ProjectGuid>{5d374f06-d9fa-4159-bc84-1f3ca506f50e}</ProjectGuid>
|
||||
<DSP>Microsoft.Data.Tools.Schema.Sql.Sql160DatabaseSchemaProvider</DSP>
|
||||
<OutputType>Database</OutputType>
|
||||
<RootPath>
|
||||
</RootPath>
|
||||
<RootNamespace>SystemX.DB.VPKI_DataDB</RootNamespace>
|
||||
<AssemblyName>SystemX.DB.VPKI_DataDB</AssemblyName>
|
||||
<ModelCollation>1042,CI</ModelCollation>
|
||||
<DefaultFileStructure>BySchemaAndSchemaType</DefaultFileStructure>
|
||||
<DeployToDatabase>True</DeployToDatabase>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<TargetLanguage>CS</TargetLanguage>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<SqlServerVerification>False</SqlServerVerification>
|
||||
<IncludeCompositeObjects>True</IncludeCompositeObjects>
|
||||
<TargetDatabaseSet>True</TargetDatabaseSet>
|
||||
<GenerateCreateScript>True</GenerateCreateScript>
|
||||
<DefaultCollation>Korean_Wansung_CI_AS</DefaultCollation>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<BuildScriptName>$(MSBuildProjectName).sql</BuildScriptName>
|
||||
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<DefineDebug>false</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<BuildScriptName>$(MSBuildProjectName).sql</BuildScriptName>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<DefineDebug>true</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">11.0</VisualStudioVersion>
|
||||
<!-- Default to the v11.0 targets path if the targets file for the current VS version is not found -->
|
||||
<SSDTExists Condition="Exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets')">True</SSDTExists>
|
||||
<VisualStudioVersion Condition="'$(SSDTExists)' == ''">11.0</VisualStudioVersion>
|
||||
</PropertyGroup>
|
||||
<Import Condition="'$(SQLDBExtensionsRefPath)' != ''" Project="$(SQLDBExtensionsRefPath)\Microsoft.Data.Tools.Schema.SqlTasks.targets" />
|
||||
<Import Condition="'$(SQLDBExtensionsRefPath)' == ''" Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" />
|
||||
<ItemGroup>
|
||||
<Folder Include="Properties" />
|
||||
<Folder Include="dbo" />
|
||||
<Folder Include="dbo\Functions" />
|
||||
<Folder Include="dbo\Scripts" />
|
||||
<Folder Include="dbo\StoredProcedures" />
|
||||
<Folder Include="dbo\Tables" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Build Include="dbo\Tables\tCertificate.sql" />
|
||||
<Build Include="dbo\Tables\tOcsp.sql" />
|
||||
<Build Include="dbo\Tables\tTbscsr.sql" />
|
||||
<Build Include="dbo\Tables\tVerifyResult.sql" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>xcopy /y $(ProjectDir)$(OutputPath)$(TargetName)_Create.sql $(SolutionDir)..\..\DBPatch\sqlScripts\
|
||||
|
||||
xcopy /y $(ProjectDir)$(OutputPath)$(TargetName).dacpac $(SolutionDir)..\..\DBPatch\sqlScripts\dacpac\</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@ -0,0 +1,15 @@
|
||||
CREATE TABLE [dbo].[tCertificate]
|
||||
(
|
||||
[cCuid] BIGINT NOT NULL PRIMARY KEY,
|
||||
[cCsrsignature] NVARCHAR(1024) NOT NULL,
|
||||
[cTierCode]NVARCHAR(20) NOT NULL,
|
||||
[cUnitCode]NVARCHAR(20) NOT NULL,
|
||||
[cVehicleCode]NVARCHAR(20) NOT NULL,
|
||||
[cLocalCode]NVARCHAR(20) NOT NULL,
|
||||
[cBrandCode]NVARCHAR(20) NOT NULL,
|
||||
[cCsr] NVARCHAR(2048) NOT NULL,
|
||||
[cCert] NVARCHAR(2048) NOT NULL,
|
||||
[cMessage] NVARCHAR(250) NOT NULL,
|
||||
[cIssueCount] INT NOT NULL,
|
||||
[cDateTime] DATETIME2 NOT NULL
|
||||
)
|
||||
@ -0,0 +1,8 @@
|
||||
CREATE TABLE [dbo].[tOcsp]
|
||||
(
|
||||
[cCuid] BIGINT NOT NULL PRIMARY KEY,
|
||||
[cStatus] NVARCHAR(20) NOT NULL,
|
||||
[cVerify] NVARCHAR(20) NOT NULL,
|
||||
[cOcsp] NVARCHAR(MAX) NULL,
|
||||
[cDateTime] DATETIME2 NOT NULL
|
||||
)
|
||||
@ -0,0 +1,19 @@
|
||||
CREATE TABLE [dbo].[tTbscsr]
|
||||
(
|
||||
[cCuid] BIGINT NOT NULL PRIMARY KEY IDENTITY(1,1),
|
||||
[cIftid] NVARCHAR(100) NOT NULL,
|
||||
[cMacaddr] NVARCHAR(100) NOT NULL,
|
||||
[cWmi] NVARCHAR(20) NOT NULL,
|
||||
[cIdType] NVARCHAR(10)NOT NULL,
|
||||
[cSupplierId] NVARCHAR(10) NOT NULL,
|
||||
[cDc] NVARCHAR(20) NOT NULL,
|
||||
[cTierCode]NVARCHAR(20) NOT NULL,
|
||||
[cUnitCode]NVARCHAR(20) NOT NULL,
|
||||
[cPublickey]NVARCHAR(1024) NOT NULL,
|
||||
[cCertType]NVARCHAR(20) NOT NULL,
|
||||
[cOriginTbscsr] NVARCHAR(4000) NOT NULL,
|
||||
[cHashedTbscsr] NVARCHAR(1024) NOT NULL,
|
||||
[cPcid] NVARCHAR(50) NOT NULL,
|
||||
[cDn]NVARCHAR(250) NOT NULL,
|
||||
[cDateTime] DATETIME2 NOT NULL
|
||||
)
|
||||
@ -0,0 +1,5 @@
|
||||
CREATE TABLE [dbo].[tVerifyResult]
|
||||
(
|
||||
[cCuid] BIGINT NOT NULL PRIMARY KEY,
|
||||
[cResult] NCHAR(20) NOT NULL
|
||||
)
|
||||
@ -0,0 +1,91 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace SystemX.Core.DB;
|
||||
|
||||
public partial class VPKI_DataDBContext : DbContext
|
||||
{
|
||||
public VPKI_DataDBContext(DbContextOptions<VPKI_DataDBContext> options)
|
||||
: base(options)
|
||||
{
|
||||
}
|
||||
|
||||
public virtual DbSet<tCertificate> tCertificates { get; set; }
|
||||
|
||||
public virtual DbSet<tOcsp> tOcsps { get; set; }
|
||||
|
||||
public virtual DbSet<tTbscsr> tTbscsrs { get; set; }
|
||||
|
||||
public virtual DbSet<tVerifyResult> tVerifyResults { get; set; }
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder.Entity<tCertificate>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.cCuid).HasName("PK__tCertifi__2AA00D94D7A91CE3");
|
||||
|
||||
entity.ToTable("tCertificate");
|
||||
|
||||
entity.Property(e => e.cCuid).ValueGeneratedNever();
|
||||
entity.Property(e => e.cBrandCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cCert).HasMaxLength(2048);
|
||||
entity.Property(e => e.cCsr).HasMaxLength(2048);
|
||||
entity.Property(e => e.cCsrsignature).HasMaxLength(1024);
|
||||
entity.Property(e => e.cLocalCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cMessage).HasMaxLength(250);
|
||||
entity.Property(e => e.cTierCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cUnitCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cVehicleCode).HasMaxLength(20);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<tOcsp>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.cCuid).HasName("PK__tOcsp__2AA00D94489D8AA6");
|
||||
|
||||
entity.ToTable("tOcsp");
|
||||
|
||||
entity.Property(e => e.cCuid).ValueGeneratedNever();
|
||||
entity.Property(e => e.cStatus).HasMaxLength(20);
|
||||
entity.Property(e => e.cVerify).HasMaxLength(20);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<tTbscsr>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.cCuid).HasName("PK__tTbscsr__2AA00D9463096B25");
|
||||
|
||||
entity.ToTable("tTbscsr");
|
||||
|
||||
entity.Property(e => e.cCertType).HasMaxLength(20);
|
||||
entity.Property(e => e.cDc).HasMaxLength(20);
|
||||
entity.Property(e => e.cDn).HasMaxLength(250);
|
||||
entity.Property(e => e.cHashedTbscsr).HasMaxLength(1024);
|
||||
entity.Property(e => e.cIdType).HasMaxLength(10);
|
||||
entity.Property(e => e.cIftid).HasMaxLength(100);
|
||||
entity.Property(e => e.cMacaddr).HasMaxLength(100);
|
||||
entity.Property(e => e.cOriginTbscsr).HasMaxLength(4000);
|
||||
entity.Property(e => e.cPcid).HasMaxLength(50);
|
||||
entity.Property(e => e.cPublickey).HasMaxLength(1024);
|
||||
entity.Property(e => e.cSupplierId).HasMaxLength(10);
|
||||
entity.Property(e => e.cTierCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cUnitCode).HasMaxLength(20);
|
||||
entity.Property(e => e.cWmi).HasMaxLength(20);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<tVerifyResult>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.cCuid).HasName("PK__tVerifyR__2AA00D94B21AB01E");
|
||||
|
||||
entity.ToTable("tVerifyResult");
|
||||
|
||||
entity.Property(e => e.cCuid).ValueGeneratedNever();
|
||||
entity.Property(e => e.cResult)
|
||||
.HasMaxLength(20)
|
||||
.IsFixedLength();
|
||||
});
|
||||
|
||||
OnModelCreatingPartial(modelBuilder);
|
||||
}
|
||||
|
||||
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
|
||||
}
|
||||
@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SystemX.Core.DB;
|
||||
|
||||
public partial class tCertificate
|
||||
{
|
||||
public long cCuid { get; set; }
|
||||
|
||||
public string cCsrsignature { get; set; } = null!;
|
||||
|
||||
public string cTierCode { get; set; } = null!;
|
||||
|
||||
public string cUnitCode { get; set; } = null!;
|
||||
|
||||
public string cVehicleCode { get; set; } = null!;
|
||||
|
||||
public string cLocalCode { get; set; } = null!;
|
||||
|
||||
public string cBrandCode { get; set; } = null!;
|
||||
|
||||
public string cCsr { get; set; } = null!;
|
||||
|
||||
public string cCert { get; set; } = null!;
|
||||
|
||||
public string cMessage { get; set; } = null!;
|
||||
|
||||
public int cIssueCount { get; set; }
|
||||
|
||||
public DateTime cDateTime { get; set; }
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SystemX.Core.DB;
|
||||
|
||||
public partial class tOcsp
|
||||
{
|
||||
public long cCuid { get; set; }
|
||||
|
||||
public string cStatus { get; set; } = null!;
|
||||
|
||||
public string cVerify { get; set; } = null!;
|
||||
|
||||
public string? cOcsp { get; set; }
|
||||
|
||||
public DateTime cDateTime { get; set; }
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SystemX.Core.DB;
|
||||
|
||||
public partial class tTbscsr
|
||||
{
|
||||
public long cCuid { get; set; }
|
||||
|
||||
public string cIftid { get; set; } = null!;
|
||||
|
||||
public string cMacaddr { get; set; } = null!;
|
||||
|
||||
public string cWmi { get; set; } = null!;
|
||||
|
||||
public string cIdType { get; set; } = null!;
|
||||
|
||||
public string cSupplierId { get; set; } = null!;
|
||||
|
||||
public string cDc { get; set; } = null!;
|
||||
|
||||
public string cTierCode { get; set; } = null!;
|
||||
|
||||
public string cUnitCode { get; set; } = null!;
|
||||
|
||||
public string cPublickey { get; set; } = null!;
|
||||
|
||||
public string cCertType { get; set; } = null!;
|
||||
|
||||
public string cOriginTbscsr { get; set; } = null!;
|
||||
|
||||
public string cHashedTbscsr { get; set; } = null!;
|
||||
|
||||
public string cPcid { get; set; } = null!;
|
||||
|
||||
public string cDn { get; set; } = null!;
|
||||
|
||||
public DateTime cDateTime { get; set; }
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SystemX.Core.DB;
|
||||
|
||||
public partial class tVerifyResult
|
||||
{
|
||||
public long cCuid { get; set; }
|
||||
|
||||
public string cResult { get; set; } = null!;
|
||||
}
|
||||
@ -13,6 +13,8 @@ Project("{00D1A9C2-B5F0-4AF3-8072-F6C62B433612}") = "SystemX.DB.AccountDB", "DB\
|
||||
EndProject
|
||||
Project("{00D1A9C2-B5F0-4AF3-8072-F6C62B433612}") = "SystemX.DB.UniqueKeyDB", "DB\SystemX.DB.UniqueKeyDB\SystemX.DB.UniqueKeyDB.sqlproj", "{C67F3F97-1D52-4C75-A04F-16ED41822CCD}"
|
||||
EndProject
|
||||
Project("{00D1A9C2-B5F0-4AF3-8072-F6C62B433612}") = "SystemX.DB.VPKI_DataDB", "DB\SystemX.DB.VPKI_DataDB\SystemX.DB.VPKI_DataDB.sqlproj", "{5D374F06-D9FA-4159-BC84-1F3CA506F50E}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@ -39,6 +41,12 @@ Global
|
||||
{C67F3F97-1D52-4C75-A04F-16ED41822CCD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C67F3F97-1D52-4C75-A04F-16ED41822CCD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C67F3F97-1D52-4C75-A04F-16ED41822CCD}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -46,6 +54,7 @@ Global
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{B44C85FA-BD31-419F-8481-477E166A5753} = {C8D5274F-AC00-46C7-1F8D-E88E81087A52}
|
||||
{C67F3F97-1D52-4C75-A04F-16ED41822CCD} = {C8D5274F-AC00-46C7-1F8D-E88E81087A52}
|
||||
{5D374F06-D9FA-4159-BC84-1F3CA506F50E} = {C8D5274F-AC00-46C7-1F8D-E88E81087A52}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {A26A3BD0-2161-41FA-949A-DEA966E8F798}
|
||||
|
||||
Reference in New Issue
Block a user