11.5. The REST Interface Connector
Red Hat JBoss Data Grid supports three connector types, namely:
- The
hotrod-connector
element, which defines the configuration for a Hot Rod based connector. - The
memcached-connector
element, which defines the configuration for a memcached based connector. - The
rest-connector
element, which defines the configuration for a REST interface based connector.
The connector declaration enables a Hot Rod, Memcached, or REST server using a socket binding, which is declared within a
<socket-binding-group />
, and exposing the caches declared in the local
container, using defaults for all other settings. The following examples show how to connect to Hot Rod, Memcached, and REST servers.
The REST connector differs from Hot Rod and Memcached because it requires a web subsystem. Therefore configurations such as socket-binding, worker threads, timeouts, etc, must be performed on the web subsystem. The following enables a REST server.
<rest-connector virtual-server="default-host" cache-container="local" security-domain="other" auth-method="BASIC"/>
See Section 11.6, “Using the REST Interface” for more information.
11.5.1. Configure REST Connectors
Use the following procedure to configure the
rest-connector
element in Red Hat JBoss Data Grid's Remote Client-Server mode.
Procedure 11.1. Configuring REST Connectors for Remote Client-Server Mode
The
rest-connector
element specifies the configuration information for the REST connector.
The
virtual-server
ParameterThevirtual-server
parameter specifies the virtual server used by the REST connector. The default value for this parameter isdefault-host
. This is an optional parameter.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" /> </subsystem>
The
cache-container
ParameterThecache-container
parameter names the cache container used by the REST connector. This is a mandatory parameter.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" cache-container="local" /> </subsystem>
The
context-path
ParameterThecontext-path
parameter specifies the context path for the REST connector. The default value for this parameter is an empty string (""
). This is an optional parameter.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" cache-container="local" context-path="${CONTEXT_PATH}" /> </subsystem>
The
security-domain
ParameterThesecurity-domain
parameter specifies that the specified domain, declared in the security subsystem, should be used to authenticate access to the REST endpoint. This is an optional parameter. If this parameter is omitted, no authentication is performed.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" cache-container="local" context-path="${CONTEXT_PATH}" security-domain="${SECURITY_DOMAIN}" /> </subsystem>
The
auth-method
ParameterTheauth-method
parameter specifies the method used to retrieve credentials for the end point. The default value for this parameter isBASIC
. Supported alternate values includeBASIC
,DIGEST
, andCLIENT-CERT
. This is an optional parameter.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" cache-container="local" context-path="${CONTEXT_PATH}" security-domain="${SECURITY_DOMAIN}" auth-method="${METHOD}" /> </subsystem>
The
security-mode
ParameterThesecurity-mode
parameter specifies whether authentication is required only for write operations (such as PUT, POST and DELETE) or for read operations (such as GET and HEAD) as well. Valid values for this parameter areWRITE
for authenticating write operations only, orREAD_WRITE
to authenticate read and write operations. The default value for this parameter isREAD_WRITE
.<subsystem xmlns="urn:infinispan:server:endpoint:6.1"> <rest-connector virtual-server="default-host" cache-container="local" context-path="${CONTEXT_PATH}" security-domain="${SECURITY_DOMAIN}" auth-method="${METHOD}" security-mode="${MODE}" /> </subsystem>