Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Weave have a built in proxy that is used to securely proxy internal resources to the end user. Resources may be map engines or documents that can only be accessed by the server or content that requires authentication and should not be accessible by the client alone. This is handled by Weave automatically with a high level of security.

You can also allow the client to access other internal content by manually setting up additional proxies.

...

Code Block
languagexml
firstline1
titlesecurity.xml
linenumberstrue
	<bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
		.....
		<property name="objectDefinitionSource">
			<value>
				CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
				PATTERN_TYPE_APACHE_ANT
				/login.*=IS_AUTHENTICATED_ANONYMOUSLY
				/login/**=IS_AUTHENTICATED_ANONYMOUSLY
				/report/remote=IS_AUTHENTICATED_ANONYMOUSLY
				/**=IS_AUTHENTICATED_FULLY
		        /admin.html=ROLE_ADMIN
		        /admin/**=ROLE_ADMIN
		        /services/admin/**=ROLE_ADMIN
				/proxy/**=IS_AUTHENTICATED_FULLY
			</value>
		</property>
	</bean>


Examples

Link to internal documents

For the data source data connection data definition there is a URL type available. This will create a hyperlink in the client and can be constructed dynamically with the underlying data, making it easy to route to a particular URL. But if the URL is pointing to an intranet source and the client is located outside of the domain, we will need to proxy the request. By altering the the column property, we will add the "proxy/" at the beginning to let Weave make the request instead of the client.

Code Block
languagexml
firstline1
titleURL in data definition
linenumberstrue
<data:datadefinition id="roadDetails">
    <datasourcedataconnection datasource="datasource.main" table="ROADS" key="RD_NAME" prefix="DISTINCT">
        <parameter name="plancode" label="Plan code" column="PLAN_CODE"/>
        <parameter name="alttype" label="Alt. Type" column="ALT_TYPE"/>
        <parameter type="url" name="plan" label="Plan" column="'proxy/http://imgsvr:8080/gis/documents/plan_'||ROADS.PLAN_CODE||'.pdf'" text="Open"/>
    </datasourcedataconnection>
</data:datadefinition>