Commit graph

552 commits

Author SHA1 Message Date
oleghasjanov
552e8f1972 added safety_assured 2025-04-16 11:47:52 +03:00
oleghasjanov
7b2f220602 changed copy data to sql approach 2025-04-16 11:47:52 +03:00
oleghasjanov
e315358860 updated migration 2025-04-16 11:47:52 +03:00
oleghasjanov
ae96863b88 feat: Implement P12 certificate generation improvements
- Replace hardcoded P12 password with randomly generated one
- Add p12_password column to certificates table
- Update certificate serializer to include p12 password in response
- Remove deprecated certificate revocation logic
- Add tests for certificate revocation functionality
- Implement async P12 generation via Sidekiq job
- Add job uniqueness to prevent parallel certificate generation

Migration changes:
- Replace p12_password_digest with p12_password column
- Add safety measures for column removal
2025-04-16 11:47:52 +03:00
oleghasjanov
0925fa4d4b feat: Implement new certificate generation service
- Refactor certificate generation into a dedicated service object
- Add Base64 encoding for p12 binary data storage
- Implement serial number generation and storage
- Remove deprecated certificate generation code
- Simplify certificate status checks
- Update certificate controller to use new generator
- Add proper password handling for p12 containers

The main changes include:
- Moving certificate generation logic to CertificateGenerator service
- Proper handling of binary data encoding
- Implementing serial number tracking for future CRL support
- Removing old certificate generation and validation code
- Simplifying the certificate lifecycle management

This commit provides a more maintainable and robust certificate
generation system while preparing for future CRL implementation.
2025-04-16 11:47:52 +03:00
oleghasjanov
5355397025 feat: improve certificate download extensions
Update certificate download functionality to use appropriate file extensions:
- Use .p12 extension for PKCS#12 files
- Keep .pem extension for PEM-encoded files (CSR, CRT, private key)

This change ensures that downloaded certificate files have the correct extension based on their format, making it easier for users to identify and use the files correctly.
2025-04-16 11:47:52 +03:00
oleghasjanov
51035d1ddf Add UserCertificate model with tests
- Create UserCertificate model with validations and certificate renewal logic
- Add tests for UserCertificate model functionality
- Add user certificates fixtures for testing
- Add association between ApiUser and UserCertificates
- Add required gems: dry-types, dry-struct, openssl
- Add /certs to .gitignore

This commit implements the base model for storing user certificates in the
database, including private keys, CSRs, certificates and P12 files. The model
includes basic validation and certificate renewal functionality, with
comprehensive test coverage.
2025-04-16 11:47:50 +03:00
oleghasjanov
dc37223bc2 feat: Add admin contacts validation settings migration
Add migration to create new settings for admin contacts validation:
- admin_contacts_required_for_org: boolean setting to require admin contacts for organizations
- admin_contacts_required_for_minors: boolean setting to require admin contacts for minors
- admin_contacts_allowed_ident_type: array setting to specify allowed identification types for admin contacts

