Password Character Composition are requirements are enforced by the Password Validator.
Password Character Composition is typically enabled within a Password Policy with various restrictions on the composition of the password in an attempt to increase Password Entropy
This is an Example ALL TOO Common Password Character Composition Example:
All printing ASCII RFC 20 characters as well as the space character SHOULD be acceptable in memorized secrets. Unicode ISO/ISC 10646 characters SHOULD be accepted as well.
It's also worth noting their point on Unicode characters; there are many precedents of sites restricting perfectly valid language characters simply because they don't fit into what a site's developers consider "normal". Then, of course, there are passwords like this:
The βοΈ π π¦ βͺ on the mountain π π . π
π» aπ£ to π π. A π° of π’, and it π likeβοΈοΈ the π. The π¨ is πΊ like this π βοΈ βοΈ π . π
π» keep it in, βοΈ π‘ βοΈοΈ tried.
If someone really wants to have a password that's an emoji representation of the first verse of "Let It Go" from Frozen, good on 'em!
The other aspect of special characters is this from NIST:
Verifiers SHOULD NOT impose other composition rules (e.g., requiring mixtures of different character types or prohibiting consecutively repeated characters) for memorized secrets
Wait - what?! You mean people aren't required to have lowercase, uppercase, numbers and symbols?! This goes against so much of conventional password wisdom and it's not until you step back and think about it logically that it really makes sense.
Microsoft has precisely the same guidance as NIST in their documentation: "Eliminate character-composition requirements"