-
Notifications
You must be signed in to change notification settings - Fork 31
Migration Guide to Support FedRAMP Mode from 3.9.0v Onwards
Starting from version 3.9.0v of the Webex SDK, clients are required to make changes in order to toggle FedRAMP mode or update their existing code to adapt to the changes introduced in the Webex SDK.
From version 3.9.0v onwards, app developers can directly use APIs to toggle the FedRAMP mode in the Webex SDK. Existing users' FedRAMP mode values set through RestrictionManager will be preserved during migration. This API-based toggle provides simplicity and flexibility, allowing developers to programmatically enable or disable FedRAMP mode at the time authorization only. For detailed information, refer to the below Webex API docs for version 3.9.0v onwards.
To support profile-based restrictions for FedRAMP, the Webex SDK utilizes Android's RestrictionServices feature. This feature relies on an XML file that defines the restrictions to be applied. Previously, the SDK included an XML file named app_restrictions.xml
to handle this. However, in order to enhance the robustness and flexibility of the SDK, app developers now have the freedom to define their own custom restrictions XML.
Starting from version 3.9.0v, the SDK no longer includes the app_restrictions.xml
file in its resource directory. If app developers prefer not to adopt the new proposed method, they can include the app_restrictions.xml
file in their application's resource folder (app/res/xml/app_restrictions.xml
).
Here is an example of the app_restrictions.xml
file:
<?xml version="1.0" encoding="utf-8"?>
<restrictions xmlns:android="http://schemas.android.com/apk/res/android">
<restriction
android:description="@string/appconfig_fedramp_description"
android:key="fedRampEnabled"
android:restrictionType="bool"
android:title="@string/appconfig_fedramp_title"
android:defaultValue="false"/>
</restrictions>
Furthermore, app developers need to add metadata to their application's manifest file to enable the use of these restrictions:
<manifest>
<application>
...
<meta-data
android:name="android.content.APP_RESTRICTIONS"
android:resource="@xml/app_restrictions" />
...
</application>
</manifest>
By including this metadata in the manifest file, the application will utilize the defined restrictions specified in the app_restrictions.xml
file.
Please note that starting from version 3.9.0v of the Webex SDK, developers have the option to either adopt the new API-based toggle method or continue using the previous approach by including the app_restrictions.xml
file in their application.