Merge pull request #1916 from ishank011/publicshares

This commit is contained in:
Alex Unger
2021-04-14 14:10:20 +02:00
committed by GitHub
6 changed files with 56 additions and 15 deletions
@@ -0,0 +1,3 @@
Enhancement: Add config for public share SQL driver
https://github.com/owncloud/ocis/pull/1916
+1
View File
@@ -85,6 +85,7 @@ func (c *cs3backend) GetUserByClaims(ctx context.Context, claim, value string, w
func (c *cs3backend) Authenticate(ctx context.Context, username string, password string) (*cs3.User, error) {
res, err := c.authProvider.Authenticate(ctx, &gateway.AuthenticateRequest{
Type: "basic",
ClientId: username,
ClientSecret: password,
})
+18 -5
View File
@@ -126,11 +126,14 @@ func sharingConfigFromStruct(c *cli.Context, cfg *config.Config) map[string]inte
"file": cfg.Reva.Sharing.UserJSONFile,
},
"sql": map[string]interface{}{
"db_username": cfg.Reva.Sharing.UserSQLUsername,
"db_password": cfg.Reva.Sharing.UserSQLPassword,
"db_host": cfg.Reva.Sharing.UserSQLHost,
"db_port": cfg.Reva.Sharing.UserSQLPort,
"db_name": cfg.Reva.Sharing.UserSQLName,
"db_username": cfg.Reva.Sharing.UserSQLUsername,
"db_password": cfg.Reva.Sharing.UserSQLPassword,
"db_host": cfg.Reva.Sharing.UserSQLHost,
"db_port": cfg.Reva.Sharing.UserSQLPort,
"db_name": cfg.Reva.Sharing.UserSQLName,
"password_hash_cost": cfg.Reva.Sharing.PublicPasswordHashCost,
"enable_expired_shares_cleanup": cfg.Reva.Sharing.PublicEnableExpiredSharesCleanup,
"janitor_run_interval": cfg.Reva.Sharing.PublicJanitorRunInterval,
},
},
},
@@ -140,6 +143,16 @@ func sharingConfigFromStruct(c *cli.Context, cfg *config.Config) map[string]inte
"json": map[string]interface{}{
"file": cfg.Reva.Sharing.PublicJSONFile,
},
"sql": map[string]interface{}{
"db_username": cfg.Reva.Sharing.UserSQLUsername,
"db_password": cfg.Reva.Sharing.UserSQLPassword,
"db_host": cfg.Reva.Sharing.UserSQLHost,
"db_port": cfg.Reva.Sharing.UserSQLPort,
"db_name": cfg.Reva.Sharing.UserSQLName,
"password_hash_cost": cfg.Reva.Sharing.PublicPasswordHashCost,
"enable_expired_shares_cleanup": cfg.Reva.Sharing.PublicEnableExpiredSharesCleanup,
"janitor_run_interval": cfg.Reva.Sharing.PublicJanitorRunInterval,
},
},
},
},
+12 -9
View File
@@ -41,15 +41,18 @@ type StorageRegistry struct {
// Sharing defines the available sharing configuration.
type Sharing struct {
Port
UserDriver string
UserJSONFile string
UserSQLUsername string
UserSQLPassword string
UserSQLHost string
UserSQLPort int
UserSQLName string
PublicDriver string
PublicJSONFile string
UserDriver string
UserJSONFile string
UserSQLUsername string
UserSQLPassword string
UserSQLHost string
UserSQLPort int
UserSQLName string
PublicDriver string
PublicJSONFile string
PublicPasswordHashCost int
PublicEnableExpiredSharesCleanup bool
PublicJanitorRunInterval int
}
// Port defines the available port configuration.
+21
View File
@@ -71,6 +71,27 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag {
EnvVars: []string{"STORAGE_SHARING_PUBLIC_JSON_FILE"},
Destination: &cfg.Reva.Sharing.PublicJSONFile,
},
&cli.IntFlag{
Name: "public-password-hash-cost",
Value: flags.OverrideDefaultInt(cfg.Reva.Sharing.PublicPasswordHashCost, 11),
Usage: "the cost of hashing the public shares passwords",
EnvVars: []string{"STORAGE_SHARING_PUBLIC_PASSWORD_HASH_COST"},
Destination: &cfg.Reva.Sharing.PublicPasswordHashCost,
},
&cli.BoolFlag{
Name: "public-enable-expired-shares-cleanup",
Value: flags.OverrideDefaultBool(cfg.Reva.Sharing.PublicEnableExpiredSharesCleanup, true),
Usage: "whether to periodically delete expired public shares",
EnvVars: []string{"STORAGE_SHARING_PUBLIC_ENABLE_EXPIRED_SHARES_CLEANUP"},
Destination: &cfg.Reva.Sharing.PublicEnableExpiredSharesCleanup,
},
&cli.IntFlag{
Name: "public-janitor-run-interval",
Value: flags.OverrideDefaultInt(cfg.Reva.Sharing.PublicJanitorRunInterval, 60),
Usage: "the time period in seconds after which to start a janitor run",
EnvVars: []string{"STORAGE_SHARING_PUBLIC_JANITOR_RUN_INTERVAL"},
Destination: &cfg.Reva.Sharing.PublicJanitorRunInterval,
},
}
flags = append(flags, TracingWithConfig(cfg)...)
+1 -1
View File
@@ -41,7 +41,7 @@ func SharingSQLWithConfig(cfg *config.Config) []cli.Flag {
Name: "user-sql-name",
Value: flags.OverrideDefaultString(cfg.Reva.Sharing.UserSQLName, ""),
Usage: "Name of the SQL database",
EnvVars: []string{"STORAGE_SHARING_USER_SQL_Name"},
EnvVars: []string{"STORAGE_SHARING_USER_SQL_NAME"},
Destination: &cfg.Reva.Sharing.UserSQLName,
},
}