Hi everyone,
I have been experimenting with TrueNAS for Homeserver and SoHo-Use and I like it very much.
I have two instances running at home and at my parents' house, one still running TrueNAS-SCALE-22.12.2, the other one running -22.12.3.2.
So far, I have set up all user accounts with usernames in the format "prename.surname" (e.g. "john.doe", just like in our email-addresses), which wasn't any problem at all.
However, yesterday I tried adding a new user on the 22.12.3.2 machine using the same format and it failed with an validation error.
The "."-character is not (or no longer?) included in the valid character list.
On my 22.12.2 machine I can still add usernames with periods without any problems.
So my question is: Are periods allowed in Usernames?
They were apparantly allowed and I already have a couple of users with periods. I am not very keen on mixing username formats since the same format is already used as windows logins and email addresses. So I am kinda hoping, that this is a bug in 22.12.3.x?
The online help is not accurate at this point. Or at least it leaves room for interpretation.
The tooltip in the "add user tab" e.g. shows the following.
My interpretation (of course :)) is, that the period before the dollar sign is not part of the unallowed chars but is just ending the sentence.
Help: Username
Usernames can be up to 32 characters long. Usernames cannot begin with a hyphen (-) or contain a space, tab, or these characters: , : + & # % ^ ( ) ! @ ~ * ? < > =. $ can only be used as the last character of the username.
Thanks, everyone.
Lukas
Error Message:
ValidationErrors
[EINVAL] username: Valid characters for a username are: 'a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, _, -, $'
I have been experimenting with TrueNAS for Homeserver and SoHo-Use and I like it very much.
I have two instances running at home and at my parents' house, one still running TrueNAS-SCALE-22.12.2, the other one running -22.12.3.2.
So far, I have set up all user accounts with usernames in the format "prename.surname" (e.g. "john.doe", just like in our email-addresses), which wasn't any problem at all.
However, yesterday I tried adding a new user on the 22.12.3.2 machine using the same format and it failed with an validation error.
The "."-character is not (or no longer?) included in the valid character list.
On my 22.12.2 machine I can still add usernames with periods without any problems.
So my question is: Are periods allowed in Usernames?
They were apparantly allowed and I already have a couple of users with periods. I am not very keen on mixing username formats since the same format is already used as windows logins and email addresses. So I am kinda hoping, that this is a bug in 22.12.3.x?
The online help is not accurate at this point. Or at least it leaves room for interpretation.
The tooltip in the "add user tab" e.g. shows the following.
My interpretation (of course :)) is, that the period before the dollar sign is not part of the unallowed chars but is just ending the sentence.
Help: Username
Usernames can be up to 32 characters long. Usernames cannot begin with a hyphen (-) or contain a space, tab, or these characters: , : + & # % ^ ( ) ! @ ~ * ? < > =. $ can only be used as the last character of the username.
Thanks, everyone.
Lukas
Error Message:
ValidationErrors
[EINVAL] username: Valid characters for a username are: 'a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, _, -, $'
Error: Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 204, in call_method result = await self.middleware._call(message['method'], serviceobj, methodobj, params, app=self)
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1344, in _call return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/service.py", line 940, in create rv = await self.middleware._call( File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1344, in _call return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1377, in nf args, kwargs = clean_and_validate_args(args, kwargs)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1371, in clean_and_validate_args
raise verrors
middlewared.service_exception.ValidationErrors: [EINVAL] username: Valid characters for a username are: 'a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, _, -, $'