Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>ALFANew to Visual Studio Code? Get it now.
ALFA

ALFA

Axiomatics AB

|
1,222 installs
| (1) | Free
ALFA: Abbreviated Language for Authorization
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Visual Studio Code extension for ALFA

The Visual Studio Code extension for ALFA provides language support for the Abbreviated Language for Authorization (ALFA), which is a domain-specific language for a high-level description of XACML policies. Among its features, it presents domain specific information such as attribute identifiers in compact form and it can be compiled into XACML 3.0.

Read the full documentation here

Demo

ALFA simplifies the authoring process for authorization policies, helping developers tackle authorization quicker than ever before. The language uses a syntax that closely resembles common programming languages such as Java and C#, making it much easier to read and work with than the verbose XML of the standard XACML policy model. By integrating the extension for ALFA into the VS Code environment, policy authoring becomes easier and faster as the XML syntax and encoding are abstracted away.

The Visual Studio Code extension for ALFA includes support for a number of development features, such as code completion, syntax highlighting, refactoring, and go to definition navigation. The included compiler automatically and incrementally generates the XACML equivalent, which can then be exported to compliant policy decision points.

ALFA was originally developed by Axiomatics AB as the "Axiomatics Language for Authorization" before the language definition was donated to OASIS to become an open standard under the name "Abbreviated Language for Authorization". The Visual Studio Code extension for ALFA contains Axiomatics' implementation of the open standard Abbreviated Language for Authorization v. 1.0.
​

Requirements

Java 11, 17, or 21 must be installed.

The extension will search for a Java installation in the following order, stopping as soon as a valid installation is detected:

  1. Checks the extension's settings.

    TIP: Use this option to specify an alternative Java path for the extension. This is particularly useful when JAVA_HOME or your system's PATH reference an unsupported Java version.

  2. Searches for the JAVA_HOME environment variable.

  3. Attempts to execute Java from your system's PATH.

If no valid Java installation is located, you will receive an error message.

Acknowledgements

ALFA plugin uses the following open source libraries. Please see the following links for source code and licences.

  • vscode-languageclient 9.0.1

  • minimatch 5.1.6

  • brace-expansion 2.0.1

  • balanced-match 1.0.2

  • semver 7.7.1

  • vscode-languageserver-protocol 3.17.5

  • vscode-jsonrpc 8.2.0

  • vscode-languageserver-types 3.17.5

  • aopalliance:aopalliance 1.0

  • args4j:args4j 2.37

  • ch.qos.reload4j:reload4j 1.2.25

  • com.google.code.findbugs:jsr305 3.0.2

  • com.google.code.gson:gson 2.12.1

  • com.google.errorprone:error_prone_annotations 2.28.0

  • com.google.errorprone:error_prone_annotations 2.36.0

  • com.google.guava:failureaccess 1.0.2

  • com.google.guava:guava 33.3.1-jre

  • com.google.guava:listenablefuture

  • com.google.inject:guice 7.0.0

  • com.google.j2objc:j2objc-annotations 3.0.0

  • commons-io:commons-io 2.16.1

  • io.github.classgraph:classgraph 4.8.179

  • jakarta.inject:jakarta.inject-api 2.0.1

  • org.antlr:antlr-runtime 3.2

  • org.checkerframework:checker-qual 3.43.0

  • org.eclipse.emf:org.eclipse.emf.common 2.24.0

  • org.eclipse.emf:org.eclipse.emf.ecore 2.26.0

  • org.eclipse.emf:org.eclipse.emf.ecore.change 2.14.0

  • org.eclipse.emf:org.eclipse.emf.ecore.xmi 2.16.0

  • org.eclipse.lsp4j:org.eclipse.lsp4j 0.23.1

  • org.eclipse.lsp4j:org.eclipse.lsp4j.jsonrpc 0.23.1

  • org.eclipse.platform:org.eclipse.equinox.common 3.17.100

  • org.eclipse.platform:org.eclipse.osgi 3.18.300

  • org.eclipse.xtend:org.eclipse.xtend.lib 2.37.0

  • org.eclipse.xtend:org.eclipse.xtend.lib.macro 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.common.types 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.ide 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.util 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.xbase 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.xbase.ide 2.37.0

  • org.eclipse.xtext:org.eclipse.xtext.xbase.lib 2.37.0

  • org.eclipse.xtext:xtext-dev-bom 2.37.0

  • org.ow2.asm:asm 9.7.1

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft