<commit_before>fcrepo-webapp-plus
==================


[![Build Status](https://travis-ci.org/fcrepo4-exts/fcrepo-webapp-plus.png?branch=master)](https://travis-ci.org/fcrepo4-exts/fcrepo-webapp-plus)

Fcrepo4 webapp plus optional fcrepo dependencies.  This project builds a custom-configured
fcrepo4 webapp war file that includes extra dependencies and configuration options.  An
integration test exists to perform a basic deployment test only and may be useful just for
identifying syntax errors in configuration file updates or third party library version
incompatibilities.

# Authentication Packages

Basic Authentication is configured for both profiles at this time.  To choose a different
method, update the web.xml deployment descriptor for the webapp in question, being aware
that this may break the single integration test.

## Default Maven Build
The default maven build profile is Audit capability with WebAC
```
mvn install
```

## Role-Based Access Control Lists

This maven build profile bundles the Role-Based access control module to the fcrepo webapp. The configuration files are found in src/rbacl.
```
mvn install -P rbacl
```

## Web Access Control

This maven build profile bundles WebAC authorization module to the fcrepo webapp. The configuration files are found in src/webac.
```
mvn install -P webac
```

## XACML-based Access Control
An alternative maven build profile, these configuration files are found in src/xacml.
<commit_msg>Link to Quick Start with WebAC guide on the wiki.<commit_after>fcrepo-webapp-plus
==================


[![Build Status](https://travis-ci.org/fcrepo4-exts/fcrepo-webapp-plus.png?branch=master)](https://travis-ci.org/fcrepo4-exts/fcrepo-webapp-plus)

Fcrepo4 webapp plus optional fcrepo dependencies.  This project builds a custom-configured
fcrepo4 webapp war file that includes extra dependencies and configuration options.  An
integration test exists to perform a basic deployment test only and may be useful just for
identifying syntax errors in configuration file updates or third party library version
incompatibilities.

# Authentication Packages

Basic Authentication is configured for both profiles at this time.  To choose a different
method, update the web.xml deployment descriptor for the webapp in question, being aware
that this may break the single integration test.

## Default Maven Build
The default maven build profile is Audit capability with WebAC
```
mvn install
```

## Role-Based Access Control Lists

This maven build profile bundles the Role-Based access control module to the fcrepo webapp. The configuration files are found in src/rbacl.
```
mvn install -P rbacl
```

## Web Access Control

This maven build profile bundles WebAC authorization module to the fcrepo webapp. The configuration files are found in src/webac.
```
mvn install -P webac
```

There is also a [Quick Start with WebAC guide](https://wiki.duraspace.org/display/FEDORA4x/Quick+Start+with+WebAC) on the Fedora 4 wiki that guides you through the basic steps of creating and updating WebAC access control lists, and protecting resources with those ACLs.

## XACML-based Access Control
An alternative maven build profile, these configuration files are found in src/xacml.

{'fraction_non_alphanumeric': 0.07067575945443273, 'fraction_numerical': 0.0030998140111593306, 'mean_word_length': 4.942909760589319, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 5, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1387226', 'n_tokens_mistral': 878, 'n_tokens_neox': 851, 'n_words': 398}