2014.12.20 MSS Code Factory CF All 2.1.12714 All 2.0 project security models refreshed by 2.0.12713

All 2.1 projects have been refreshed with the code produced by MSS Code Factory 2.0.12713,
with the possible exception of CFCore itself (I should do a refresh build of MSS Code Factory
2.0 to make sure the changes to the CFCore model are published properly and available.)

The enhancements to the object models to support the security code I'm prototyping in
CFDbTest 2.1 have been applied to all of the projects, so they're ready to receive
their web interfaces as soon as I convert the prototype code to rules (likely several
more days, possibly even more than a week until that's done.  I want to have the prototype
fleshed out completely before I convert it to rules -- it's faster and easier to edit
prototype code with Eclipse than manufactured code through the rule base and job runs.)

The CFDbTest 2.1 prototype code has the outline of the web interface for initializing the
"system" account password on first use, logging in to the security manager web interface,
creating an account, creating security devices, selecting the default security device,
deleting security devices, and logging out of the web interface.

I still need to add password reset requests (both HTML/Web and Application passwords),
support for changing the password on request, and support for cancelling a password change
request in case it was spoofed somehow.

After that, I need to start with basic security emails issued via a Java Mail resource, so
you can configure the mail server to use easily and the reply-to account information for
the messages that get sent.

Then I'll be ready to add the encryption support for the security emails.  Emails regarding
security will be sent encrypted by the public key for the user's default device.  Once I've
got that working for password resets, I'll be changing the create account forms to provide
for the specification of the default device name and public key upload as part of the account
creation process.  So even the initial account registration email will be sent encrypted by
the user's public key.

If I'm going to bother implementing security, I'm going to do the best job of it that I can
in light of recent events regarding secure computing in the modern age.

Once I've got all those back-end services coded and prototyped, I'll work on getting that
security manager web interface converted to rules, and manufacture an update of the resulting
code for all the projects.  This current release has the database changes that future code
will require, so 2.1.12714 just prepares for that secure future.