Query: I wn complete seperate .css/.scss and .html template file for my webcomponent.js like in angular. But with complete security. In lit. Use any js lib like domPurify, etc. But I wan complete safety. How? ChatGPT said: Thought for 16s Totally doable. Here’s a secure Lit setup with fully separate .html + .scss files , sanitized with DOMPurify , and rendered into the Shadow DOM without sacrificing performance. Folder layout src / lib/ safe- html .js components/ app-shell .html app-shell .scss app-shell .js 1) Install deps npm i dompurify npm i -D sass Vite will compile .scss . We’ll import the compiled CSS as text and attach it via adoptedStyleSheets (fast + memory-friendly). 2) app-shell.html (pure template file) Put your Carbon UI Shell markup here (no scripts). Example stub: < cds-header aria-label = "My App" > < cds-header-name prefix = "IBM" >[Platform] </ cds-header-name > < cds-header-glo...
Assumptions:
1. You are using Linux / Debian Server
2. You are using Compute Engine
3. You are using Google Domains
----------------------------------------------------------------------
Procedure:
1. Set $JAVA_HOME=<path to your java base directory>
2. Set $CATALINA_BASE=<path to your Tomcat / Tomee base directory>
3. Type command: $JAVA_HOME/bin/keytool -genkey -alias <server> -keyalg RSA -keysize <2048> -keystore <path to your keystore file.jks>
Note: When asked for your first and last name, give your website domain name like www.mohitkrgupta.dev
4. Type command: $JAVA_HOME/bin/keytool -certreq -alias <server> -file <csr.txt> -keystore <path to your keystore file.jks>
This will generate csr.txt key file to be submitted to Certifying Authority (ZeroSSL in this case)
5. Visit ZeroSSL site and copy-pase content of csr.txt and follow processes as mentioned in website to get your SSL keys
6. Your SSL key document will be available from there in .zip format, download and unzip it.
7. It will contain following files:
certificate.crt, and ca_bundle.crt.
8. Type Command: openssl crl2pkcs7 -nocrl -certfile <certificate.crt> -out <certificate.p7b> -certfile <ca_bundle.crt>
//(you will get certificate.p7b file in this way)
9. Type Command: JAVA_HOME/bin/keytool -import -alias <server> -file <certificate.p7b> -keystore <path to your keystore file.jks>
10. Type Command: sudo nano $CATALINA_BASE/conf/server.xml
11. Provide following lines in server.xml
<Connector port="443" maxHttpHeaderSize="8192" maxThreads="100"
minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
SSLEnabled="true" clientAuth="false"
sslProtocol="TLS" keyAlias="server"
keystoreFile="</home/newmkg/mohitkrgupta.dev.jks>"
keystorePass="<*************>" />
12. // restart tomc(at/ee) server
13. Check your working https:// website in your domain name
Work Done
Comments
Post a Comment
If you have any doubts, please let me know.