Enum MAMStrictCheck

  • All Implemented Interfaces:

    
    public enum MAMStrictCheck
    
                        

    Enumeration of MAM Strict Mode checks.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
      ACTIVITY_LAUNCHED_FROM_MIXED_VIEW_REQUIRES_IDENTITY_SWITCH

      On an activity launched from a mixed view, the app did not call the identity switch API to specify the identity or identities of the launched activity.

      IDENTITY_NO_SUCH_FILE

      Attempt to protect a file which does not exist.

      SAVE_TO_ODB_MISSING_UPN

      No longer used. Replaced by SAVE_TO_LOCATION_MISSING_UPN

      SAVE_TO_LOCATION_MISSING_UPN

      Use of getIsSaveToLocationAllowed for OneDrive for Business/Sharepoint/an account document but no UPN provided.

      OPEN_FROM_LOCATION_MISSING_UPN

      Use of getIsOpenFromLocationAllowed for OneDrive for Business/SharePoint/an account document, but there was no UPN provided for the account.

      DEPRECATED_API

      Call to an API which we have deprecated and which has the potential to result in an incorrect customer outcome.

      REGISTER_ACCOUNT_WRONG_USER

      registerAccountForMAM was called on an account which is already in the WRONG_USER state. Apps should remove accounts in the WRONG_USER state (or at least block them).

      TARGET_API

      Ensure the app is not using a newer target Android SDK than the current MAMSDK version supports.

      INTENT_IDENTITY_MISMATCH

      Mismatch between the identity tag for an intent and a file transferred by that intent.

      CONTENT_INTENT_WITHOUT_IDENTITY

      An intent was started to transfer content to another app without an identity, while the foreground activity does have an identity set. This likely indicates a failure to plumb through the identity.

      SEVERE_EVENT

      An internal error occurred which is not expected in the course of normal operation. More detail is available in the message.

      INCOMING_IDENTITY_SWITCH

      An incoming activity identity switch was not handled properly. If your app uses the process identity, it must override MAMActivityIdentityRequirementListener.onMAMIdentitySwitchRequired in order to ensure that the incoming data is compatible with the already set process identity. Apps which use the process identity need to take even more care with incoming identity switches than most because these apps usually assume that only one identity (the process one) will be active. If data belonging to a different identity (e.g. a personal one) comes in, the app needs to either be able to handle that data properly (segregate it from the managed user) or refuse the identity switch.

      NON_INTEGRATED_ACTIVITY_LAUNCH

      An activity was launched which was not MAM-integrated and not explicitly excluded by build-plugin configuration.

      NON_INTEGRATED_VIEW

      A view was used which should have been MAM-integrated, but was not.

      APPLICATION_CONTEXT_DISCOVERED

      An Application context was used when an Activity context was expected.

      AUTHENTICATION_CALLBACK_NOT_REGISTERED

      The MAMServiceAuthenticationCallback was not registered in the Application's onCreate method.

      CONFIG_ONLY_BAD_INTEGRATION

      The config-only app was improperly integrated with the MAM SDK. For example, its Application class may extend MAMApplication. Config-only apps should never leverage the build plugin or manually integrate wrappers.

      CONFIG_ONLY_BAD_INIT_CALL

      We expect config-only apps to call MAMComponents.initialize() via Application.onCreate(). However, initialize() was called from a different place.

      CONFIG_ONLY_CA_UNSUPPORTED

      Conditional Access is not supported for config-only mode apps, but the application tried to remediate compliance for a user.

      CONTENT_RESOLVER_NO_IDENTITY

      A multi-identity app used a ContentResolver without any identity set on the context the resolver was retrieved from or on the thread/process. This indicates likelihood that the app is performing app-to-app communication on a background thread without proper consideration of what account the operation is running under.

      UNMANAGED_CONTEXT_FOUND

      MAM was unable to locate a Context that would allow for policy enforcement within the specified System Service/ContentResolver/ContentProviderClient. This indicates one of the following: 1. The SDK surface included by the plugin for your app may be incorrect. To remediate, please review your build plugin configuration for improperly excluded classes. For example, an improperly excluded `Activity` class may be passing its `Context` into a rewritten utility class, which would produce an unprotected System Service/ContentResolver/ContentProviderClient based on the passed in `Context`. 2. The MAM SDK is missing surface coverage required by your app. To remediate, please reach out to the MAM team.

      UPDATE_TOKEN_WITHIN_ACQUIRE_TOKEN

      The MAMEnrollmentManager's updateToken() method was called from within the provided MAMServiceAuthenticationCallback's acquireToken() method. This is not the intended purpose of updateToken(), and could cause a deadlock.

      UNREGISTER_ACCOUNT_WITHIN_ACQUIRE_TOKEN

      The MAMEnrollmentManager's unregisterAccountForMAM() method was called from within the provided MAMServiceAuthenticationCallback's acquireToken() method. This could cause compliance remediation to fail.

      CLEAR_PROTECTED_FLAG_SECURE

      Window.clearFlags() was called on FLAG_SECURE when app had a configured policy that restricts screenshots. This will allow users to bypass the MAM policy and take screenshots.

      INVALID_MAM_SERVICE_TOKEN

      There was a mismatch between the user's passed in aadId and resourceId, and the decoded aadId and resourceId from the MAMService token returned by MAMServiceAuthenticationCallback.

      REQUIRES_MIXED_VIEW_COMPOSITE_POLICY

      A composite policy value for a mixed view was retrieved from a LockedMixedViewInternalAppPolicy instead of a MixedViewInternalAppPolicy. The former provides hard-coded, locked-down policies, while the latter includes the composite policies of the mixed view identities.

      UNSUPPORTED_MIXED_VIEW_POLICY

      An identity-specific policy method from InternalAppPolicy was called in a mixed view, which is not supported.

      UPN_IDENTITY_PARAM

      The app called a MAM SDK API method taking an identity by UPN instead of the corresponding OID-based method.

      SAVE_TO_LOCATION_MISSING_OID

      Use of getIsSaveToLocationAllowedForOID for OneDrive for Business/Sharepoint/an account document, but there was no OID provided for the account.

      OPEN_FROM_LOCATION_MISSING_OID

      Use of getIsOpenFromLocationAllowedForOID for OneDrive for Business/SharePoint/an account document, but there was no OID provided for the account.

    • Method Summary

      Modifier and Type Method Description
      static Array<MAMStrictCheck> values() Returns an array containing the constants of this enum type, in the order they're declared.
      static MAMStrictCheck valueOf(String name) Returns the enum constant of this type with the specified name.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • values

         static Array<MAMStrictCheck> values()

        Returns an array containing the constants of this enum type, in the order they're declared. This method may be used to iterate over the constants.

        Returns:

        an array containing the constants of this enum type, in the order they're declared

      • valueOf

         static MAMStrictCheck valueOf(String name)

        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

        Returns:

        the enum constant with the specified name