OSDN Git Service

Create ossClient.go (#574)
[bytom/vapor.git] / vendor / github.com / aliyun / aliyun-oss-go-sdk / sample / bucket_policy.go
1 package sample
2
3 import (
4         "fmt"
5
6         "github.com/aliyun/aliyun-oss-go-sdk/oss"
7 )
8
9 // BucketPolicySample shows how to set, get and delete the bucket policy configuration
10 func BucketPolicySample() {
11         // New client
12         client, err := oss.New(endpoint, accessID, accessKey)
13         if err != nil {
14                 HandleError(err)
15         }
16
17         // Create the bucket with default parameters
18         err = client.CreateBucket(bucketName)
19         if err != nil {
20                 HandleError(err)
21         }
22
23         // the policy string
24         var policyInfo string
25         policyInfo = `
26         {
27                 "Version":"1",
28                 "Statement":[
29                         {
30                                 "Action":[
31                                         "oss:GetObject",
32                                         "oss:PutObject"
33                                 ],
34                                 "Effect":"Deny",
35                                 "Principal":"[123456790]",
36                                 "Resource":["acs:oss:*:1234567890:*/*"]
37                         }
38                 ]
39         }`
40
41         // Set policy
42         err = client.SetBucketPolicy(bucketName, policyInfo)
43         if err != nil {
44                 HandleError(err)
45         }
46
47         // Get Bucket policy
48         ret, err := client.GetBucketPolicy(bucketName)
49         if err != nil {
50                 HandleError(err)
51         }
52         fmt.Println("Bucket policy:", ret)
53
54         // Delete Bucket policy
55         err = client.DeleteBucketPolicy(bucketName)
56         if err != nil {
57                 HandleError(err)
58         }
59
60         // Delete bucket
61         err = client.DeleteBucket(bucketName)
62         if err != nil {
63                 HandleError(err)
64         }
65
66         fmt.Println("BucketPolicySample completed")
67 }