Thanks for the discussion Colin and Proven. CLIs can be difficult to design when there are complicated use cases. Did we consider having CLI flags only for the common case? I would think that the common case is SCRAM for one user.
For the complicated and less common cases they have to provide a "configuration file" that contains all of the SCRAM users and their passwords. The common case could be: --scram-user alice --scram-algo SHA-256 --scram-password ... --scram-salt ... --scram-iterations ... If the user wants to provide multiple scram configurations they need to use --scram-config <path-to-file>. The file would be human readable (maybe JSON or .properties) and contains the scram configuration for multiple users. -- -José