Browse Source

renamed reAuth to reconnect

Maurits van der Schee 5 years ago
parent
commit
089ebd0ea2
1 changed files with 19 additions and 2 deletions
  1. 19
    2
      README.md

+ 19
- 2
README.md View File

859
 
859
 
860
 Two forms of multi-tenancy are supported:
860
 Two forms of multi-tenancy are supported:
861
 
861
 
862
+ - Single database, where every table has a tenant column (using the "multiTenancy" middleware).
863
+ - Multi database, where every tenant has it's own database (using the "reconnect" middleware).
864
+
865
+Below is an explanation of the corresponding middlewares.
866
+
862
 #### Multi-tenancy middleware
867
 #### Multi-tenancy middleware
863
 
868
 
864
-You may use the "multiTenancy" middleware when you have a multi-tenant database. 
865
-If your tenants are identified by the "customer_id" column you can use the following handler:
869
+You may use the "multiTenancy" middleware when you have a single multi-tenant database. 
870
+If your tenants are identified by the "customer_id" column, then you can use the following handler:
866
 
871
 
867
     'multiTenancy.handler' => function ($operation, $tableName) {
872
     'multiTenancy.handler' => function ($operation, $tableName) {
868
         return ['customer_id' => 12];
873
         return ['customer_id' => 12];
871
 This construct adds a filter requiring "customer_id" to be "12" to every operation (except for "create").
876
 This construct adds a filter requiring "customer_id" to be "12" to every operation (except for "create").
872
 It also sets the column "customer_id" on "create" to "12" and removes the column from any other write operation.
877
 It also sets the column "customer_id" on "create" to "12" and removes the column from any other write operation.
873
 
878
 
879
+NB: You may want to retrieve the customer id from the session (the "$_SESSION" variable).
880
+
874
 #### Reconnect middleware
881
 #### Reconnect middleware
875
 
882
 
883
+You may use the "reconnect" middleware when you have a separate database for each tenant.
884
+If the tenant has it's own database named "customer_12", then you can use the following handler:
885
+
886
+    'reconnect.databaseHandler' => function () {
887
+        return 'customer_12';
888
+    },
889
+
890
+This will make the API reconnect to the database specifying "customer_12" as the database name. If you don't want
891
+to use the same credentials, then you should also implement the "usernameHandler" and "passwordHandler".
876
 
892
 
893
+NB: You may want to retrieve the database name from the session (the "$_SESSION" variable).
877
 
894
 
878
 ### Prevent database scraping
895
 ### Prevent database scraping
879
 
896
 

Loading…
Cancel
Save