Cloud Cache registry configuration reference

Note

Cloud Cache configuration may be used for both Profile Container and Office Container. For Profile Container registry settings are applied here: HKLM\SOFTWARE\FSLogix\Profiles. For Office Container registry settings are applied here: HKLM\SOFTWARE\Policies\FSLogix\ODFC.

When using Cloud Cache, CCDLociations replaces VHDLocations. CCDLocations and VHDLocations may not both be present at the same time.

For a the full Profile Container reference see: Profile Container registry configuration reference. For a the full Office Container reference see: Office Container registry configuration reference.

CCDLocations

(Required Setting)

Type REG_SZ / MULTI_SZ

Default Value N/A

Data values and use

Specifies the storage type and location of Cloud Cache remote containers. CCDLocations should be used INSTEAD OF VHDLocations when using Cloud Cache, see Profile Containers or Office Container for further instructions. When setting CCDLocations for a base product, Type must be SMB and only and one remote container may be specified. When setting CCDLocations for full products, Type may be any supported CCDLocations type, and up to four remote container locations may be specified. When setting CCDLocation, the first location set will be the primary read location. The primary read location will be read from, unless it's unavailable. All locations will be written to.

When setting CCDLocations, do not place spaces around delimiters. CCDLocations values are always case-sensitive.

type = Type of Storage. Supported Storage Types: SMB, Azure Page Blobs, andAzure Premium Page Blobs. See the Configure Cloud Cache Tutorial for step-by-step instructions. ConnectionString = Location of folder for remote container. Example: \Location\Folder. CCDLocations SMB Example: type=smb,connectionString=\Location1\Folder1;type=smb,connectionString=\Location2\folder2

ClearCacheOnLogoff

Type DWORD

Default Value 0

Data values and use

By default, the Local Cache file won't be removed when the user sign-out. If a user accesses a system where it's desirable to have the Local Cache file deleted when they sign out, set ClearCacheOnLogoff to 1.

Enabled

(required setting)

Type DWORD

Default Value N/A

Data values and use

Used as described in Profile Container Reference and Office Container Reference.

Cloud Cache disk registration settings overview:

INSTRUCTIONAL FOR ALL DISK REGISTER/UNREGISTER SETTINGS

Traditionally, Cloud Cache had rigid behavior when all defined providers were not available at user Sing in and user Sign-out.

Specifically, users would never trigger an error during sign in, even if no Cloud Cache providers were available. Also, at sign-out, if any Cloud Cache provider was not available the users sign-out would be prevented indefinitely.

In most scenarios, where Cloud Cache providers point to highly available storage that would rarely, if ever, be unavailable for extended periods, these settings are ideal for insuring data integrity.

In some scenarios, users have expressed a desire for more granular control over these behaviors. The following settings allow configuration of Cloud Cache behavior during disk register (associated with user sign in) and disk unregister (associated with user sign-out) events.

When configuring any settings associated with disk register or unregister events, verify that you are familiar with the concepts, and that the configurations achieve your data integrity goals. Various setting combinations could cause local profile data to be discarded with no Cloud Cache providers being updated. The result of clearing the local cache, without flushing to a Cloud Cache provider, is the permanent deletion of the user's session data stored in the local cache.

The following settings may be used, in conjunction with Profile Container and/or Office Container when using Cloud Cache.

HealthyProvidersRequiredForRegister

PLEASE READ this overview before using this setting

Type DWORD

Default Value 0

Data values and use

This setting specifies the number of healthy Cloud Cache providers required to allow a sign in. If HealthyProvidersRequiredForRegister is set to 0, the default setting, users will always be allowed to sign in, even if no Cloud Cache providers are available.

It is assumed that, if a user signs in with no available providers, that one or more Cloud Cache providers will be available prior to the user logging out. If a Cloud Cache provider does not become available during the time of the user session, then the user is prevented from signing out (discussed in HealthyProviderRequiredForUnregister).

If it is desired to block a user from logging in, if a minimum number of Cloud Cache providers are not available, then the HealthyProvidersRequiredForRegister may be set to the number of providers required for a sign in.

If the minimum number of providers required for registration aren't available, then the sign in will fail. When setting HealtyProvidersRequiredForRegister to anything other than 0, then PreventLoginWithFailure and/or PreventLoginWithTempProfile should be used in order to create the desired user experience.

HealthyProvidersRequiredForUnregister

PLEASE READ this overview before using this setting

Type DWORD

Default Value 1

