import boto3 import json from botocore.client import Config s3 = boto3.client('s3', endpoint_url='http://minio:9000', aws_access_key_id='minioadmin', aws_secret_access_key='minioadmin123', config=Config(signature_version='s3v4'), region_name='us-east-1') def set_public_policy(bucket_name): policy = { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"AWS": ["*"]}, "Action": ["s3:GetObject"], "Resource": [f"arn:aws:s3:::{bucket_name}/*"] } ] } policy_string = json.dumps(policy) try: s3.put_bucket_policy(Bucket=bucket_name, Policy=policy_string) print(f"Bucket '{bucket_name}' siyosati 'Public Read' qilib belgilandi.") except Exception as e: print(f"Xato: {e}") if __name__ == "__main__": set_public_policy('media') set_public_policy('static')