GroupServer Features
GroupServer provides a scalable architecture that allows people to
use email or the web to participate in secure message board forums.
Participate Using Email or the Web
GroupServer allows people to
use the web and email simultaneously!
GroupServer is flexible, so members can work in whatever way
is most suitable for them.
Each member does not have to keep track of how other people
are using the system: GroupServer ensures that all members
see the same messages, no matter what interface they use.
Using email, GroupServer is like a mailing list, similar to
Mailman
or a newsgroup.
Each group has a unique email address.
A member of a group can post to the email-address of the group,
and it will be relayed to all the other members of the group
— after appropriate moderation and permission checking.
A group member can have multiple addresses
associated with his or her profile, and set up delivery on a
group-by-group basis.
Using the web, a GroupServer group is like a message board forum.
Members log in, browse their groups, read the topics discussed in
the groups, and can post new messages to the topics.
As well as viewing web-pages, conversations can be closely
followed using
web feeds.
Each group member has
a profile,
which can be used to find out biographical information of the
group members.
Private and Secure
In GroupServer, users do not need to create and remember
arbitrary identifiers and system generated passwords.
Email addresses are used as unique identifiers.
In addition a user is never assigned a password by the system.
Instead, the user creates a password when he or she logs in for
the first time.
If a user has difficulty logging in, the password-reset system
sends out an email message that contains a link to the user's
Set Password page.
(The link can only be used once, just to be a bit more secure.)
GroupServer uses role-based access control
(RBAC)
provided by
the Zope development
framework.
This allows almost any action, such as editing a page, to be
restricted to an individual or a group.
However, to reduce the tedium of securing groups, three simple
settings can be used to set the privacy of a group:
- Public, where anyone can view the group and messages;
- Private, where anyone can view the group, but only group
members can view the messages;
- Secret, where only group members can view the group and
messages.
Because of the role-based access control, GroupServer provides
multiple levels of delegation.
Anonymous users can see the messages in public groups, but
cannot post, allowing people to lurk in peace.
Group members can post messages, while group administrators can
alter the membership of the group.
Site administrators can start groups, as well as alter the
membership of any group.
Zope administrators can alter the objects in the underlying
system, including fine-grained permissions and page templates.
Finally, system administrators have access to the underlying
code that runs GroupServer, and can do just about anything!
Scalable
GroupServer is made of
four main components:
a web server, a mail server, an object database, and a
relational database.
Each component can be place on a separate machine, or multiple
machines in the case of the database and web server.
Even in a single-machine configuration, GroupServer can handle
tens of thousands of users posting and viewing messages
throughout the day.
GroupServer is more flexible than scaling a single site over
multiple machines.
A single machine can contain multiple Zope installations,
and each Zope installation can contain multiple GroupServer
instances, and each instance can contain multiple sites, and
each site can contain multiple groups!
This should provide enough flexibility for most situations.