# @fluidframework/server-services-utils

## 6.0.0

### Major Changes

-   Adds support for making `/accesstoken` API calls ([#23410](https://github.com/microsoft/FluidFramework/pull/23410)) [0630c3946c](https://github.com/microsoft/FluidFramework/commit/0630c3946cba67ab77adaf9159f809ef113e8f7e)

    This change replaces the `getKey` API call with the `signToken` Riddler API call. This is done to decouple internal service calls from the Riddler keys. Now Riddler will send back an access token to these services based on the tenant's configuration.

-   Default value for enableGlobalTelemetryContext config changed to true ([#22109](https://github.com/microsoft/FluidFramework/pull/22109)) [18b76b29ff](https://github.com/microsoft/FluidFramework/commit/18b76b29ff92f2362fb3aaba09c82f13e8b2d7b3)

    Global TelemetryContext is replacing deprecated correlationId tracking. TelemetryContext is now defaulted to enabled, which will automatically output correlationId, tenantId, and documentId in service telemetry.

-   Adds support for a new token claim - `isKeylessAccessToken` ([#23379](https://github.com/microsoft/FluidFramework/pull/23379)) [87c92ca185](https://github.com/microsoft/FluidFramework/commit/87c92ca185dcb128553ae183bd6bfc2a6c487c77)

    The added support for this new claim would allow the server to know what keys to use to validate an access token. This value will only be added for tokens signed by the server. It is not exposed to the client API.

-   Adds a new property to track the source of the correlationId ([#22280](https://github.com/microsoft/FluidFramework/pull/22280)) [7fd8c786b3](https://github.com/microsoft/FluidFramework/commit/7fd8c786b339f2dabd93905c41dae8f8dda7bc4b)

    A new property - correlationIdSource - is added to track the source of the correlationId. This source can be either the client or server based on where the correlationId was generated. The `x-telemetry-context` header is generated by the server while the `x-correlation-id` header can be generated by the client. Hence, all requests that have the `x-telemetry-context` header will have the source set to `server`.

-   Types altered to account for undefined and null values ([#23054](https://github.com/microsoft/FluidFramework/pull/23054)) [09b7299e1c](https://github.com/microsoft/FluidFramework/commit/09b7299e1cbf1d800d4bea2bef6b7d0bc657ddb6)

    Many types updated to reflect implementations that can return null or undefined, but did not call that out in type definitions. Internal functionality only changed to handle existing null/undefined cases that are now known at compiletime.

## 5.0.0

### Minor Changes

-   server-services-utils: Add support for custom authentication with Redis ([#21465](https://github.com/microsoft/FluidFramework/pull/21465)) [9427e25689](https://github.com/microsoft/FluidFramework/commit/9427e2568924e0bed83d2a6f78a6e2a20be8a29e)

    Added support for custom authentication with Redis instead of only password based authentication. This includes support
    for Microsoft Entra-ID based authentication for Redis.

    You can find more details in [pull request #20214](https://github.com/microsoft/FluidFramework/pull/20214).

## 4.0.0

Dependency updates only.

## 3.0.0

### Major Changes

-   Updated @fluidframework/protocol-definitions ([#19090](https://github.com/microsoft/FluidFramework/issues/19090)) [ecd9e67b57](https://github.com/microsoft/FluidFramework/commits/ecd9e67b5748415ad93c6273047fdcca457b3a14)

    The @fluidframework/protocol-definitions dependency has been upgraded to v3.1.0.
    [See the full changelog.](https://github.com/microsoft/FluidFramework/blob/main/common/lib/protocol-definitions/CHANGELOG.md#310)