The migration safely handles existing settings by checking for their presence before creation.
Default values are set to maintain backwards compatibility while enforcing new validation rules.
2025-02-04 11:47:41 +02:00
tsoganov
0085f99e02 Modified identification request webhook 2024-11-14 08:37:09 +02:00
tsoganov
637cabf95f Handling contact verifications 2024-11-14 08:37:09 +02:00
oleghasjanov
6ff5e55a24 business contact validation + tests 2024-11-08 12:45:12 +02:00
tsoganov
c7d3788a36 Updated contact name data type in schemas 2024-08-22 11:25:54 +03:00
Sergei Tsoganov
1c8a46bd89 Added committed param to white ip 2023-07-07 16:05:06 +03:00
Sergei Tsoganov
ded8917adf Added ip whitelist max count and validation 2023-05-31 14:51:40 +03:00
Sergei Tsoganov
9b5b6b415a Removed unnecessary migration files to reverse jsnob to json 2023-01-17 10:16:21 +02:00
Sergei Tsoganov
b4429a53f7 Created migration files for log_domains table json columns 2023-01-03 12:16:31 +02:00
Sergei Tsoganov
2714c262db Fixed migrations and modified object data type of log_domains table 2022-12-14 09:56:26 +02:00
Sergei Tsoganov
e70be801c2 Changed log_domains object_changes default value 2022-12-07 12:31:41 +02:00
Sergei Tsoganov
a682681625 Added indexes to log_domains table 2022-12-07 11:22:42 +02:00
Thiago Youssef
59fe7dffbe Migrate publishable field name to registrant_publishable 2022-11-25 09:31:50 +02:00
Thiago Youssef
5c129b24ef Add publishable contact field 2022-11-25 09:31:50 +02:00
Sergei Tsõganov
5e6dbac462 Refactored monthly invoice generation job 2022-10-12 09:59:21 +03:00
Timo Võhmar
e0e9c43575
Merge pull request #2397 from internetee/2342-notification-text-lenght
Increase notification text field length on database
2022-09-29 17:05:44 +03:00
Thiago Youssef
a6a3f72032 Merge branch 'master' into 2334-remove-que 2022-09-28 07:40:02 -03:00
Thiago Youssef
fcbbd4b2d3 Merge branch 'master' into 2342-notification-text-lenght 2022-09-26 06:30:37 -03:00
Sergei Tsõganov
d589aa1681 Created job for sending monthly invoices 2022-08-21 19:11:39 +03:00
Thiago Youssef
bd3d7d98ff Increase notification text field length on database 2022-07-01 10:12:35 -03:00
Thiago Youssef
e5ff4a675a Merge branch 'master' into 2363-remove-statuses-before-force-delete 2022-06-29 11:34:29 -03:00
Timo Võhmar
b909bf3408
Merge pull request #2266 from internetee/eis_billing-request-to-generate-invoice
added api service for generate invoice in billing system
2022-06-02 14:42:36 +03:00
Thiago Youssef
7ccc02055a Migration check column existance 2022-05-25 15:05:39 +03:00
Thiago Youssef
943dedd194 Remove deprecated statuses_before_force_delete field 2022-05-24 16:36:21 +03:00
olegphenomenon
a6fbdb8b5c fixed migration issue 2022-05-17 13:01:37 +03:00
olegphenomenon
d1e64577b4 changed request, add new column to invoce 2022-05-11 11:17:47 +03:00
Thiago Youssef
750bf0821c Remove contact code cache from domain contacts table 2022-05-04 14:38:14 +03:00
olegphenomenon
87e8258572 dnssec ans ns validation message 2022-04-28 11:32:40 +03:00
olegphenomenon
9766650ae4 renamed column in auction from type to platform 2022-04-27 11:57:43 +03:00
olegphenomenon
d8c0ba2432 add new column 2022-04-27 11:57:43 +03:00
Thiago Youssef
f8612d687f Remove email verification legacy code 2022-04-13 11:51:08 +03:00
Thiago Youssef
611538464d Comment que jobs migrations 2022-04-06 12:21:20 +03:00
Thiago Youssef
9c6876d121 Remove que_jobs table 2022-04-06 11:58:22 +03:00
Sergei Tsõganov
216048463d Moved notifications about automatic contact name update to bulk change poll message 2022-03-25 18:08:55 +02:00
Timo Võhmar
c232e8ade6
Merge pull request #2271 from internetee/2216-update-fd-notes
Update FD notes when basis of the FD is changed
2022-02-23 17:17:58 +02:00
olegphenomenon
8a6ea167c2 added new field to nameserver and job 2022-02-09 15:15:08 +02:00
dinsmol
57e156e407 Add email_history to registrar 2022-01-14 01:17:51 +03:00
dinsmol
c47b093a45 Implement FD notes updating 2022-01-14 00:39:31 +03:00
olegphenomenon
d896e5f716 added new fields into nameserver model 2022-01-06 14:33:06 +02:00
Timo Võhmar
6c4c5ab43b
Merge pull request #2226 from internetee/replace-validation-events-indexes-to-concurrency
Replace validation events indexes to concurrency
2021-11-29 10:42:56 +02:00
olegphenomenon
461bdf272f updated conditions 2021-11-26 16:38:33 +02:00
olegphenomenon
a23274143d added gin index to json and fixed compared 2021-11-26 15:21:23 +02:00
olegphenomenon
aba3448744 added concurrency indexes 2021-11-25 21:05:58 +02:00