Skip to content

Commit

Permalink
Merge pull request #404 from mittwald/doc/mysql-password-policies
Browse files Browse the repository at this point in the history
Mention password policies for MySQL users in all appropriate places
  • Loading branch information
ayalcin-mw authored Jan 27, 2025
2 parents c51d8f2 + 51468b0 commit de2b253
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 0 deletions.
7 changes: 7 additions & 0 deletions docs/api/security/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"label": "API security",
"position": 10,
"link": {
"type": "generated-index"
}
}
18 changes: 18 additions & 0 deletions docs/api/security/passwords.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Password security

<!--
NOTE: This document is linked from various places with in the API reference.
DO NOT change the document ID or the header IDs
-->

Various API calls enforce password policies. This document serves as a reference for different password policies enforced by the mStudio API.

## MySQL user passwords {#mysql}

Passwords for MySQL users must fulfill the following requirements:

- at least 8 characters
- at least one lowercase character
- at least one uppercase character
- at least one digit
- at least one special character out of `#!~%^*_+-=?{}()<>|.,;`
17 changes: 17 additions & 0 deletions generator/overlays/v2/overlay.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,14 @@ actions:
accessIpMask:
description: An IP range (in CIDR notation) for which access should be allowed.
example: "203.0.113.123/32"
externalAccess:
description: >
Describes if users should be able to connection to this database from external
sources. Defaults to `false` when not set.
password:
description: >
The password for the database user. This password has to comply with the password
policy specified for MySQL users in the [password security specification](/docs/v2/api/security/passwords#mysql).
- target: $.components.schemas['de.mittwald.v1.database.CreateMySqlUserWithDatabase'].properties.accessIpMask
remove: true
- target: $.components.schemas['de.mittwald.v1.database.CreateMySqlUserWithDatabase'].properties
Expand All @@ -22,6 +30,10 @@ actions:
description: >
Describes if users should be able to connection to this database from external
sources. Defaults to `false` when not set.
password:
description: >
The password for the database user. This password has to comply with the password
policy specified for MySQL users in the [password security specification](/docs/v2/api/security/passwords#mysql).
- target: $.components.schemas['de.mittwald.v1.database.characterSettings'].properties
update:
characterSet:
Expand All @@ -30,6 +42,11 @@ actions:
collation:
description: A valid MySQL collation
example: utf8mb4_general_ci
- target: $.paths['/v2/mysql-users/{mysqlUserId}/password'].patch.requestBody.content['application/json'].schema.properties.password
update:
description: >
The password for the database user. This password has to comply with the password
policy specified for MySQL users in the [password security specification](/docs/v2/api/security/passwords#mysql).
- target: $.paths['/v2/dns-zones/{dnsZoneId}/record-sets/{recordSet}'].put.parameters[?(@.name=="recordSet")]
update:
Expand Down

0 comments on commit de2b253

Please sign in to comment.