免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

怎么禁止S3用戶刪除Object

這篇文章主要講解了“怎么禁止S3用戶刪除Object”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么禁止S3用戶刪除Object”吧!

成都創新互聯公司專業為企業提供大化網站建設、大化做網站、大化網站設計、大化網站制作等企業網站建設、網頁設計與制作、大化企業網站模板建站服務,10年大化做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。

需求描述:需要關閉某些S3賬號的刪除權限,但是默認DELETE操作是由bucket WIRTE權限進行控制的,無法單獨拆分DELETE操作。

解決思路:
1. 過濾前端HTTP請求的DELETE操作(需要寫點代碼)
2. 修改S3內置用戶的metadata信息,本文用的就是這個方法。

1. 確認用戶metadata信息

root@demo# radosgw-admin metadata get user:s3user

{
    "key": "user:s3user",
    "ver": {
        "tag": "_HUtHU_6yBqHTSzDLb9y8tjX",
        "ver": 2
    },
    "mtime": 1493110079,
    "data": {
        "user_id": "s3user",
        "display_name": "s3user",
        "email": "",
        "suspended": 0,
        "max_buckets": 1000,
        "auid": 0,
        "subusers": [],
        "keys": [
            {
                "user": "s3user",
                "access_key": "xxx",
                "secret_key": "xxx"
            }
        ],
        "swift_keys": [],
        "caps": [],
        "op_mask": "read, write,delete", #這里有delete權限
        "default_placement": "",
        "placement_tags": [],
        "bucket_quota": {
            "enabled": false,
            "max_size_kb": -1,
            "max_objects": -1
        },
        "user_quota": {
            "enabled": false,
            "max_size_kb": -1,
            "max_objects": -1
        },
        "temp_url_keys": []
    }
}

2. 修改用戶metadata信息

導出用戶metadata

root@demo# radosgw-admin metadata get user:s3user > s3user.json

修改用戶metadata

修改生成的s3user.json文件,修改"op_mask",刪除“delete”字段

"op_mask": "read, write",

導入用戶metadata

root@demo6# radosgw-admin metadata put  user:s3user < s3user.json

確認配置是否生效

root@demo# radosgw-admin metadata get user:s3user

{
    "key": "user:s3user",
    "ver": {
        "tag": "_HUtHU_6yBqHTSzDLb9y8tjX",
        "ver": 2
    },
    "mtime": 1493110079,
    "data": {
        "user_id": "s3user",
        "display_name": "s3user",
        "email": "",
        "suspended": 0,
        "max_buckets": 1000,
        "auid": 0,
        "subusers": [],
        "keys": [
            {
                "user": "s3user",
                "access_key": "xxx",
                "secret_key": "xxx"
            }
        ],
        "swift_keys": [],
        "caps": [],
        "op_mask": "read, write", #delete權限沒了
        "default_placement": "",
        "placement_tags": [],
        "bucket_quota": {
            "enabled": false,
            "max_size_kb": -1,
            "max_objects": -1
        },
        "user_quota": {
            "enabled": false,
            "max_size_kb": -1,
            "max_objects": -1
        },
        "temp_url_keys": []
    }
}

3. 驗證

from boto.s3.connection import S3Connectionimport boto

endpoint = 's3.ceph.work'bucket_name = 'test1'access_key = 'xx'secret_key = 'xx'local_file = '/tmp/ct.shutdown'key_name = 'new_file'conn = boto.connect_s3(
    aws_access_key_id=access_key,
    aws_secret_access_key=secret_key,
    host=endpoint,
    is_secure=False,
    calling_format=boto.s3.connection.SubdomainCallingFormat(),
    validate_certs=True,
)

bucket = conn.create_bucket(bucket_name)
key_ = bucket.new_key(key_name)
key_.set_contents_from_filename(local_file)#方法1bucket.delete_keys([key_name])#方法2# key_.delete()#方法3# bucket.delete_key(key_name)

上面3種方式都會提示403錯誤

Traceback (most recent call last):
.....
boto.exception.S3ResponseError: S3ResponseError: 403 Forbidden
<?xml version="1.0" encoding="UTF-8"?><Error><Code>AccessDenied</Code></Error>

感謝各位的閱讀,以上就是“怎么禁止S3用戶刪除Object”的內容了,經過本文的學習后,相信大家對怎么禁止S3用戶刪除Object這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!

網站名稱:怎么禁止S3用戶刪除Object
文章鏈接:http://m.newbst.com/article38/jeigsp.html

成都網站建設公司_創新互聯,為您提供網站收錄App開發服務器托管營銷型網站建設響應式網站建站公司

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站優化排名