From d5072d20f09489be796a1b8b90cc7a340df6ca22 Mon Sep 17 00:00:00 2001 From: alexvanin Date: Wed, 15 Jan 2020 17:05:53 +0300 Subject: [PATCH 1/3] docs: Add doc for container ACL field ACL support still under development. Detailed documentation on container access rules will be added later. --- docs/container.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/docs/container.md b/docs/container.md index ef2ba19..6693980 100644 --- a/docs/container.md +++ b/docs/container.md @@ -21,6 +21,8 @@ - [container/types.proto](#container/types.proto) - Messages + - [AccessControlList](#container.AccessControlList) + - [AccessGroup](#container.AccessGroup) - [Container](#container.Container) @@ -164,6 +166,7 @@ via consensus in inner ring nodes | Capacity | [uint64](#uint64) | | Capacity defines amount of data that can be stored in the container (doesn't used for now). | | OwnerID | [bytes](#bytes) | | OwnerID is a wallet address | | rules | [netmap.PlacementRule](#netmap.PlacementRule) | | Rules define storage policy for the object inside the container. | +| Group | [AccessGroup](#container.AccessGroup) | | Container ACL. | | Meta | [service.RequestMetaHeader](#service.RequestMetaHeader) | | RequestMetaHeader contains information about request meta headers (should be embedded into message) | | Verify | [service.RequestVerificationHeader](#service.RequestVerificationHeader) | | RequestVerificationHeader is a set of signatures of every NeoFS Node that processed request (should be embedded into message) | @@ -193,6 +196,29 @@ via consensus in inner ring nodes + + +### Message AccessControlList + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| List | [AccessGroup](#container.AccessGroup) | repeated | List of access groups. | + + + + +### Message AccessGroup + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| AccessMode | [uint32](#uint32) | | Group access mode. | +| UserGroup | [bytes](#bytes) | repeated | Group members. | + + ### Message Container @@ -205,6 +231,7 @@ The Container service definition. | Salt | [bytes](#bytes) | | Salt is a nonce for unique container id calculation. | | Capacity | [uint64](#uint64) | | Capacity defines amount of data that can be stored in the container (doesn't used for now). | | Rules | [netmap.PlacementRule](#netmap.PlacementRule) | | Rules define storage policy for the object inside the container. | +| List | [AccessControlList](#container.AccessControlList) | | Container ACL. | From e4d761be06c4acfd1767e476b43614320bd03aa6 Mon Sep 17 00:00:00 2001 From: alexvanin Date: Wed, 15 Jan 2020 17:10:45 +0300 Subject: [PATCH 2/3] object: Remove tombstone creation field in tombstone header Tombstone header contains timestamp when tombstone was created. This timestamp duplicates object creation timestamp in object system header. This commit removes redundant field. --- object/types.pb.go | Bin 79938 -> 79138 bytes object/types.proto | 5 +---- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/object/types.pb.go b/object/types.pb.go index 459e124b053ab4c032498513b277709a36b089bb..b5a1e785e86633310ad63204e2a52d2b49da629d 100644 GIT binary patch delta 5256 zcmY+IJIh@~6ov^2hC~z_wJ=IR5E2sD_X~nzXDJ9`VY9DIKm?mp2)hnea~S-a+WCU|TnJ9B2%?Op3#Yrfx~-}v$G8_(XmcmD2;ch0YT@aX)_!re*dlOSARadfA3m-{^zr=k7a&vw>S-3TDLl_P4nRPt>RQR=|6Lu){-B#K7IG> zcyt`o&fal`^9v`tBJC8M9Lx0Gp`hh_y`W&6;)mlj@OzJp0b@$euE-dM|0Ma{@N0oB z8+YATPS(?+q2ANw64Bd|zDL#>p<9K1{T$cybBhlRcDGvZirowAi2iCvgN`m7GKMQU z4NS#;gHtu4vx8XF>3@y90dHF_H-78GY;XzdjHC|NYxY~#72|t;T{I6#ASM`ZoVWeK5&oz%sxrO}Yut!$6HU(rnv^|l z2wF*~8C!ZQ+DbFHrgFj0EuzKE>~SqC^jAm<+6kQ%-WJ4d!xM{mtnfiPl2W9MnF}pm zO@;??(ub99dPrZDX~4;@L4OI{K@AB8tzRUq3%D~F1iB$Sg}|V>W`DupiJbwVLT_bm z^6EhJWWu68lG6>=NI@oXWr48P=rKL4m06&%QCqCi2p-IhF{!#ZdQZp zW&n^ICAI+>GQK1$rT17gTMYzEol;4!b?ifX#Yz5b4)!7u!T`HTW$|OB)Uab-hX#Ss z6YFE)Zil5SfJJ%&13zfI8EdO4G!m1FgMXx*_M#3qXw~H;uLz(V-@bmo}{5681^*H zt1xv(s{P2^vlHm84P5^0u*;gv?2cVWa7of&Ly$~6EOV%FM|oDA6(FUzz+jRX&)Iat zLwkKpWJ!U+$V|gECXOQ)Vjju3*8zYRL@c)pg5+3WhpXoqeB8L`LDOcys)C1i#*(cAx7C$puk;PA6&3*3hR)aAhtMZ)k|W&8-y*$ zGPxk5#AKf4FJ~U7D)ZgSozY{yE7g~Y=_^?&Tkx#dm@JY8*;mmTV=4C-Y3phS^qWMb z)QO)t>!l;C7|9!7CP7w7gC)Z&>Xct5L^31Ew?kzm`5;=(cAAP2CHZgHwkY&A$|PxU zxX$kv4Uh=QK-;oB?Qr1ZuL6urjocEj-MYo8+7>;}%pWUhBEM^fHQNy@#{z@vAmPkq zJZ+uQt`A{JHe@Cjd^knF4nLiU?~_Lz-66HN~XlH4b# zDyz|qtz-U8KKN#7kfD`Qjc-P4Jm)9iI$TS2LS>TpD7Dgh>GN`&%w>%l+vRrX&qcp> z^dGHmEcPvBq6xQP*hhm=fB}ee%SC7h7(U-*G+nT)9r>DrYvzZOq*Gw-Xhm%N~4rtba*upl7UtIj_NXs zuZKKlSnpP&3hWAwc@D3K1HCVr{5Ir99=-XF-j&M7D&gBX&u(fmyl_EkV9leY;~c9k zQXk%;~Jsoc+BJi2qIK)C(F zK~wWnMqT~z==-I@ X`t|AE4}bgg+O@x~UA_PO=Ewg6&K53L delta 5357 zcmZXYO^Y2>5QYf}$YdabAcCR{h(dJK{_cAb(T%8k5x4zG5H(@~xw~Gt(S@K~!IdDo zl_<=@oeO`CAjDswb)M%$2i!D$`Kd?uU$R!IP`UT&SQEu&H43{;!y6=kA0V(U6Y>cK0OyU zjct0LtMnY$+3>w$PdTLTH9~7w%k*X9OVgvEN()<37b_*_TIB6HQ7q|u(X+~z<xQsrp~=eLtaLvlMhxv3m67>_ArJ? zM6LM&gu-L)yK^)FcuouY4fnblXrad#Y0Ns92$^(b#u{|Z>(FWF2PDX-3m_Gs5S5%< zD1fH`fL*(#s@y3Xn`WLR=T;Mk_m+35aYCL{YuZ@*gBn&0Fas2{7#NOq2(px>68#M^ zajSM$m}f$Dpe;>Bc>eRD#q1h+D+iRVsTTB()s9@Pv8%zIheFXWLC9hey`(`35NOFS zx<)|N;)61Bhr+ks?70+N$xmL*I@uGhB?UEt){SU1oEz}RwEDM?gw7J*w4x>5>_jvB zN9>Xm?F~bT1_d>2vg$@^Vu!L|t`J>sEL$K(%tj?C)oRdG4omMrllXw^nvnxa9Vp1g ztJ&s?G-(4b(BE%XG+vo*CTqknX|QJZg6mcQ6Oz`dGxx1)-fhe3*I=_+vap70S#Qe? zRv1W@T+!&XgU8-fC4|AS26M$1lSq)P0K?OhVv(4*plA-*>PEbc4jv*l6USJ|6ZGXn zA-%FmA{_ACdYeVTF~g}P7m>L_tR~!%>u0h=7<6G&f6Id1X9T^9$hdVcN@k<VgQ1gMJnc|H;PE9aN*ZKh=K@>QU zkP;*2FS0@A>cB+8x63o69>QBR5Gxm)e00>3)wkf_FiC23YU)YA2{m>UvznN12bm+! zlQFm^7Xi+v$>J#8vg((G_ZDrA)dd>tZ*ojQAY;x8nK9ob7mTF9q-i(i534wOaqJ={ z2hTa$DAk@O^s<5N+SVx%$C#BgxS&!GJ3BNOd|5#sS(@fA(}d-$0lS?=b4ubvFdZ5Q zXl5&mg-X*%>)O^O`Q>&=@bc_}ghYg)-?`nXI+!zQFdNK$Gf;n&ZJ)3cSxfde)7tvT zOhf2<(-44b=a`a(Nc}W_Ijr09Bxk#3nva8mIb8wI3@{F=Udtw_T%`_tHL|I3PgCszC0fHp50qG~m2Ma5yS0gcS< z1u>7C1U-`sW1CH@mwbT1_k6{2{>-;x@NvR*go~z;P%`UH9B=vRwC{NZF3Ak*CU+Se zkqvri%3(tK(#CGs&=9Uf;2affg?l`a-@Po@L7mi00~>#|$T;g4WqW(D@5cA!LXCOi zX5l&`ts73;1FTu6)J(n>4z}2RR#46Lj^-$(q#=gBR7wx?I^LbtC5r(OGN(}aw?ntF zU_QrPx8efw`e@^?+O9XFsGJ(%O^qNWPt)XUJ`3DJCBwdk%@mck`Dr4XYmgf z|Jl$CiBKZScW``Gl6Xq^dA25~-oQc*AW@WgB*d^yJ&q@WYnSt%l3WddZm;pOIC9wk zEKIIwGD(B#yooOuVA)FqGO@P`Z!DXjiFo96_rE>)ZSnY(H-5c;?aE_UFP{4Ik+=T=IdV+F diff --git a/object/types.proto b/object/types.proto index d2bbaab..8f50f76 100644 --- a/object/types.proto +++ b/object/types.proto @@ -48,10 +48,7 @@ message Header { } } -message Tombstone { - // Epoch when tombstone was created - uint64 Epoch = 1; -} +message Tombstone {} message SystemHeader { // Version of the object structure From dea70026259ea7a6de540db24682bfafcdc6abbf Mon Sep 17 00:00:00 2001 From: alexvanin Date: Wed, 15 Jan 2020 17:11:39 +0300 Subject: [PATCH 3/3] docs: Update doc for object proto file Tombstone header in the object does not contain timestamp now. --- docs/object.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/object.md b/docs/object.md index 9e7efe6..e9248ba 100644 --- a/docs/object.md +++ b/docs/object.md @@ -441,10 +441,6 @@ in distributed system. -| Field | Type | Label | Description | -| ----- | ---- | ----- | ----------- | -| Epoch | [uint64](#uint64) | | Epoch when tombstone was created | -