You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For convenience, the runtime creates default mock users to cover typical test scenarios, e.g. privileged users passing all security checks or users which pass authentication but do not have additional claims.
163
-
The predefined users are added to [custom mock users](#custom-mock-users)defined by the application.
162
+
For convenience, the runtime creates default mock users to cover typical test scenarios, such as privileged users passing all security checks or users that pass authentication but don't have additional claims.
163
+
The runtime adds the predefined users to [custom mock users](#custom-mock-users)you define in the application.
164
164
165
165
You can opt out the preconfigured mock users by setting <Configjava>`cds.security.mock.defaultUsers = false`</Config>. { .java }
166
166
@@ -309,7 +309,7 @@ Integration tests running in production profile should verify that unauthenticat
309
309
- cross-landscape user propagation (including on-premise)
310
310
- streamlined SAP and non-SAP system [integration](https://help.sap.com/docs/cloud-identity-services/cloud-identity-services/integrating-service) (due to [OpenId Connect](https://openid.net/connect/) compliance)
311
311
312
-
IAS authentication is best configured and testedin the Cloud, so let's enhance the [previously started bookshop sample application](#mock-user-authentication) with a deployment descriptor for SAP BTP, Cloud Foundry Runtime (CF).
312
+
You can best configure and test IAS authenticationin the Cloud, so let's enhance the [previously started bookshop sample application](#mock-user-authentication) with a deployment descriptor for SAP BTP, Cloud Foundry Runtime (CF).
313
313
314
314
315
315
### Get Ready with IAS { #ias-ready }
@@ -466,10 +466,10 @@ In the [Administrative Console for Cloud Identity Services](https://help.sap.com
466
466
you can see and manage the deployed IAS application. You need a user with administrative privileges in the IAS tenant to access the services at `<ias-tenant>.accounts400.ondemand.com/admin`.
467
467
468
468
In the Console you can manage the IAS tenant and IAS applications, for example:
In BTP Cockpit, service instance `bookshop-ias` appears as a link that allows direct navigation to the IAS application in the Administrative Console for IAS.
@@ -510,7 +510,7 @@ The overall setup with CLI client and the Cloud services is sketched in the diag
510
510
{width="500px"}
511
511
512
512
As IAS requires mTLS-protected channels, **client certificates are mandatory**for all of the following requests:
513
-
- Token request to IAS in order to fetch a valid IAS token (1)
513
+
- Token request to IAS to fetch a valid IAS token (1)
514
514
- Business request to the CAP application presenting the token (2)
515
515
- Initial proof token request to IAS - not required for all business requests (3)
In the UI scenario, adding an Application Router as an ingress proxy to the deployment simplifies testing a lot.
629
-
It will take care of fetching the required IAS tokens when forwarding requests to the backend service.
628
+
In the UI scenario, adding an Application Router as an ingress proxy to the deployment simplifies testing significantly.
629
+
It fetches the required IAS tokens when forwarding requests to the backend service.
630
630
631
631
Enhancing the project with [SAP Cloud Portal](../deploy/to-cf#option-a-sap-cloud-portal) configuration adds an Application Router component as well as HTML5 Application Repository:
632
632
@@ -662,7 +662,7 @@ In addition, property `forwardAuthCertificates` needs to be `true` to support th
662
662
:::
663
663
664
664
As the login flow is based on an HTTP redirect between the CAP application and IAS login page,
665
-
IAS needs to know a valid callback URI which is offered by the AppRouter out-of-the-box.
665
+
IAS needs to know a valid callback URI that the AppRouter offers out of thebox.
666
666
The same is truefor the logout flow.
667
667
668
668
::: details Redirect URIs for login and logout
@@ -704,7 +704,7 @@ The Application Router should redirect to a login flow where you can enter the c
704
704
In contrast to [IAS](#ias-auth), XSUAA does not allow cross-landscape user propagation out of the box.
705
705
:::
706
706
707
-
XSUAA authentication is best configured and testedin the Cloud, so let's enhance the sample with a deployment descriptor for SAP BTP, Cloud Foundry Runtime (CF).
707
+
You can best configure and test XSUAA authenticationin the Cloud, so let's enhance the sample with a deployment descriptor for SAP BTP, Cloud Foundry Runtime (CF).
708
708
709
709
710
710
### Get Ready with XSUAA { #xsuaa-ready }
@@ -731,7 +731,7 @@ cds add hana
731
731
```
732
732
733
733
::: tip For Java
734
-
Command `add mta` will enhance the project with `cds-starter-cloudfoundry` and therefore all [dependencies required for security](../../java/security#maven-dependencies) are added transitively.
734
+
Command `add mta` enhances the project with `cds-starter-cloudfoundry` and therefore adds all [dependencies required for security](../../java/security#maven-dependencies) transitively.
735
735
736
736
:::
737
737
@@ -811,7 +811,7 @@ There are some mandatory configuration parameters:
811
811
812
812
::: warning
813
813
Upgrading the `service-plan` from type `application` to `broker` is not supported.
814
-
Hence, start with plan `broker` in case you want to provide technical APIs in future.
814
+
Start with plan `broker` if you want to provide technical APIs in future.
815
815
:::
816
816
817
817
[Learn more about XSUAA application security descriptor configuration syntax](https://help.sap.com/docs/btp/sap-business-technology-platform/application-security-descriptor-configuration-syntax){.learn-more}
@@ -855,9 +855,9 @@ For convenience, when adding the XSUAA facet, these artifacts are initially deri
855
855
856
856
At runtime, after successful authentication, the scope prefix `$XSAPPNAME`is removed by the CAP integration to match the corresponding CAP role.
857
857
858
-
In the [deplyoment descriptor](#adding-xsuaa), the optional property `role-collections` contains a list of preconfigured role collections.
859
-
In general, role collections are [created manually](./cap-users#xsuaa-assign) at runtime by user administrators.
860
-
But in case the underlying role template has no reference to an attribute, a corresponding role collection can be prepared already for sake of convenience.
858
+
In the [deployment descriptor](#adding-xsuaa), the optional property `role-collections` contains a list of preconfigured role collections.
859
+
In general, user administrators [create role collections manually](./cap-users#xsuaa-assign) at runtime.
860
+
However, if the underlying role template has no reference to an attribute, you can prepare a corresponding role collection for convenience.
861
861
862
862
In the example, role collection `admin (bookshop <org>-<space>)` containing the role template `admin` is defined and can be directly assigned to users.
863
863
@@ -1017,7 +1017,7 @@ The request returns with a valid XSUAA token which is suitable to pass authentic
If you also want to access the `AdminService`which requires the role `admin`,
1043
-
you need to fetch the token for the named user instead. That is the user which you have assigned the `admin (bookshop <org>-<space>)` role collection to.
1042
+
If you also want to access the `AdminService`that requires the role `admin`,
1043
+
you need to fetch the token for the named user instead. That is the user to whom you assigned the `admin (bookshop <org>-<space>)` role collection.
1044
1044
1045
1045
With the token for the named user, the following request should succeed:
In the UI scenario, adding an Application Router as an ingress proxy to the deployment simplifies testing a lot.
1085
-
It will take care of fetching the required XSUAA tokens when forwarding requests to the backend service.
1084
+
In the UI scenario, adding an Application Router as an ingress proxy to the deployment simplifies testing significantly.
1085
+
It fetches the required XSUAA tokens when forwarding requests to the backend service.
1086
1086
1087
1087
Enhancing the project with [SAP Cloud Portal](../deploy/to-cf#option-a-sap-cloud-portal) configuration adds an Application Router component as well as HTML5 Application Repository:
1088
1088
@@ -1121,7 +1121,7 @@ modules:
1121
1121
:::
1122
1122
1123
1123
As the login flow is based on an HTTP redirect between the CAP application and XSUAA login page,
1124
-
XSUAA needs to know a valid callback URI which is offered by the Application Router out of the box.
1124
+
XSUAA needs to know a valid callback URI that the Application Router offers out of the box.
1125
1125
The same is true for the logout flow.
1126
1126
1127
1127
::: details Redirect URIs for login and logout
@@ -1170,9 +1170,9 @@ will come soon
1170
1170
<div class="java">
1171
1171
1172
1172
There are multiple reasons why customization might be required:
1173
-
1. Endpoints for non-business requests often require specific authentication methods (e.g. health check, technical services).
1174
-
2. The application is deployed in the context of a service mesh with ingress authentication (e.g. Istio).
1175
-
3. The application needs to integrate with a 3rd party authentication service.
1173
+
1. Endpoints for non-business requests often require specific authentication methods (for example, health check, technical services).
1174
+
2. The application is deployed in the context of a service mesh with ingress authentication (for example, Istio).
1175
+
3. The application needs to integrate with a third-party authentication service.
1176
1176
1177
1177
{width="380px"}
1178
1178
@@ -1181,9 +1181,9 @@ There are multiple reasons why customization might be required:
1181
1181
1182
1182
1183
1183
- For CAP endpoints you are fine to go with the [automatic authentication](#model-auth) fully derived from the CAP model.
1184
-
- For custom endpoints that should be protected by the same authentication strategy you are also fine with automatc authentication as CAP will cover these endpoints by default.
1185
-
- For custom endpoints that should have a different kind of authentication strategy (e.g. X.509, basic or none) you can add a security configuration that [partially overrules](#partially-auth) the CAP integration partially for exactly these endpoints.
1186
-
- In casethe authentiaction is delegated to a different component, just [fully overrule](#fully-auth) CAP authentication and replace by any suitable strategy.
1184
+
- For custom endpoints that should be protected by the same authentication strategy you are also fine with automatic authentication as CAP will cover these endpoints by default.
1185
+
- For custom endpoints that should have a different kind of authentication strategy (for example, X.509, basic or none) you can add a security configuration that [partially overrules](#partially-auth) the CAP integration for exactly these endpoints.
1186
+
- If the authentication is delegated to a different component, just [fully overrule](#fully-auth) CAP authentication and replace it with any suitable strategy.
1187
1187
1188
1188
::: tip Secure by Default
1189
1189
**By default, CAP authenticates all endpoints of the microservice, including the endpoints which are not served by CAP itself**.
@@ -1352,7 +1352,7 @@ TODO
1352
1352
Endpoints of (CAP) applications deployed on SAP BTP are, by default, accessible from the public network.
1353
1353
Without security middleware configured, CDS services are exposed to the public.
1354
1354
1355
-
- **Don't rely on Application Router authentication**. Application Router as a frontend proxy does not shield the backend from incoming traffic. Therefore, the backend must be secured independently.
1355
+
- **Don't rely on Application Router authentication**. Application Router as a frontend proxy does not shield the backend from incoming traffic. Therefore, you must secure the backend independently.
1356
1356
1357
1357
- **Don't deviate from security defaults**. Only when absolutely necessary should experts make the decision to add modifications or replace parts of the standard authentication mechanisms.
0 commit comments