43c90af97d
[ #78 ] policy: Fix counter key prefix name
...
* Fix counterKey: "counter" may conflict with 'c' prefix.
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-02-20 11:58:33 +03:00
d9f523ee07
[ #78 ] policy: Introduce ListTargets method for Policy contract
...
* Introduce a new method ListTargets that lists targets by kind.
* Slightly fix key mapping - also concatenate kind to prefix.
* Write unit-tests.
* Regenerate rpcclient.
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-02-20 11:57:34 +03:00
55a4163951
[ #76 ] frostfsid: Add GetGroupByName method
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2024-02-01 16:06:17 +03:00
6e72d0b3b4
[ #75 ] policy: Fix compiler error
...
Refs #71
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-30 16:37:37 +03:00
e0f6fe3bc9
[ #61 ] policy: Shorten policy contract keys
...
* Map long entity names to 8-bytes long numbers.
* Add desctiption to docs.
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-01-30 12:27:57 +00:00
074a241272
[ #74 ] proxy: Allow to own NNS domains
...
Because `Verify` is flexible enough, any funds transferred to the proxy
contract can be moved out with the help of the committee. Thus,
implementing onNEP11Payment() is enough.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-29 14:03:06 +03:00
2efebf4206
[ #74 ] tests: Do not compile proxy contract twice
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-29 14:02:18 +03:00
60e8abbf49
[ #74 ] tests: Actualize proxy contract deploy parameters
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-29 14:02:18 +03:00
93781f1149
[ #66 ] policy: Support IteratorChainsByPrefix method
...
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-01-26 17:41:04 +03:00
da8ec5b447
[ #73 ] nns: Allow 2-byte domain names
...
frostfs-node uses `.ns` domain, must be supported.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-25 16:21:58 +03:00
f2a82aa635
[ #69 ] frostfsid: Add new client init function
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2024-01-15 11:29:15 +03:00
a7c45fdd0d
[ #68 ] policy: Add Version() method
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-11 15:39:19 +03:00
5363aaf16a
[ #68 ] rpcclient: Regenerate wrappers after neo-go update
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-11 15:39:19 +03:00
86e6d4d334
[ #64 ] commonclient: Use partial unwrap in ReadIteratorItems()
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-29 14:06:46 +00:00
8c7925d3c0
[ #64 ] go.mod: Update neo-go
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-29 14:06:46 +00:00
bce7ef18c8
[ #63 ] frostfsid/client: Support proxy
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-12-18 11:43:46 +03:00
23e85d11c4
[ #53 ] proxy: Allow using proxy by trusted accounts
...
It was reverted because `Verify` with arguments was not well supported
by the client software. Thanks to recent `System.Runtime.CurrentSigners`
call from neo-go v0.104.0 we can take the best of both worlds.
Verify with argument still looks better (less overhead), but this
implementation should work too. Sadly, `overloads` are not of much use
here because verification routines take the _first_ method from the
manifest, albeit with arbitrary number of arguments.
This reverts commit a0b73150c6
with some
changes on-top.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-15 14:34:26 +03:00
4dcb575caa
[ #56 ] Add multi-level domain name support
...
Signed-off-by: Ekaterina Lebedeva <ekaterina.lebedeva@yadro.com>
2023-12-13 15:22:12 +03:00
897f538a3c
[ #48 ] frostfsid: add GetSubjectByName method
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-12-11 09:36:47 +00:00
3fb511ac15
[ #48 ] frostfsid: Support empty namespaces
...
Require ns to create subject.
Since we don't allow move subject from one ns to another -
drop add/remove subject to/from namespace
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-12-11 09:36:47 +00:00
a0b73150c6
Revert "[ #53 ] proxy: Allow using proxy by trusted accounts"
...
This reverts commit bc3186575f
.
2023-12-08 11:10:00 +03:00
bc3186575f
[ #53 ] proxy: Allow using proxy by trusted accounts
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-07 10:22:47 +03:00
d7cb550a5e
[ #53 ] common: Use interop.Hash160 in address producing functions
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-06 19:47:43 +03:00
91b36a7eb3
[ #53 ] go.mod: Update neo-go to the laster master
...
Pickup new neotest features.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-06 19:47:43 +03:00
94cd3dca83
[ #53 ] go.mod: Resolve ambiguous import
...
There was a problem with `go mod tidy`.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-12-06 19:47:15 +03:00
a1b61d3949
[ #55 ] Makefile: Add config.yml to NEF dependencies
...
It can affects manifest, so recompilation is needed.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-29 09:22:01 +03:00
f28d918727
[ #55 ] frostfsid: Add missing safe methods
...
All of them can be called in read-only context.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-29 09:22:01 +03:00
7864fc3c4d
[ #55 ] policy: Fix typo in ErrNotAuthorized
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-29 09:21:58 +03:00
edf3c26047
[ #54 ] policy: Accept []byte as name
...
Strings cannot contain non-UTF8 bytes, this is ensured in JSON
marshaling/unmarshaling. At the same time using human-readable strings
can be rather restrictive, because we have 64-byte key limit.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 13:49:57 +03:00
f30fb324ff
[ #55 ] policy: Swap signature check order
...
While implementing the changes for FrostFS ID it became obvious, that
committee signature check can be rather costly (`getCommittee` call +
multiaddress construction + checking witness). In real scenarious it
will mostly fail, so it makes sense do it last.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 13:49:57 +03:00
0dda536d4a
[ #55 ] policy: Fix admin processing in _deploy
...
Refactoring remnants, there is a single admin now.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 13:49:57 +03:00
43097d2152
[ #55 ] frostfsid: Use single admin instead of many
...
Autorization can be dedicated to a separate contract, iterating over
multiple keys can be costly. Also add committee as "default" admin:
everything is allowed for it.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 13:49:56 +03:00
03d0c10852
[ #55 ] Apply gofumpt
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 12:32:33 +03:00
21bfe3ebf0
[ #52 ] policy: Regenerate RPC wrapper
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-28 12:32:33 +03:00
e56e8d02ee
[ #52 ] policy: Add admin
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-24 10:34:22 +03:00
20f86e96b2
[ #51 ] policy: Fix tests
...
We don't want to return Null from contract when list is empty
because generated policy client cannot parse this.
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-20 15:43:07 +03:00
5cc34f98e9
[ #51 ] policy: Support Get and ListByPrefix methods
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-17 14:36:48 +03:00
dd5919348d
[ #48 ] frostfsid: Update storage scheme doc
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-09 17:39:25 +03:00
e2e406932f
[ #48 ] frostfsid: Support Group updating
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-09 16:14:11 +03:00
501b0c5e3c
[ #48 ] container: Don't invoke frostfsid contract
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:44:10 +03:00
8affa716e0
[ #48 ] frostfsid: Add client tests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:44:10 +03:00
95fe7781d5
[ #48 ] frostfsid: Add user-friendly client
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:44:06 +03:00
b76f592095
[ #48 ] Add commonclient package
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:44:01 +03:00
5cc810096f
[ #48 ] frostfsid: Add tests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:40:39 +03:00
c8b14d1376
[ #48 ] frostfsid: Generate wrappers
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:39:21 +03:00
edfab37677
[ #48 ] frostfsid: Update contract
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-11-08 15:39:19 +03:00
0ea65ca637
[ #50 ] Drop audit and reputation contracts
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 16:20:43 +03:00
d890a7eba4
[ #50 ] Replace interface{}
with any
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 15:18:48 +03:00
dacac0b53d
[ #50 ] Makefile: Add code formatting targets
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 15:00:05 +03:00
6e9c770142
[ #50 ] Drop notaryless deploy parameter
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 14:56:21 +03:00