Files
vpd-permission-poc/dds-backoffice/src/main/resources/application.yml

110 lines
4.5 KiB
YAML

spring:
application:
name: dds-permission-backoffice
datasource:
url: ${BACKOFFICE_DB_URL:jdbc:oracle:thin:@localhost:1521/FREEPDB1}
username: ${BACKOFFICE_DB_USERNAME:backoffice}
password: ${BACKOFFICE_DB_PASSWORD:backoffice}
driver-class-name: oracle.jdbc.OracleDriver
hikari:
pool-name: dds-backoffice-pool
maximum-pool-size: ${BACKOFFICE_DB_POOL_MAX:10}
minimum-idle: ${BACKOFFICE_DB_POOL_MIN:2}
connection-timeout: 10000
idle-timeout: ${BACKOFFICE_DB_POOL_IDLE_TIMEOUT_MS:300000}
keepalive-time: ${BACKOFFICE_DB_POOL_KEEPALIVE_MS:120000}
thymeleaf:
cache: false
mybatis:
mapper-locations: classpath:/mapper/*.xml
configuration:
map-underscore-to-camel-case: true
server:
address: ${DDS_BACKOFFICE_BIND_ADDRESS:0.0.0.0}
port: ${DDS_BACKOFFICE_PORT:8083}
forward-headers-strategy: ${DDS_BACKOFFICE_FORWARD_HEADERS_STRATEGY:none}
servlet:
session:
cookie:
name: DDS_BACKOFFICE_SESSION
secure: ${DDS_BACKOFFICE_SESSION_COOKIE_SECURE:false}
http-only: true
same-site: lax
backoffice:
security:
admin-user: ${DDS_BACKOFFICE_ADMIN_USER:${BACKOFFICE_ADMIN_USER:admin}}
admin-password: ${DDS_BACKOFFICE_ADMIN_PASSWORD:${BACKOFFICE_ADMIN_PASSWORD:admin}}
require-https: ${DDS_BACKOFFICE_REQUIRE_HTTPS:false}
token:
max-days: ${BACKOFFICE_TOKEN_MAX_DAYS:365}
ords:
base-url: ${BACKOFFICE_ORDS_BASE_URL:}
timeout: ${BACKOFFICE_ORDS_TIMEOUT_SECONDS:10}s
metadata-db:
url: ${BACKOFFICE_ORDS_DB_URL:}
username: ${BACKOFFICE_ORDS_DB_USERNAME:}
password: ${BACKOFFICE_ORDS_DB_PASSWORD:}
ai:
enabled: ${BACKOFFICE_AI_ENABLED:false}
base-url: ${BACKOFFICE_AI_BASE_URL:}
model: ${BACKOFFICE_AI_MODEL:}
embedding-model: ${BACKOFFICE_AI_EMBEDDING_MODEL:}
api-key: ${BACKOFFICE_AI_API_KEY:}
timeout: ${BACKOFFICE_AI_TIMEOUT_SECONDS:30}s
dds:
mcp:
permission-sync-enabled: true
iam:
domain-url: ${DDS_OCI_IAM_DOMAIN_URL:}
token-uri: ${DDS_OCI_IAM_TOKEN_URI:}
client-id: ${DDS_OCI_IAM_CLIENT_ID:}
client-secret: ${DDS_OCI_IAM_CLIENT_SECRET:}
database-scope: ${DDS_OCI_IAM_DATABASE_SCOPE:}
timeout: ${DDS_OCI_IAM_TIMEOUT_SECONDS:10s}
refresh-skew: ${DDS_OCI_IAM_REFRESH_SKEW_SECONDS:60s}
db-url: ${DDS_BACKOFFICE_DB_URL:${BACKOFFICE_DB_URL:jdbc:oracle:thin:@localhost:1521/FREEPDB1}}
query-timeout: ${DDS_BACKOFFICE_QUERY_TIMEOUT:10s}
pg-object: ${DDS_BACKOFFICE_PG_OBJECT:ADMIN.V_DDS_CUSTOMERS_PG}
my-object: ${DDS_BACKOFFICE_MY_OBJECT:ADMIN.V_DDS_CUSTOMERS_MY}
vector-object: ${DDS_BACKOFFICE_VECTOR_OBJECT:ADMIN.CB_DDS_VECTOR_SEARCH_DOCUMENTS}
object-mappings:
CB_VECTOR_SEARCH_DOCUMENTS: ${DDS_BACKOFFICE_VECTOR_OBJECT:ADMIN.CB_DDS_VECTOR_SEARCH_DOCUMENTS}
CB_V_SEARCH_DOCUMENTS: ${DDS_BACKOFFICE_DOCUMENT_OBJECT:ADMIN.CB_DDS_V_SEARCH_DOCUMENTS}
token:
username: ${DDS_BACKOFFICE_TOKEN_USERNAME:dds_demo_token}
password: ${DDS_BACKOFFICE_TOKEN_PASSWORD:${DDSUSER_TOKEN_PASSWORD:}}
data-role: ${DDS_BACKOFFICE_TOKEN_DATA_ROLE:cb_dds_token_role}
users:
my:
label: MY 전용 사용자
description: MySQL 원본만 허용하는 DATA ROLE
username: ${DDS_BACKOFFICE_MY_USERNAME:dds_demo_my}
password: ${DDS_BACKOFFICE_MY_PASSWORD:${DDSUSER_MY_PASSWORD:}}
application-user-id: ${DDS_BACKOFFICE_MY_APPLICATION_USER_ID:101}
data-role: ${DDS_BACKOFFICE_MY_DATA_ROLE:dds_demo_my_role}
pg:
label: PG 전용 사용자
description: PostgreSQL 원본만 허용하는 DATA ROLE
username: ${DDS_BACKOFFICE_PG_USERNAME:dds_demo_pg}
password: ${DDS_BACKOFFICE_PG_PASSWORD:${DDSUSER_PG_PASSWORD:}}
application-user-id: ${DDS_BACKOFFICE_PG_APPLICATION_USER_ID:102}
data-role: ${DDS_BACKOFFICE_PG_DATA_ROLE:dds_demo_pg_role}
both:
label: 통합 사용자
description: 두 원본을 모두 허용하는 DATA ROLE
username: ${DDS_BACKOFFICE_BOTH_USERNAME:dds_demo_both}
password: ${DDS_BACKOFFICE_BOTH_PASSWORD:${DDSUSER_BOTH_PASSWORD:}}
application-user-id: ${DDS_BACKOFFICE_BOTH_APPLICATION_USER_ID:103}
data-role: ${DDS_BACKOFFICE_BOTH_DATA_ROLE:dds_demo_both_role}
none:
label: 차단 사용자
description: 접속만 가능하고 DATA GRANT가 없는 사용자
username: ${DDS_BACKOFFICE_NONE_USERNAME:dds_demo_none}
password: ${DDS_BACKOFFICE_NONE_PASSWORD:${DDSUSER_NONE_PASSWORD:}}
application-user-id: ${DDS_BACKOFFICE_NONE_APPLICATION_USER_ID:0}
data-role: ${DDS_BACKOFFICE_NONE_DATA_ROLE:dds_demo_none_role}