Developer Ethics

Kanidm is a project that will store, process and present people's personal data. This means we have a responsibility to respect the data of all people who could be using our system - many who interact indirectly or do not have a choice in this platform.

Rights of people

All people using this software should expect to have the right to:

  • Self control over their data, including the ability to alter or delete at any time.
  • Free from harmful discrimination of any kind
  • Informed consent over control and privacy of their data, including access and understand data held and shared on their behalf
  • To be able to use and access this software regardless of ability, culture or language.

Examples of situations for consideration

Ability to be forgotten

Deletion is delete not flagging

When an account is deleted it must be truly deleted, not just flagged for future delete. Note that some functionality like the recycle bin, we must keep the account details, but a recycle bin purge does truly delete the account.

Self determination and autonomy

Self name change

People should be able to change their own name at anytime. Consider divorce, leaving abusive partners or other personal decisions around why a name change is relevant.

This is why names are self-service writeable at any time.

Free from harmful discrimination of any kind

Cultural and Social awareness of name formats

All name fields should be case sensitive utf8 with no max or min length limit. This is because names can take many forms such as.

  • firstname middlename lastname
  • firstname lastname
  • firstname firstname lastname
  • firstname lastname lastname
  • firstname
  • lastname firstname

And many many more that are not listed here. This is why our names are displayName as a freetext UTF8 field, with case sensitivity and no limits.

Access to legalName field

legalName should only be on a "need to know" basis, and only collected if required. This is to help people who may be stalked or harassed, or otherwise conscious of their privacy.

To use and access this software regardless of ability


Please raise an issue with the project - we want to know if we have missed anything or can improve what we are doing.