Getting Started
This document provides the basic information required to use Authorization Management Service (AMS) for authorization checks in your application. It provides an overview of the available library modules, their features, and how to integrate them into your projects.
Supported Languages and Frameworks
The client libraries of AMS consist of different modules for the following programming languages and frameworks:
- Java (Maven):
- JavaScript (Node.js):
- Go:
The next section lists the required module dependencies for different application setups, depending on the programming language and framework you are using.
Dependency Setup
TIP
In CAP applications, the cds add ams
command can be executed with the latest version of @sap/cds-dk
. It automatically adds the correct dependencies.
The following tables give an overview of the required AMS module dependencies for different application setups.
WARNING
The recommended modules and versions have changed over time (see Historical Setups)
Please begin new projects with the currently recommended modules.
Java
Project Type | jakarta-ams | spring-ams | jakarta-ams-test | cap-ams-support | @sap/ams |
---|---|---|---|---|---|
Jakarta EE | ✓ | - | [✓] | - | - |
Spring Boot | - | ✓ | [✓] | - | - |
CAP | - | - | - | ✓ | (✓)* |
[✓] = test-scoped (!) maven dependency
(✓) = devDependency in package.json
*
The (optional) Node.js module @sap/ams
can be added in the package.json
as a devDependency with version ^3
to provide dev-time features as cds build plugin.
Node.js
Project Type | @sap/ams | @sap/ams-dev | Java JDK |
---|---|---|---|
Plain Node.js | ✓ ^3 | (✓)* ^2 | (✓)* 17+ |
express (Node.js) | ✓ ^3 | (✓)* ^2 | (✓)* 17+ |
CAP (Node.js) | ✓ ^3 | (✓)* ^2 | (✓)* 17+ |
(✓) = devDependency
*
only required to compile DCL files before running local tests. We are currently finishing a compiler in Javascript that will make these dependencies obsolete.
Go
Project Type | cloud-identity-authorizations-golang-library |
---|---|
Go | ✓ |
Samples
For practical examples of how to set up and use the AMS client libraries, refer to the Samples section. It contains sample applications demonstrating the necessary setup for authorization with AMS in various programming languages and frameworks.
Historical Setups
If you operate productive applications with a dependency setup different from the recommended one, you can usually continue using the modules you already have installed for some time. However, we recommend migrating to the new modules and major versions eventually in discussion with us.
JDK < 17
For Java versions < 17, the modules java-ams
and java-ams-test
are a drop-in replacement for jakarta-ams
and jakarta-ams-test
.