Some use cases, like receive-only MTAs, need domain users for receiving emails, but have no real need for passwords since they will never use submission. Today, that is not supported, and those use-cases require the administrator to come up with a password unnecessarily, adding complexity and possibly risk. This patch implements "receive-only users", which don't have a valid password, thus exist for the purposes of delivering mail, but always fail authentication. See https://github.com/albertito/chasquid/issues/44 for more details and rationale. Thanks to xavierg who suggested this feature on IRC.
33 lines
444 B
Protocol Buffer
33 lines
444 B
Protocol Buffer
|
|
syntax = "proto3";
|
|
|
|
package userdb;
|
|
option go_package = "blitiri.com.ar/go/chasquid/internal/userdb";
|
|
|
|
message ProtoDB {
|
|
map<string, Password> users = 1;
|
|
}
|
|
|
|
message Password {
|
|
oneof scheme {
|
|
Scrypt scrypt = 2;
|
|
Plain plain = 3;
|
|
Denied denied = 4;
|
|
}
|
|
}
|
|
|
|
message Scrypt {
|
|
uint64 logN = 1;
|
|
int32 r = 2;
|
|
int32 p = 3;
|
|
int32 keyLen = 4;
|
|
bytes salt = 5;
|
|
bytes encrypted = 6;
|
|
}
|
|
|
|
message Plain {
|
|
bytes password = 1;
|
|
}
|
|
|
|
message Denied { }
|