diff --git a/src/lib-sieve/storage/dict/sieve-dict-script.c b/src/lib-sieve/storage/dict/sieve-dict-script.c
index 67850f049674ae7c6ae1f0a92787017a27eb8ee5..eb28f7d4dae8452338d3e11dbf02fbba9bc65715 100644
--- a/src/lib-sieve/storage/dict/sieve-dict-script.c
+++ b/src/lib-sieve/storage/dict/sieve-dict-script.c
@@ -81,8 +81,11 @@ static int sieve_dict_script_open
 	path = t_strconcat
 		(DICT_SIEVE_NAME_PATH, dict_escape_string(name), NULL);
 
+	struct dict_op_settings set = {
+		.username = dstorage->username,
+	};
 	ret = dict_lookup
-		(dscript->dict, script->pool, path, &data_id, &error);
+		(dscript->dict, &set, script->pool, path, &data_id, &error);
 	if ( ret <= 0 ) {
 		if ( ret < 0 ) {
 			sieve_script_set_critical(script,
@@ -109,6 +112,8 @@ static int sieve_dict_script_get_stream
 {
 	struct sieve_dict_script *dscript =
 		(struct sieve_dict_script *)script;
+	struct sieve_dict_storage *dstorage =
+		(struct sieve_dict_storage *)script->storage;
 	const char *path, *name = script->name, *data, *error;
 	int ret;
 
@@ -118,8 +123,11 @@ static int sieve_dict_script_get_stream
 	path = t_strconcat
 		(DICT_SIEVE_DATA_PATH, dict_escape_string(dscript->data_id), NULL);
 
+	struct dict_op_settings set = {
+		.username = dstorage->username,
+	};
 	ret = dict_lookup
-		(dscript->dict, dscript->data_pool, path, &data, &error);
+		(dscript->dict, &set, dscript->data_pool, path, &data, &error);
 	if ( ret <= 0 ) {
 		if ( ret < 0 ) {
 			sieve_script_set_critical(script,
diff --git a/src/lib-sieve/storage/dict/sieve-dict-storage.c b/src/lib-sieve/storage/dict/sieve-dict-storage.c
index 371d9fa042e0fcc82423930731b3aac4458316f6..7f508165d761e20d11bcc6a90deab5cdddd2ee5e 100644
--- a/src/lib-sieve/storage/dict/sieve-dict-storage.c
+++ b/src/lib-sieve/storage/dict/sieve-dict-storage.c
@@ -93,7 +93,6 @@ int sieve_dict_storage_get_dict
 
 	if ( dstorage->dict == NULL ) {
 		i_zero(&dict_set);
-		dict_set.username = dstorage->username;
 		dict_set.base_dir = svinst->base_dir;
 		ret = dict_init(dstorage->uri, &dict_set, &dstorage->dict, &error);
 		if ( ret < 0 ) {