Enum Class PrincipalPropagationMode

java.lang.Object
java.lang.Enum<PrincipalPropagationMode>
com.sap.cloud.sdk.cloudplatform.connectivity.PrincipalPropagationMode
All Implemented Interfaces:
Serializable, Comparable<PrincipalPropagationMode>, Constable

@Beta public enum PrincipalPropagationMode extends Enum<PrincipalPropagationMode>
Represents the mode of principal propagation.
Since:
5.0.0
  • Enum Constant Details

    • TOKEN_EXCHANGE

      public static final PrincipalPropagationMode TOKEN_EXCHANGE
      Principal propagation strategy based on exchanging the user token. This strategy is generally NOT recommended. Please consider switching to TOKEN_FORWARDING instead.

      Using the TOKEN_EXCHANGE strategy produces additional round-trips and increases the load on the XSUAA service. The XSUAA service is rate limited, so this strategy can lead to on-premise calls being blocked by that rate limit.

      Using this strategy the following headers will be populated:

      • Header: "Proxy-Authorization" Token exchange (JWT Bearer Token Grant) on behalf of current user.
      • token (principal) with technical credentials of connectivity service binding.
    • TOKEN_FORWARDING

      public static final PrincipalPropagationMode TOKEN_FORWARDING
      Principal propagation strategy based on forwarding the user token.

      Using this strategy the following headers will be populated:

      • Header: "Proxy-Authorization" Token lookup (Client Credentials Grant) on behalf of a technical user for the current tenant using the credentials of connectivity service binding.
      • Header: "SAP-Connectivity-Authentication" Token forwarding of current user token (principal).
    • UNKNOWN

      public static final PrincipalPropagationMode UNKNOWN
      Unknown principal propagation mode.

      This will likely lead to an error.

  • Method Details

    • values

      public static PrincipalPropagationMode[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static PrincipalPropagationMode valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null