@@ -51,33 +51,57 @@ public class MinioStsSetup implements Callable<Void> {
5151 @ CommandLine .Option (names = {"--maxSessionDuration" }, description = "Bucket Prefix for STS vaults." , required = false )
5252 Integer maxSessionDuration ;
5353
54+ @ CommandLine .Option (names = {"--createbucketPolicyName" }, description = "Policy name for accessing Katta STS buckets. Defaults to {bucketPrefix}createbucketPolicy." )
55+ String createbucketPolicyName ;
56+
57+ @ CommandLine .Option (names = {"--accessbucketPolicyName" }, description = "Policy name for accessing Katta STS buckets. Defaults to {bucketPrefix}accessbucketpolicy." )
58+ String accessbucketPolicyName ;
59+
5460 @ Override
5561 public Void call () throws Exception {
56- final String createbucketPolicyName = "cipherduckcreatebucket" ;
62+ if (createbucketPolicyName == null ) {
63+ createbucketPolicyName = String .format ("%screatebucketpolicy" , bucketPrefix );
64+ }
65+ if (accessbucketPolicyName == null ) {
66+ accessbucketPolicyName = String .format ("%saccessbucketpolicy" , bucketPrefix );
67+ }
5768
58- final JSONObject miniocreatebucketpolicy = new JSONObject (IOUtils .toString (KattaSetupCli .class .getResourceAsStream ("/setup/minio_sts/createbucketpolicy.json" ), Charset .defaultCharset ()));
5969 final MinioAdminClient minioAdminClient = new MinioAdminClient .Builder ()
6070 .credentials (accessKey , secretKey )
6171 .endpoint (endpointUrl ).build ();
6272
63- // /mc admin policy create myminio cipherduckcreatebucket /setup/minio_sts/createbucketpolicy.json
64- final JSONArray statements = miniocreatebucketpolicy .getJSONArray ("Statement" );
65- for (int i = 0 ; i < statements .length (); i ++) {
66- final List <String > list = statements .getJSONObject (i ).getJSONArray ("Resource" ).toList ().stream ().map (Objects ::toString ).map (s -> s .replace ("katta" , bucketPrefix )).toList ();
67- statements .getJSONObject (i ).put ("Resource" , list );
73+ // /mc admin policy create myminio cipherduckcreatebucket /setup/minio_sts/createbucketpolicy.json
74+ {
75+ final JSONObject miniocreatebucketpolicy = new JSONObject (IOUtils .toString (KattaSetupCli .class .getResourceAsStream ("/setup/minio_sts/createbucketpolicy.json" ), Charset .defaultCharset ()));
76+ final JSONArray statements = miniocreatebucketpolicy .getJSONArray ("Statement" );
77+ for (int i = 0 ; i < statements .length (); i ++) {
78+ final List <String > list = statements .getJSONObject (i ).getJSONArray ("Resource" ).toList ().stream ().map (Objects ::toString ).map (s -> s .replace ("katta" , bucketPrefix )).toList ();
79+ statements .getJSONObject (i ).put ("Resource" , list );
80+ }
81+ minioAdminClient .addCannedPolicy (createbucketPolicyName , miniocreatebucketpolicy .toString ());
82+ System .out .println (minioAdminClient .listCannedPolicies ().get (createbucketPolicyName ));
83+ }
84+ // /mc admin policy create myminio cipherduckaccessbucket /setup/minio_sts/accessbucketpolicy.json
85+ {
86+ final JSONObject minioaccessbucketpolicy = new JSONObject (IOUtils .toString (KattaSetupCli .class .getResourceAsStream ("/setup/minio_sts/accessbucketpolicy.json" ), Charset .defaultCharset ()));
87+ final JSONArray statements = minioaccessbucketpolicy .getJSONArray ("Statement" );
88+ for (int i = 0 ; i < statements .length (); i ++) {
89+ final List <String > list = statements .getJSONObject (i ).getJSONArray ("Resource" ).toList ().stream ().map (Objects ::toString ).map (s -> s .replace ("katta" , bucketPrefix )).toList ();
90+ statements .getJSONObject (i ).put ("Resource" , list );
91+ }
92+ minioAdminClient .addCannedPolicy (accessbucketPolicyName , minioaccessbucketpolicy .toString ());
93+ System .out .println (minioAdminClient .listCannedPolicies ().get (accessbucketPolicyName ));
6894 }
69- minioAdminClient .addCannedPolicy (createbucketPolicyName , miniocreatebucketpolicy .toString ());
70- System .out .println (minioAdminClient .listCannedPolicies ().get (createbucketPolicyName ));
7195
7296
73- // /mc admin policy create myminio cipherduckaccessbucket /setup/minio_sts/accessbucketpolicy.json
74- //
75- //
76- // /mc idp openid add myminio cryptomator \
77- // config_url="${HUB_KEYCLOAK_URL}${HUB_KEYCLOAK_BASEPATH}/realms/${HUB_KEYCLOAK_REALM}/.well-known/openid-configuration" \
78- // client_id="cryptomator" \
79- // client_secret="ignore-me" \
80- // role_policy="cipherduckcreatebucket"
97+ // /mc idp openid add myminio cryptomator \
98+ // config_url="${HUB_KEYCLOAK_URL}${HUB_KEYCLOAK_BASEPATH}/realms/${HUB_KEYCLOAK_REALM}/.well-known/openid-configuration" \
99+ // client_id="cryptomator" \
100+ // client_secret="ignore-me" \
101+ // role_policy="cipherduckcreatebucket"
102+ // {
103+ // minioClient.
104+ // }
81105// /mc idp openid add myminio cryptomatorhub \
82106// config_url="${HUB_KEYCLOAK_URL}${HUB_KEYCLOAK_BASEPATH}/realms/${HUB_KEYCLOAK_REALM}/.well-known/openid-configuration" \
83107// client_id="cryptomatorhub" \
0 commit comments