1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
4 #ifndef CEPH_RGW_POLICY_S3V2_KEYWORDS_H
5 #define CEPH_RGW_POLICY_S3V2_KEYWORDS_H
10 enum class TokenKind
{
11 pseudo
, top
, statement
, cond_op
, cond_key
, version_key
, effect_key
,
20 Version
, Id
, Statement
,
22 /// Statement level tokens
23 Sid
, Effect
, Principal
, NotPrincipal
, Action
, NotAction
,
24 Resource
, NotResource
, Condition
,
26 /// Condition Operators!
27 /// Any of these, except Null, can have an IfExists variant.
30 StringEquals
, StringNotEquals
, StringEqualsIgnoreCase
,
31 StringNotEqualsIgnoreCase
, StringLike
, StringNotLike
,
34 NumericEquals
, NumericNotEquals
, NumericLessThan
, NumericLessThanEquals
,
35 NumericGreaterThan
, NumericGreaterThanEquals
,
38 DateEquals
, DateNotEquals
, DateLessThan
, DateLessThanEquals
,
39 DateGreaterThan
, DateGreaterThanEquals
,
48 IpAddress
, NotIpAddress
,
50 // Amazon Resource Names! (Does S3 need this?)
51 ArnEquals
, ArnNotEquals
, ArnLike
, ArnNotLike
,
56 #if 0 // Keys are done at runtime now
62 awsMultiFactorAuthPresent
,
63 awsMultiFactorAuthAge
,
75 s3x_amz_grant_permission
,
77 s3x_amz_server_side_encryption
,
78 s3x_amz_server_side_encryption_aws_kms_key_id
,
79 s3x_amz_metadata_directive
,
80 s3x_amz_storage_class
,
89 s3x_amz_content_sha256
,
139 #endif // CEPH_RGW_POLICY_S3V2_KEYWORDS_H