View Source KlifeProtocol.Messages.DescribeDelegationToken (Klife Protocol v0.5.0)

Kafka protocol DescribeDelegationToken message

Request versions summary:

  • Version 1 is the same as version 0. Version 2 adds flexible version support Version 3 adds token requester into the response

Response versions summary:

  • Starting in version 1, on quota violation, brokers send out responses before throttling. Version 2 adds flexible version support Version 3 adds token requester details

Link to this section Summary

Functions

Returns the message api key number.

Receive a binary in the kafka wire format and deserialize it into a map.

Returns the current max supported version of this message.

Returns the current min supported version of this message.

Receives a map and serialize it to kafka wire format of the given version.

Link to this section Functions

Returns the message api key number.

Link to this function

deserialize_response(data, version, with_header? \\ true)

View Source

Receive a binary in the kafka wire format and deserialize it into a map.

Response content fields:

  • error_code: The error code, or 0 if there was no error. (int16 | versions 0+)

  • tokens: The tokens. ([]DescribedDelegationToken | versions 0+)

    • principal_type: The token principal type. (string | versions 0+)

    • principal_name: The token principal name. (string | versions 0+)

    • token_requester_principal_type: The principal type of the requester of the token. (string | versions 3+)

    • token_requester_principal_name: The principal type of the requester of the token. (string | versions 3+)

    • issue_timestamp: The token issue timestamp in milliseconds. (int64 | versions 0+)

    • expiry_timestamp: The token expiry timestamp in milliseconds. (int64 | versions 0+)

    • max_timestamp: The token maximum timestamp length in milliseconds. (int64 | versions 0+)

    • token_id: The token ID. (string | versions 0+)

    • hmac: The token HMAC. (bytes | versions 0+)

    • renewers: Those who are able to renew this token before it expires. ([]DescribedDelegationTokenRenewer | versions 0+)

      • principal_type: The renewer principal type (string | versions 0+)

      • principal_name: The renewer principal name (string | versions 0+)

  • throttle_time_ms: The duration in milliseconds for which the request was throttled due to a quota violation, or zero if the request did not violate any quota. (int32 | versions 0+)

Returns the current max supported version of this message.

Returns the current min supported version of this message.

Link to this function

serialize_request(map, version)

View Source

Receives a map and serialize it to kafka wire format of the given version.

Input content fields:

  • owners: Each owner that we want to describe delegation tokens for, or null to describe all tokens. ([]DescribeDelegationTokenOwner | versions 0+)

    • principal_type: The owner principal type. (string | versions 0+)

    • principal_name: The owner principal name. (string | versions 0+)