Data values and use

This setting specifies the number of healthy Cloud Cache providers required for a user to log out. The default setting is 1, meaning that at least one remote Cloud Cache provider is required for the user to sign-out.

If the number of providers available, when a user attempts to sign-out is less than the number set for HealthyProvidersRequiredForUnregister, then the users logoff will be prevented for the time specified in CCDUnregisterTimeout.

NOTE: Although HealthyProvidersReqruiedForUnregister may be set to 0, it is NOT recommended. A setting of 0 for HealthyProviderReqruiedForUnregister will prevent ClearCacheOnForcedUnregister and CCDUnregisterTimeout from ever being evaluated. Setting HealthyProvidersRequiredForUnregister to 0 may cause the permanent deletion of the user session data stored in the local cache, without the protections built in through CCDUnregisterTimout and ClearCacheOnForced Unregister.

CcdUnregisterTimeout

PLEASE READ this overview before using this setting

Type DWORD

Default Value 0

Data values and use

CCDUnregisterTimeout represents the number of seconds that a user's sign-out will be delayed if the number of available providers is less than specified in HealtyProvidersRequiredForUnregister.

If CCDUnregsiterTimeout is set to 0, then the user logout will be held until the number of providers specified in HealthyProvidersRequiredForUnregister are available. NOTE: If CCDUnregisterTimtout is set to 0, and the number of providers specified in HealthyProvidersRequiredForUnregister is not met, then the user's logout may appear, to the user, as if the session is locked, as the logoff may be held infinitely.

ClearCacheOnForcedUnregister

PLEASE READ this overview before using this setting

Type DWORD

Default Value 0

Data values and use

CCDUnregisterTimeout is set to specify the number of seconds to wait prior to allowing a user session to be closed, even if a successful flush to a Cloud Cache provider has not occurred. If ClearCacheOnLogoff is set, the local cache will be deleted, even if the data in the local cache has not been flushed to a Cloud Cache provider.

In order to preserve the user data in local cache, when a user session is forced to close, local cache is NOT deleted in this scenario, EVEN IF ClearCacheOnLogoff is set. This allows user data to be recovered from the local cache, if desired, however, the local cache file must then be managed (deleted) manually, after user data is retrieved.

If the desired behavior is for the local cache to be deleted, even if the data has not been flushed to a Cloud Cache provider, then ClearCacheOnForcedUnregister should be set to 1.

NOTE: setting ClearCacheOnForcedUnregister to 1 may result in user data, saved in the registry during the current session, to be lost. It's important to understand that this data isn't recoverable if the local cache is cleared in this scenario. Verify that you understand the implications of changing the default value of this setting prior to making changes.

The following values are Cloud Cache Specific and are used for all Cloud Cache implementations whether applied to Profile Containers or Office Containers. These settings are applied here: Registry Key: HKLM\SYSTEM\CurrentControlSet\Services\frxccd\Parameters

CacheDirectory

Type DWORD

Default Value N/A

Data values and use

CacheDirectory specifies the location of the Local Cache file. By default, the local Cache file will be placed in C:\ProgramData\FSLogix\Cache. The Local Cache file may be placed on another mapped drive or a UNC. CacheDirectory and ProxyDirectory MUST NOT be the same location as the Proxy File and the Cache File are the same name and will conflict.

IMPORTANT: When considering the location of the Local Cache file, it's critical to select storage that is Highly Available and High Performing. Storage that is appropriate for the Local Cache file will have performance and availability characteristics similar to higher performing local storage. NOTE: CacheDirectory is set prior to GPOs being applied, it is not possible to rely on GPOs to set CacheDirectory in environments where a GoldImage is applied at boot.

The following values are Cloud Cache Specific and are used for all Cloud Cache implementations whether applied to Profile Containers or Office Containers. These settings are applied here: Registry Key: HKLM\SYSTEM\CurrentControlSet\Services\frxccds\Parameters

ProxyDirectory

Type REG_SZ

Default Value N/A

Data values and use ProxyDirectory specifies the location of the Local Proxy Stub file. By default, the local Cache file will be placed in C:\ProgramData\FSLogix\Proxy. The Proxy Directory may be placed on another mapped drive. CacheDirectory and ProxyDirectory MUST NOT be the same location as the Proxy File and the Cache File are the same name and will conflict. |

Note

Although it is possible to change the location of the Proxy Directory, it is strongly recommended that this is only done when there is no C drive. The Proxy Directory contains no data.