簡體   English   中英

PHP中的亞馬遜AWS putBucketLogging參數

[英]Amazon AWS putBucketLogging parameters in PHP

我正在編寫連接到亞馬遜S3存儲的腳本。 該腳本應該創建2個桶:

  1. Bucket用於數據

  2. 鏟斗用於原木

我成功創建了兩個存儲桶但我無法設置日志記錄。 下面顯示了我用於啟用存儲桶記錄的代碼

 $result = $client->putBucketLogging(array(
        'Bucket' => $bucket,
        'LoggingEnabled' => array(
            'TargetBucket' => $bucket . '-LOG',
            'TargetGrants'=>array(
              'Grantee'=>array(
                  'DisplayName'=>'user.name',
                  'Type'=>'CanonicalUser'
              ),  
            ),
             'TargetPrefix' => 'LOG-',
        ),
    ));

在amazon中,AWS API for PHP版本2編寫為Bucket,LoggingEnabled和Type是必需的。 但是文檔沒有說明如何准確地實現那些參數。

你能幫我一下putBucketLogging方法的配置數組結構嗎?

您還可以使用服務的API文檔作為參考,有時包含有關如何專門構造請求的某些數據類型的更多詳細信息。 PUT Bucket LoggingS3 API文檔提供了有關如何指定被授權者的更多詳細信息。

此外,您不應在存儲桶名稱中使用大寫字母(請參閱存儲桶命名規則 )。

在手冊中搜索后,方法putBucketLogging的php數組是

    $result = $client->putBucketLogging(array(
        'Bucket' => $bucket,
        'LoggingEnabled' => array(
            'TargetBucket' => $bucket . '-log',
            'TargetGrants' => array(
                'Grant' => array(
                    'Grantee' => array(
                        'Type' => 'AmazonCustomerByEmail',
                        'EmailAddress' => 'email@email.com',
                    ),
                    'Permission' => 'FULL_CONTROL',
                ),
            ),
            'TargetPrefix' => 'log-',
        ),
    ));

但是,啟用日志記錄失敗,但異常告訴我必須在日志桶上設置權限...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM