[
https://issues.apache.org/jira/browse/DERBY-2872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12541790
]
Jørgen Løland commented on DERBY-2872:
--------------------------------------
While working on DERBY-3189, I realized that the functional specification is
not 100% clear when it comes to security measures for replication.
I plan to update the funcspec with the following information in a few days
unless there are comments:
Master side:
* Authentication is turned on: Normal Derby connection policy - the user and
password must be valid.
* Authorization is turned on: The user must be valid and be the database owner
of the database that will be replicated.
* System privileges (DERBY-2109) is turned on: The user must be valid and have
the "replication" system privilege.
Slave side - start slave:
As for master, but with the two-phase strategy used for encryption of
databases. This means first booting the slave database for authentication and
authorization, shut the slave database down and reboot it in slave mode.
Slave side - stop slave and failover:
Cannot get the authentication service from the slave database since it is not
fully booted yet. Can authenticate users on system level only. Authorization
cannot be checked. If system privileges is turned on, the user must have the
"replication" system privilege.
Since we are not able to check authorization while in slave mode, stop slave
and failover commands will only be accepted from the master while the
master-slave connection is working. If the slave-master connection is down, any
authenticated/properly system-privileged user can issue the commands on the
Derby serving the slave database.
> Add Replication functionality to Derby
> --------------------------------------
>
> Key: DERBY-2872
> URL: https://issues.apache.org/jira/browse/DERBY-2872
> Project: Derby
> Issue Type: New Feature
> Components: Miscellaneous
> Affects Versions: 10.4.0.0
> Reporter: Jørgen Løland
> Assignee: Jørgen Løland
> Attachments: master_classes_1.pdf, poc_master_v2.diff,
> poc_master_v2.stat, poc_master_v2b.diff, poc_slave_v2.diff,
> poc_slave_v2.stat, poc_slave_v2b.diff, poc_slave_v2c.diff,
> proof-of-concept_v2b-howto.txt, proof_of_concept_master.diff,
> proof_of_concept_master.stat, proof_of_concept_slave.diff,
> proof_of_concept_slave.stat, replication_funcspec.html,
> replication_funcspec_v2.html, replication_funcspec_v3.html,
> replication_funcspec_v4.html, replication_funcspec_v5.html,
> replication_funcspec_v6.html, replication_funcspec_v7.html,
> replication_script.txt, slave_classes_1.pdf
>
>
> It would be nice to have replication functionality to Derby; many potential
> Derby users seem to want this. The attached functional specification lists
> some initial thoughts for how this feature may work.
> Dag Wanvik had a look at this functionality some months ago. He wrote a proof
> of concept patch that enables replication by copying (using file system copy)
> and redoing the existing Derby transaction log to the slave (unfortunately, I
> can not find the mail thread now).
> DERBY-2852 contains a patch that enables replication by sending dedicated
> logical log records to the slave through a network connection and redoing
> these.
> Replication has been requested and discussed previously in multiple threads,
> including these:
> http://mail-archives.apache.org/mod_mbox/db-derby-user/200504.mbox/[EMAIL
> PROTECTED]
> http://www.nabble.com/Does-Derby-support-Transaction-Logging---t2626667.html
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.