首次提交:初始化项目
This commit is contained in:
25
009-基础设施/002-s3/set-bucket-policy.sh
Normal file
25
009-基础设施/002-s3/set-bucket-policy.sh
Normal file
@@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
# 自动为新创建的存储桶设置 download(公开只读)策略
|
||||
|
||||
# 配置 mc 客户端
|
||||
mc alias set myminio http://localhost:9000 ${MINIO_ROOT_USER} ${MINIO_ROOT_PASSWORD}
|
||||
|
||||
# 持续监控并设置新桶的策略
|
||||
while true; do
|
||||
# 获取所有存储桶
|
||||
BUCKETS=$(mc ls myminio 2>/dev/null | awk '{print $NF}' | sed 's/\///')
|
||||
|
||||
for BUCKET in $BUCKETS; do
|
||||
# 检查当前策略
|
||||
CURRENT_POLICY=$(mc anonymous get myminio/${BUCKET} 2>/dev/null | grep -o "download\|upload\|public" || echo "none")
|
||||
|
||||
# 如果策略为 none(私有),则设置为 download
|
||||
if [ "$CURRENT_POLICY" = "none" ]; then
|
||||
echo "Setting download policy for bucket: ${BUCKET}"
|
||||
mc anonymous set download myminio/${BUCKET}
|
||||
fi
|
||||
done
|
||||
|
||||
# 每 30 秒检查一次
|
||||
sleep 30
|
||||
done
|
||||
Reference in New Issue
Block a user