Skip to content

a-u-93/crud-app

Repository files navigation

User Management Service

Quickstart

docker compose --env-file /var/private/user_service down -v
docker compose --env-file /var/private/user_service build
docker compose --env-file /var/private/user_service up -d

On developer machine, to make C# code launch time less

DB_HOST='localhost' SA_PASSWORD='strongpassword' PORT="8888" dotnet run

API

Route Method Description
/ GET Returns rendered HTML document.
/ POST Add new user.
/ PUT Update specific user.
/ DELETE Delete specific user.
/page/{n} GET JSON document of requested users chunk (unimplemented)

Example

curl -X GET http://127.0.0.1:7777/api/user/all
curl -X POST -d '{"firstName": "Alexander", "lastName": "Ushakov", "age": 29}' http://127.0.0.1:7777/api/user
curl -X POST -d '{"firstName": "Basil", "lastName": "Ushakov", "age": 17}' http://127.0.0.1:7777/api/user
curl -X GET http://127.0.0.1:7777/api/user?id=9

Nginx Config

server {
  server_name user.demoproject.by;
  listen 443 ssl http2;
  ssl_certificate     /etc/letsencrypt/live/user.demoproject.by/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/user.demoproject.by/privkey.pem;
  #ssl_certificate     /var/ssl/by.ushakov.code/fullchain.pem;
  #ssl_certificate_key /var/ssl/by.ushakov.code/privkey.pem;
  ssl_session_timeout 1d;
  ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
  ssl_session_tickets off;
  ssl_protocols TLSv1.3;
  ssl_prefer_server_ciphers off;
  # HSTS (ngx_http_headers_module is required) (63072000 seconds)
  add_header Strict-Transport-Security "max-age=63072000" always;
  location / {
    proxy_pass http://127.0.0.1:7777;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
  }
  auth_basic           "Protected Area";
  auth_basic_user_file /var/private/.htpasswd;
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published