In general, I would say that database security systems are all about
enforcing security that people can depend on.  And Mark Logic's security
system is no different.  After all, at salesforce.com, every one shares
the same relational database instance.  This type of model leads to a
lot less management overhead, and generally a lot less trouble.  So
having all those clients share the same database instance would probably
be the approach we would recommend.
 
That being said, if the client is set on running an "instance" model
(ie. one effective marklogic instance per client) rather than a shared
services model (ie. one marklogic instance shared across clients,
enforced by security), there's no *technical* reason not to do it, as
long as the number of clients is limited.  Administration and operations
is going to be more complex (and not just managing different security
databases; remember you've just decided to do N times as many backups,
for instance).  If the number of clients is large, you may start to run
into issues with the number of databases you now need to manage.  And
presumably you'll need to have a different app server for each client?
And you'll probably want to consider having an admin interface for each
security database, so you can manage it through the GUI if you want
to...
 
It's not so much that there's an actual limit on the number of
databases, it's just that many aspects of server management,
administration and communication are not necessarily designed or
optimized to run hundreds of small databases within the same cluster.
 
I think it's fair to say that this would not be an approach that we
would consider a "best practice".  But if the number of clients is 3,
neither would it necessarily end up whacking you upside the head...
 
ian

________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Neil
Bradley
Sent: Sunday, December 23, 2007 6:54 AM
To: 'General Mark Logic Developer Discussion'
Subject: [MarkLogic Dev General] Multiple Security Databases?



Hi,

 

I have a client who wants to build a web application that would be made
accessible to several of their clients. Each of those clients would have
an administrator who would log-in to the site and be able to add more
users from that client. 

 

These clients are very sensitive about their own data, and I am
proposing that there would be a separate document database for each. 

 

But I am wondering if it is also practical to have a separate security
database for each client too?

 

This would help sell the concept of a single server being used for
theirs and other's data, as we could say that their documents AND their
security details would be separate from other's data (maybe even on a
separate drive, for the really paranoid!).

 

It would also be useful because the additional users added be each
client administrator could not clash with the names of users from other
clients.

 

However, is that a practical model? 

 

I would not expect to use the MarkLogic admin interface to create users
etc in each security database, but are there too many complications to
make this approach practical? I noted the following the adminsitrator's
guide"...

 

"However, security objects created through the Admin Interface are
stored in the Security database by default. Mark Logic recommends
leaving databases connected to Security as their security database."

 

 

Neil.

 

_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to