docs: Update docs with new token locations

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
This commit is contained in:
Stanislav Bogatyrev 2020-08-18 16:51:28 +03:00 committed by Stanislav Bogatyrev
parent e5f78eb927
commit 579a618f72
6 changed files with 183 additions and 150 deletions

View file

@ -6,6 +6,9 @@
- [acl/types.proto](#acl/types.proto)
- Messages
- [BearerToken](#neo.fs.v2.acl.BearerToken)
- [BearerToken.Body](#neo.fs.v2.acl.BearerToken.Body)
- [BearerToken.Body.TokenLifetime](#neo.fs.v2.acl.BearerToken.Body.TokenLifetime)
- [EACLRecord](#neo.fs.v2.acl.EACLRecord)
- [EACLRecord.FilterInfo](#neo.fs.v2.acl.EACLRecord.FilterInfo)
- [EACLRecord.TargetInfo](#neo.fs.v2.acl.EACLRecord.TargetInfo)
@ -25,6 +28,44 @@
<!-- end services -->
<a name="neo.fs.v2.acl.BearerToken"></a>
### Message BearerToken
BearerToken has information about request ACL rules with limited lifetime
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body | [BearerToken.Body](#neo.fs.v2.acl.BearerToken.Body) | | Bearer Token body |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature of BearerToken body |
<a name="neo.fs.v2.acl.BearerToken.Body"></a>
### Message BearerToken.Body
Bearer Token body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl_table | [EACLTable](#neo.fs.v2.acl.EACLTable) | | EACLTable carries table of extended ACL rules |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | OwnerID carries identifier of the token owner |
| lifetime | [BearerToken.Body.TokenLifetime](#neo.fs.v2.acl.BearerToken.Body.TokenLifetime) | | Token expiration and valid time period parameters |
<a name="neo.fs.v2.acl.BearerToken.Body.TokenLifetime"></a>
### Message BearerToken.Body.TokenLifetime
Lifetime parameters of the token. Filed names taken from rfc7519.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| exp | [uint64](#uint64) | | Expiration Epoch |
| nbf | [uint64](#uint64) | | Not valid before Epoch |
| iat | [uint64](#uint64) | | Issued at Epoch |
<a name="neo.fs.v2.acl.EACLRecord"></a>
### Message EACLRecord

View file

@ -146,7 +146,7 @@ Request body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | container_id carries identifier of the container to delete from NeoFS. |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Signature of container id according to RFC-6979. |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature of container id according to RFC-6979. |
<a name="neo.fs.v2.container.DeleteResponse"></a>
@ -216,7 +216,7 @@ Response body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl | [neo.fs.v2.acl.EACLTable](#neo.fs.v2.acl.EACLTable) | | Extended ACL that has been requested if it was set up. |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Signature of stable-marshalled Extended ACL according to RFC-6979. |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature of stable-marshalled Extended ACL according to RFC-6979. |
<a name="neo.fs.v2.container.GetRequest"></a>
@ -337,7 +337,7 @@ Request body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| container | [Container](#neo.fs.v2.container.Container) | | Container to create in NeoFS. |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Signature of stable-marshalled container according to RFC-6979. |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature of stable-marshalled container according to RFC-6979. |
<a name="neo.fs.v2.container.PutResponse"></a>
@ -386,7 +386,7 @@ Request body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl | [neo.fs.v2.acl.EACLTable](#neo.fs.v2.acl.EACLTable) | | Extended ACL to set for the container. |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Signature of stable-marshalled Extended ACL according to RFC-6979. |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature of stable-marshalled Extended ACL according to RFC-6979. |
<a name="neo.fs.v2.container.SetExtendedACLResponse"></a>
@ -434,7 +434,7 @@ SHA256 hash of stable-marshalled container message.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.service.Version](#neo.fs.v2.service.Version) | | Container format version. Effectively the version of API library used to create container |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Container format version. Effectively the version of API library used to create container |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | OwnerID carries identifier of the container owner. |
| nonce | [bytes](#bytes) | | Nonce is a 16 byte UUID, used to avoid collisions of container id. |
| basic_acl | [uint32](#uint32) | | BasicACL contains access control rules for owner, system, others groups and permission bits for bearer token and Extended ACL. |

View file

@ -353,7 +353,7 @@ Initialization parameters of the object got from NeoFS.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| object_id | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | | Object ID |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Object signature |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Object signature |
| header | [Header](#neo.fs.v2.object.Header) | | Object header. |
@ -442,7 +442,7 @@ Groups initialization parameters of object placement in NeoFS.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| object_id | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | | Object ID, where available |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Object signature, were available |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Object signature, were available |
| header | [Header](#neo.fs.v2.object.Header) | | Header of the object to save in the system. |
| copies_number | [uint32](#uint32) | | Number of the object copies to store within the RPC call. Default zero value is processed according to the container placement rules. |
@ -568,7 +568,7 @@ Object Headers
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.service.Version](#neo.fs.v2.service.Version) | | Object format version. Effectively the version of API library used to create particular object |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Object format version. Effectively the version of API library used to create particular object |
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | Object's container |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Object's owner |
| creation_epoch | [uint64](#uint64) | | Object creation Epoch |
@ -576,7 +576,7 @@ Object Headers
| payload_hash | [bytes](#bytes) | | Hash of payload bytes |
| object_type | [ObjectType](#neo.fs.v2.object.ObjectType) | | Special object type |
| homomorphic_hash | [bytes](#bytes) | | Homomorphic hash of the object payload. |
| session_token | [neo.fs.v2.service.SessionToken](#neo.fs.v2.service.SessionToken) | | Session token, if it was used during Object creation. Need it to verify integrity and authenticity out of Request scope. |
| session_token | [neo.fs.v2.session.SessionToken](#neo.fs.v2.session.SessionToken) | | Session token, if it was used during Object creation. Need it to verify integrity and authenticity out of Request scope. |
| attributes | [Header.Attribute](#neo.fs.v2.object.Header.Attribute) | repeated | User-defined object attributes |
| split | [Header.Split](#neo.fs.v2.object.Header.Split) | | Position of the object in the split hierarchy. |
@ -603,7 +603,7 @@ Information about spawning the objects through a payload splitting.
| ----- | ---- | ----- | ----------- |
| parent | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | | Identifier of the origin object. Parent and children objects must be within the same container. Parent object_id is known only to the minor child. |
| previous | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | | Previous carries identifier of the left split neighbor. |
| parent_signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | `signature` field of the parent object. Used to reconstruct parent. |
| parent_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | `signature` field of the parent object. Used to reconstruct parent. |
| parent_header | [Header](#neo.fs.v2.object.Header) | | `header` field of the parent object. Used to reconstruct parent. |
| children | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | repeated | Children carries list of identifiers of the objects generated by splitting the current. |
@ -617,7 +617,7 @@ Object structure.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| object_id | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | | Object's unique identifier. Object is content-addressed. It means id will change if header or payload changes. It's calculated as a hash of header field, which contains hash of object's payload |
| signature | [neo.fs.v2.service.Signature](#neo.fs.v2.service.Signature) | | Signed object_id |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signed object_id |
| header | [Header](#neo.fs.v2.object.Header) | | Object metadata headers |
| payload | [bytes](#bytes) | | Payload bytes. |
@ -630,7 +630,7 @@ Short header fields
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.service.Version](#neo.fs.v2.service.Version) | | Object format version. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Object format version. |
| creation_epoch | [uint64](#uint64) | | Epoch when the object was created |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Object's owner |
| object_type | [ObjectType](#neo.fs.v2.object.ObjectType) | | Type of the object payload content |

View file

@ -10,6 +10,8 @@
- [ContainerID](#neo.fs.v2.refs.ContainerID)
- [ObjectID](#neo.fs.v2.refs.ObjectID)
- [OwnerID](#neo.fs.v2.refs.OwnerID)
- [Signature](#neo.fs.v2.refs.Signature)
- [Version](#neo.fs.v2.refs.Version)
- [Scalar Value Types](#scalar-value-types)
@ -69,6 +71,30 @@ OwnerID group information about the owner of the NeoFS container.
| ----- | ---- | ----- | ----------- |
| value | [bytes](#bytes) | | value carries the identifier of the container owner in a binary format. |
<a name="neo.fs.v2.refs.Signature"></a>
### Message Signature
Signature of something in NeoFS
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| key | [bytes](#bytes) | | Public key used for signing. |
| sign | [bytes](#bytes) | | Signature |
<a name="neo.fs.v2.refs.Version"></a>
### Message Version
Represents API version used by node.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| major | [uint32](#uint32) | | Major API version. |
| minor | [uint32](#uint32) | | Minor API version. |
<!-- end messages -->
<!-- end enums -->

View file

@ -6,18 +6,10 @@
- [service/types.proto](#service/types.proto)
- Messages
- [BearerToken](#neo.fs.v2.service.BearerToken)
- [BearerToken.Body](#neo.fs.v2.service.BearerToken.Body)
- [ObjectSessionContext](#neo.fs.v2.service.ObjectSessionContext)
- [RequestMetaHeader](#neo.fs.v2.service.RequestMetaHeader)
- [RequestVerificationHeader](#neo.fs.v2.service.RequestVerificationHeader)
- [ResponseMetaHeader](#neo.fs.v2.service.ResponseMetaHeader)
- [ResponseVerificationHeader](#neo.fs.v2.service.ResponseVerificationHeader)
- [SessionToken](#neo.fs.v2.service.SessionToken)
- [SessionToken.Body](#neo.fs.v2.service.SessionToken.Body)
- [Signature](#neo.fs.v2.service.Signature)
- [TokenLifetime](#neo.fs.v2.service.TokenLifetime)
- [Version](#neo.fs.v2.service.Version)
- [XHeader](#neo.fs.v2.service.XHeader)
@ -34,43 +26,6 @@
<!-- end services -->
<a name="neo.fs.v2.service.BearerToken"></a>
### Message BearerToken
BearerToken has information about request ACL rules with limited lifetime
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body | [BearerToken.Body](#neo.fs.v2.service.BearerToken.Body) | | Bearer Token body |
| signature | [Signature](#neo.fs.v2.service.Signature) | | Signature of BearerToken body |
<a name="neo.fs.v2.service.BearerToken.Body"></a>
### Message BearerToken.Body
Bearer Token body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl_table | [neo.fs.v2.acl.EACLTable](#neo.fs.v2.acl.EACLTable) | | EACLTable carries table of extended ACL rules |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | OwnerID carries identifier of the token owner |
| lifetime | [TokenLifetime](#neo.fs.v2.service.TokenLifetime) | | Token expiration and valid time period parameters |
<a name="neo.fs.v2.service.ObjectSessionContext"></a>
### Message ObjectSessionContext
Context information for Session Tokens related to ObjectService requests
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| verb | [ObjectSessionContext.Verb](#neo.fs.v2.service.ObjectSessionContext.Verb) | | Verb is a type of request for which the token is issued |
| address | [neo.fs.v2.refs.Address](#neo.fs.v2.refs.Address) | | Related Object address |
<a name="neo.fs.v2.service.RequestMetaHeader"></a>
### Message RequestMetaHeader
@ -79,12 +34,12 @@ Information about the request
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [Version](#neo.fs.v2.service.Version) | | Client API version. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Client API version. |
| epoch | [uint64](#uint64) | | Client local epoch number. Set to 0 if unknown. |
| ttl | [uint32](#uint32) | | Maximum number of nodes in the request route. |
| x_headers | [XHeader](#neo.fs.v2.service.XHeader) | repeated | Request X-Headers. |
| session_token | [SessionToken](#neo.fs.v2.service.SessionToken) | | Token is a token of the session within which the request is sent |
| bearer_token | [BearerToken](#neo.fs.v2.service.BearerToken) | | Bearer is a Bearer token of the request |
| session_token | [neo.fs.v2.session.SessionToken](#neo.fs.v2.session.SessionToken) | | Token is a token of the session within which the request is sent |
| bearer_token | [neo.fs.v2.acl.BearerToken](#neo.fs.v2.acl.BearerToken) | | Bearer is a Bearer token of the request |
| origin | [RequestMetaHeader](#neo.fs.v2.service.RequestMetaHeader) | | RequestMetaHeader of the origin request. |
@ -96,9 +51,9 @@ Verification info for request signed by all intermediate nodes
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body_signature | [Signature](#neo.fs.v2.service.Signature) | | Request Body signature. Should be generated once by request initiator. |
| meta_signature | [Signature](#neo.fs.v2.service.Signature) | | Request Meta signature is added and signed by any intermediate node |
| origin_signature | [Signature](#neo.fs.v2.service.Signature) | | Sign previous hops |
| body_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Request Body signature. Should be generated once by request initiator. |
| meta_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Request Meta signature is added and signed by any intermediate node |
| origin_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Sign previous hops |
| origin | [RequestVerificationHeader](#neo.fs.v2.service.RequestVerificationHeader) | | Chain of previous hops signatures |
@ -110,7 +65,7 @@ Information about the response
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [Version](#neo.fs.v2.service.Version) | | Server API version. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Server API version. |
| epoch | [uint64](#uint64) | | Server local epoch number. |
| ttl | [uint32](#uint32) | | Maximum number of nodes in the response route. |
| x_headers | [XHeader](#neo.fs.v2.service.XHeader) | repeated | Response X-Headers. |
@ -125,76 +80,12 @@ Verification info for response signed by all intermediate nodes
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body_signature | [Signature](#neo.fs.v2.service.Signature) | | Response Body signature. Should be generated once by answering node. |
| meta_signature | [Signature](#neo.fs.v2.service.Signature) | | Response Meta signature is added and signed by any intermediate node |
| origin_signature | [Signature](#neo.fs.v2.service.Signature) | | Sign previous hops |
| body_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Response Body signature. Should be generated once by answering node. |
| meta_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Response Meta signature is added and signed by any intermediate node |
| origin_signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Sign previous hops |
| origin | [ResponseVerificationHeader](#neo.fs.v2.service.ResponseVerificationHeader) | | Chain of previous hops signatures |
<a name="neo.fs.v2.service.SessionToken"></a>
### Message SessionToken
NeoFS session token.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body | [SessionToken.Body](#neo.fs.v2.service.SessionToken.Body) | | Session Token body |
| signature | [Signature](#neo.fs.v2.service.Signature) | | Signature is a signature of session token information |
<a name="neo.fs.v2.service.SessionToken.Body"></a>
### Message SessionToken.Body
Session token body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| id | [bytes](#bytes) | | ID is a token identifier. valid UUIDv4 represented in bytes |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | OwnerID carries identifier of the session initiator. |
| lifetime | [TokenLifetime](#neo.fs.v2.service.TokenLifetime) | | Lifetime is a lifetime of the session |
| session_key | [bytes](#bytes) | | SessionKey is a public key of session key |
| object | [ObjectSessionContext](#neo.fs.v2.service.ObjectSessionContext) | | ObjectService session context. |
<a name="neo.fs.v2.service.Signature"></a>
### Message Signature
Signature of something in NeoFS
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| key | [bytes](#bytes) | | Public key used for signing. |
| sign | [bytes](#bytes) | | Signature |
<a name="neo.fs.v2.service.TokenLifetime"></a>
### Message TokenLifetime
Lifetime parameters of the token. Filed names taken from rfc7519.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| exp | [uint64](#uint64) | | Expiration Epoch |
| nbf | [uint64](#uint64) | | Not valid before Epoch |
| iat | [uint64](#uint64) | | Issued at Epoch |
<a name="neo.fs.v2.service.Version"></a>
### Message Version
Represents API version used by node.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| major | [uint32](#uint32) | | Major API version. |
| minor | [uint32](#uint32) | | Minor API version. |
<a name="neo.fs.v2.service.XHeader"></a>
### Message XHeader
@ -208,24 +99,6 @@ Extended headers for Request/Response
<!-- end messages -->
<a name="neo.fs.v2.service.ObjectSessionContext.Verb"></a>
### ObjectSessionContext.Verb
Object request verbs
| Name | Number | Description |
| ---- | ------ | ----------- |
| VERB_UNSPECIFIED | 0 | Unknown verb |
| PUT | 1 | Refers to object.Put RPC call |
| GET | 2 | Refers to object.Get RPC call |
| HEAD | 3 | Refers to object.Head RPC call |
| SEARCH | 4 | Refers to object.Search RPC call |
| DELETE | 5 | Refers to object.Delete RPC call |
| RANGE | 6 | Refers to object.GetRange RPC call |
| RANGEHASH | 7 | Refers to object.GetRangeHash RPC call |
<!-- end enums -->

View file

@ -14,6 +14,15 @@
- [CreateResponse.Body](#neo.fs.v2.session.CreateResponse.Body)
- [session/types.proto](#session/types.proto)
- Messages
- [ObjectSessionContext](#neo.fs.v2.session.ObjectSessionContext)
- [SessionToken](#neo.fs.v2.session.SessionToken)
- [SessionToken.Body](#neo.fs.v2.session.SessionToken.Body)
- [SessionToken.Body.TokenLifetime](#neo.fs.v2.session.SessionToken.Body.TokenLifetime)
- [Scalar Value Types](#scalar-value-types)
@ -68,7 +77,7 @@ Request body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Carries an identifier of a session initiator. |
| lifetime | [neo.fs.v2.service.TokenLifetime](#neo.fs.v2.service.TokenLifetime) | | Carries a lifetime of the session. |
| expiration | [uint64](#uint64) | | Expiration Epoch |
<a name="neo.fs.v2.session.CreateResponse"></a>
@ -101,6 +110,90 @@ Response body
<a name="session/types.proto"></a>
<p align="right"><a href="#top">Top</a></p>
## session/types.proto
<!-- end services -->
<a name="neo.fs.v2.session.ObjectSessionContext"></a>
### Message ObjectSessionContext
Context information for Session Tokens related to ObjectService requests
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| verb | [ObjectSessionContext.Verb](#neo.fs.v2.session.ObjectSessionContext.Verb) | | Verb is a type of request for which the token is issued |
| address | [neo.fs.v2.refs.Address](#neo.fs.v2.refs.Address) | | Related Object address |
<a name="neo.fs.v2.session.SessionToken"></a>
### Message SessionToken
NeoFS session token.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| body | [SessionToken.Body](#neo.fs.v2.session.SessionToken.Body) | | Session Token body |
| signature | [neo.fs.v2.refs.Signature](#neo.fs.v2.refs.Signature) | | Signature is a signature of session token information |
<a name="neo.fs.v2.session.SessionToken.Body"></a>
### Message SessionToken.Body
Session token body
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| id | [bytes](#bytes) | | ID is a token identifier. valid UUIDv4 represented in bytes |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | OwnerID carries identifier of the session initiator. |
| lifetime | [SessionToken.Body.TokenLifetime](#neo.fs.v2.session.SessionToken.Body.TokenLifetime) | | Lifetime is a lifetime of the session |
| session_key | [bytes](#bytes) | | SessionKey is a public key of session key |
| object | [ObjectSessionContext](#neo.fs.v2.session.ObjectSessionContext) | | ObjectService session context. |
<a name="neo.fs.v2.session.SessionToken.Body.TokenLifetime"></a>
### Message SessionToken.Body.TokenLifetime
Lifetime parameters of the token. Filed names taken from rfc7519.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| exp | [uint64](#uint64) | | Expiration Epoch |
| nbf | [uint64](#uint64) | | Not valid before Epoch |
| iat | [uint64](#uint64) | | Issued at Epoch |
<!-- end messages -->
<a name="neo.fs.v2.session.ObjectSessionContext.Verb"></a>
### ObjectSessionContext.Verb
Object request verbs
| Name | Number | Description |
| ---- | ------ | ----------- |
| VERB_UNSPECIFIED | 0 | Unknown verb |
| PUT | 1 | Refers to object.Put RPC call |
| GET | 2 | Refers to object.Get RPC call |
| HEAD | 3 | Refers to object.Head RPC call |
| SEARCH | 4 | Refers to object.Search RPC call |
| DELETE | 5 | Refers to object.Delete RPC call |
| RANGE | 6 | Refers to object.GetRange RPC call |
| RANGEHASH | 7 | Refers to object.GetRangeHash RPC call |
<!-- end enums -->
## Scalar Value Types
| .proto Type | Notes | C++ Type | Java Type | Python Type |