├── .dockerignore ├── .env.example ├── .eslintrc.json ├── .github └── workflows │ └── docker-image.yml ├── .gitignore ├── .prettierrc.json ├── CONFIGURATION.md ├── Dockerfile ├── LICENSE ├── OAUTH-LIKE-FLOW.md ├── README.md ├── SECURITY-MODEL.md ├── docker-compose.yml ├── justfile ├── package.json ├── pnpm-lock.yaml ├── prisma ├── migrations │ ├── 20230503095726_init │ │ └── migration.sql │ ├── 20230503100402_unique │ │ └── migration.sql │ ├── 20230503100514_rename │ │ └── migration.sql │ ├── 20230503103731_add_method │ │ └── migration.sql │ ├── 20230527214402_add_timestamp │ │ └── migration.sql │ ├── 20230527215212_add_descr │ │ └── migration.sql │ ├── 20230529151917_change_kind_type │ │ └── migration.sql │ ├── 20230603115339_policies │ │ └── migration.sql │ ├── 20230603121616_add_deleted │ │ └── migration.sql │ ├── 20230603122649_desc │ │ └── migration.sql │ ├── 20230603134135_tokens │ │ └── migration.sql │ ├── 20230603145715_add_keyname │ │ └── migration.sql │ ├── 20230703092203_revokedat │ │ └── migration.sql │ ├── 20231105090854_request │ │ └── migration.sql │ ├── 20231105091736_method │ │ └── migration.sql │ ├── 20231105094428_allowed │ │ └── migration.sql │ ├── 20231120122522_make_keyname_optional │ │ └── migration.sql │ ├── 20231218135408_request_result │ │ └── migration.sql │ ├── 20231218135715_key │ │ └── migration.sql │ ├── 20231218140114_ │ │ └── migration.sql │ ├── 20240101221505_user_table │ │ └── migration.sql │ ├── 20240101221607_add_domain │ │ └── migration.sql │ └── migration_lock.toml ├── nsecbunker.db └── schema.prisma ├── scripts ├── start.js └── start.ts ├── src ├── client.ts ├── commands │ ├── add.ts │ ├── setup.ts │ └── start.ts ├── config │ ├── index.ts │ └── keys.ts ├── daemon │ ├── admin │ │ ├── commands │ │ │ ├── account │ │ │ │ └── wallet.ts │ │ │ ├── create_account.ts │ │ │ ├── create_new_key.ts │ │ │ ├── create_new_policy.ts │ │ │ ├── create_new_token.ts │ │ │ ├── ping.ts │ │ │ ├── rename_key_user.ts │ │ │ ├── revoke_user.ts │ │ │ └── unlock_key.ts │ │ ├── index.ts │ │ └── validations │ │ │ └── request-from-admin.ts │ ├── authorize.ts │ ├── backend │ │ ├── index.ts │ │ └── publish-event.ts │ ├── index.ts │ ├── lib │ │ ├── acl │ │ │ └── index.ts │ │ └── profile.ts │ ├── run.ts │ └── web │ │ ├── authorize.ts │ │ └── registration-validations.ts ├── db.ts ├── index.ts ├── package.json └── utils │ └── dm-user.ts ├── templates ├── authorizeRequest.handlebar ├── createAccount.handlebar ├── error.handlebar ├── login.handlebar └── redirect.handlebar └── tsconfig.json /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.dockerignore -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/workflows/docker-image.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.github/workflows/docker-image.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /CONFIGURATION.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/CONFIGURATION.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/LICENSE -------------------------------------------------------------------------------- /OAUTH-LIKE-FLOW.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/OAUTH-LIKE-FLOW.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY-MODEL.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/SECURITY-MODEL.md -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /justfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/justfile -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /prisma/migrations/20230503095726_init/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230503095726_init/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230503100402_unique/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230503100402_unique/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230503100514_rename/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230503100514_rename/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230503103731_add_method/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "SigningCondition" ADD COLUMN "method" TEXT; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20230527214402_add_timestamp/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230527214402_add_timestamp/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230527215212_add_descr/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "KeyUser" ADD COLUMN "description" TEXT; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20230529151917_change_kind_type/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230529151917_change_kind_type/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230603115339_policies/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230603115339_policies/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230603121616_add_deleted/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "Policy" ADD COLUMN "deletedAt" DATETIME; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20230603122649_desc/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "Policy" ADD COLUMN "description" TEXT; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20230603134135_tokens/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230603134135_tokens/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230603145715_add_keyname/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20230603145715_add_keyname/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230703092203_revokedat/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "KeyUser" ADD COLUMN "revokedAt" DATETIME; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20231105090854_request/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20231105090854_request/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20231105091736_method/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20231105091736_method/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20231105094428_allowed/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "Request" ADD COLUMN "allowed" BOOLEAN; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20231120122522_make_keyname_optional/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20231120122522_make_keyname_optional/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20231218135408_request_result/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE "Request" ADD COLUMN "result" TEXT; 3 | -------------------------------------------------------------------------------- /prisma/migrations/20231218135715_key/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20231218135715_key/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20231218140114_/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20231218140114_/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20240101221505_user_table/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20240101221505_user_table/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20240101221607_add_domain/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/20240101221607_add_domain/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/migration_lock.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/migrations/migration_lock.toml -------------------------------------------------------------------------------- /prisma/nsecbunker.db: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/prisma/schema.prisma -------------------------------------------------------------------------------- /scripts/start.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/scripts/start.js -------------------------------------------------------------------------------- /scripts/start.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/scripts/start.ts -------------------------------------------------------------------------------- /src/client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/client.ts -------------------------------------------------------------------------------- /src/commands/add.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/commands/add.ts -------------------------------------------------------------------------------- /src/commands/setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/commands/setup.ts -------------------------------------------------------------------------------- /src/commands/start.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/commands/start.ts -------------------------------------------------------------------------------- /src/config/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/config/index.ts -------------------------------------------------------------------------------- /src/config/keys.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/config/keys.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/account/wallet.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/account/wallet.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/create_account.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/create_account.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/create_new_key.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/create_new_key.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/create_new_policy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/create_new_policy.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/create_new_token.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/create_new_token.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/ping.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/ping.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/rename_key_user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/rename_key_user.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/revoke_user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/revoke_user.ts -------------------------------------------------------------------------------- /src/daemon/admin/commands/unlock_key.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/commands/unlock_key.ts -------------------------------------------------------------------------------- /src/daemon/admin/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/index.ts -------------------------------------------------------------------------------- /src/daemon/admin/validations/request-from-admin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/admin/validations/request-from-admin.ts -------------------------------------------------------------------------------- /src/daemon/authorize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/authorize.ts -------------------------------------------------------------------------------- /src/daemon/backend/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/backend/index.ts -------------------------------------------------------------------------------- /src/daemon/backend/publish-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/backend/publish-event.ts -------------------------------------------------------------------------------- /src/daemon/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/index.ts -------------------------------------------------------------------------------- /src/daemon/lib/acl/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/lib/acl/index.ts -------------------------------------------------------------------------------- /src/daemon/lib/profile.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/lib/profile.ts -------------------------------------------------------------------------------- /src/daemon/run.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/run.ts -------------------------------------------------------------------------------- /src/daemon/web/authorize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/web/authorize.ts -------------------------------------------------------------------------------- /src/daemon/web/registration-validations.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/daemon/web/registration-validations.ts -------------------------------------------------------------------------------- /src/db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/db.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.8.0" 3 | } -------------------------------------------------------------------------------- /src/utils/dm-user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/src/utils/dm-user.ts -------------------------------------------------------------------------------- /templates/authorizeRequest.handlebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/templates/authorizeRequest.handlebar -------------------------------------------------------------------------------- /templates/createAccount.handlebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/templates/createAccount.handlebar -------------------------------------------------------------------------------- /templates/error.handlebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/templates/error.handlebar -------------------------------------------------------------------------------- /templates/login.handlebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/templates/login.handlebar -------------------------------------------------------------------------------- /templates/redirect.handlebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/templates/redirect.handlebar -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kind-0/nsecbunkerd/HEAD/tsconfig.json --------------------------------------------------------------------------------