initial draft

This commit is contained in:
msyu
2025-06-02 16:16:51 +03:00
commit 529334d03b
272 changed files with 22684 additions and 0 deletions
+89
View File
@@ -0,0 +1,89 @@
<!---saml configuration--->
<!---development, stage, and production configurations are managed locally
(under saml/),
because global configuration is uniform --->
<!---common configuration parameters--->
<cfset request.SAML.KEYSTORE_PASS="changeit" />
<cfset request.SAML.KEY_PASS="#request.SAML.KEYSTORE_PASS#" />
<cfset request.SAML.IDP_URL="https://sso.nubes.ru/adfs/ls" />
<!--- environment-specific configuration parameters--->
<!--- development environment, the default one --->
<!---we do not create to have all parameters listed in one place--->
<cfset request.SAML.KEYSTORE_FILE_NAME="C:/lucee/tomcat/lucee-server/context/security/cacerts" />
<!---<cfset request.SAML.CERTIFICATE_ALIAS="VDI_SMISHCHUK10_SAML" />--->
<cfset request.SAML.CERTIFICATE_ALIAS="LUCEE_SAML" /><!--- experiment--->
<cfset request.SAML.baseUrl="https://dat-n-smishch1/svc/saml/" /><!---*** appname--->
<cftry>
<!---production environment--->prod...
<cfinclude template="conf/prod.cfm"/> prod
<cfcatch type="ANY">
<cftry>
<!---stage environment--->stage...
<cfinclude template="conf/stage.cfm"/>stage
<cfcatch type="ANY">dev
<!--- development environment --->
<!--- we could initialise dev params here, but just use defaults --->
</cfcatch>
</cftry>
</cfcatch>
</cftry>
<cfdump var=#request.SAML#/>
<!---
files are copied as follows at deploy: dev->stage->prod
config files have priority: prod>stage (>dev which is the default)
- production environment has conf/prod.cfm file (and can contain conf/stage.cfm, but it doesn't matter)
- stage environment has conf/stage.cfm file
- development environment contains no one of them
But we put into conf/ directory templates-placeholders
named stage_sample.cfm and prod_sample.cfm and
So for dev environment contents of saml/conf directory looks like this:
saml/conf/
prod_sample.cfm
stage_sample.cfm
for stage:
saml/conf/
prod_sample.cfm (optional)
stage.cfm
stage_sample.cfm (optional)
for prod:
saml/conf/
prod.cfm
prod_sample.cfm (optional)
stage.cfm (optional)
stage_sample.cfm (optional)
--->
<!---**** Это рассуждение устарело, выше (кажется, удовлетворительное) решение проблемы--->
<!---
Как хранить конфигурационные данные приложения
В конфиг-файле
Просто, но при деплое dev-test-prod придется подменять конфиг, и где вести эти три конфигурации
Сделать 3 конфиг-файла и выбирать программно нужный
Довольно стандартное решение, но нужны надежные признаки dev,test,prod, а что делать, если какие-то еще хосты или конфигурации надо поддержать
- в том же файле можно перечислить, кто будет dev,test,prod, хоть по маске, хоть как. Только вот на сервере нельзя будет обращаться к локалхосту. Или вообще забанить локалхост
Держать конфигурацию в основной базе
При копировании базы с продуктива восстановлением из бэкапа девелоперская конфигурация затрется; надо осторожно кэшировать данные в Application
Держать конфигурацию в отдельной базе
Плодить БД не хочется. Подошел бы текстовый файл вне веб рута?
Держать конфигурацию в шаренной базе
Одна точка отказа для нескольких приложений
В конфиге выбирать. Очень глубоко зарыто. Можно поднять, собрать конфиги в кучу.
--->
<!---cannot load class through its string name, because no definition for the class with the specified name [org.apache.xml.security.Init] could be found caused by (java.lang.ClassNotFoundException:org.apache.xml.security.Init not found by lucee.core [64];java.lang.ClassNotFoundException:org.apache.xml.security.Init;)
put xmlsec-2.1.1.jar to D:\lucee\tomcat\lib, restart Lucee
No! Could not initialize class org.apache.xml.security.Init
--->