Let $(R,+,\cdot)$ be a finite ring. Obviously, $(R,+)$ is an abelian group; however the unit (multiplicative) group need not be abelian. My question is the following problem:
Given the dual group $\widehat{R}$ of $(R,+)$, under what condition on $R$ is it true that $$\#\{\text{primitive* characters in $(\widehat{R},\cdot)$}\}=\#R^\times,$$ i.e. when does the number of primitive* characters of the abelian group $(R,+)$ equal the number of units in $R$?
*My apologies. A character $\chi\in\widehat{R}$ is said to be primitive with respect to a collection $\mathcal{C}$ of subgroups of $(R,+)$, if $\chi$ does not descend to a character on any quotient group $R/S$ for all $S\in \mathcal{C}$. To descend here means that $\chi$ is constant on all coset of $R/S$.
NOTES
The archetypal example is the ring $(\{0,1,2,\dotsc,n-1\},+,\cdot)$ of integers modulo $n$ where the answer is positive. I am not sure if the result is true for commutative rings.