server task virtualhost create
The server task virtualhost create command creates a virtual host junction.
Requires authentication (administrator ID and password) to use this command.
Syntax
- For local junctions:
- server task instance_name-webseald-host_name virtualhost create –t type –v virtual_host_name [options] vhost_label
- For non-local junctions:
- server task instance_name-webseald-host_name virtualhost create –t type –h host_name [options] vhost_label
Options
- instance_name-webseald-host_name
- Specifies the full server name of the installed WebSEAL instance.
You must specify the full server name in the exact format as displayed
in the output of the server list command.
The instance_name specifies the configured name of the WebSEAL instance. The
websealddesignation indicates that the WebSEAL service performs the command task. The host_name is the name of the physical machine where the WebSEAL server is installed.For example, if the configured name of a single WebSEAL instance is
default, and host machine name where the WebSEAL server is installed isabc.ibm.com, the full WebSEAL server name isdefault-webseald-abc.ibm.com.If an additional WebSEAL instance is configured and named
web2, the full WebSEAL server name isweb2-webseald-abc.ibm.com. - options
- Specifies the options that you can use with the server
task virtualhost create command. These options include:
- –A
- Enables a virtual host junction to support the lightweight third-party
authentication mechanism (LTPA). This option requires the –F and –Z options.
The –A, –F, and –Z options
all must be used together.
This option is valid for all junction types except
localtcpandlocalssl. - -2
- You can use this option in conjunction with the -A option to specify that LTPA version 2 cookies (LtpaToken2) are used. The -A option without the -2 option specifies that LTPA version 1 cookies (LtpaToken) are used.
- –b BA_value
- Defines how the WebSEAL server passes client identity information
in HTTP basic authentication (BA) headers to the back-end virtual
host, which is one of the following values:
filterignoresupplygso
This option is valid for all junction types except
localtcpandlocalssl.The default value is
filter. - –B
- Indicates that WebSEAL uses the BA header information to authenticate
to the back-end virtual host and to provide mutual authentication
over SSL. This option requires the –U and –W options.
This option is valid only with junctions that were created with the type of
sslorsslproxy. - –c header_type
- Inserts the Verify Identity Access client
identity in HTTP headers across the virtual host junction. The header_type argument
can include any combination of the following Verify Identity Access HTTP
header types:
{iv-user|iv-user-l}iv-groupsiv-credsall
The header types must be comma separated, and cannot have a spaces between the types. For example:
-c iv_user,iv_groupsSpecifying –c
allis the same as specifying –civ-user,iv-groups,iv-creds.This option is valid for all junction types except
localtcpandlocalssl. - –C
- Supports mutual authentication by enabling the front-end WebSEAL
server to pass its identity information to the back-end WebSEAL server
in a Basic Authentication (BA) header. Additionally, the –C option
enables single signon functionality provided by the –c option.
This option is valid only with junctions that were created with the type of
sslorsslproxy. - –D "dn"
- Specifies the distinguished name of the back-end server certificate.
This value, matched with the actual certificate DN enhances authentication
and provides mutual authentication over SSL. For example, the certificate
for
www.example.commight have a DN of"CN=WWW.EXAMPLE.COM,OU=Software,O=example.com\, Inc,L=Austin, ST=Texas,C=US"This option is valid only with junctions that were created with the type of
sslorsslproxy. - –e encoding_type
- Specifies the encoding to use when generating HTTP headers for
virtual host junctions. This encoding applies to headers that are
generated with both the –c junction option
and tag-value. Possible values for encoding are as follows:
- utf8_bin
- WebSEAL sends the headers in UTF-8.
- utf8_uri
- WebSEAL sends the headers in UTF-8 but URI also encodes them. This behavior is the default behavior.
- lcp_bin
- WebSEAL sends the headers in the local code page of the WebSEAL server.
- lcp_uri
- WebSEAL sends the headers in the local code page of the WebSEAL server, but URI also encodes them.
This option is valid for all junction types except
localtcpandlocalssl. - –f
- Forces the replacement (overwrite) of an existing virtual host
junction.
This option is used for junctions that were created with the any junction type.
- –F "keyfile"
Specifies the name of the keyfile used to encrypt LTPA cookie data.
The –F option requires –A and –Z options. The –A, –F, and –Z options all must be used together.
This option is valid for all junction types except
localtcpandlocalssl.- –g vhost_label
- The –g option causes a second additional
virtual host junction to share the same protected object space as
the initial virtual host junction.
This option is appropriate for junction pairs only (two junctions using complementary protocols). The option does not support the association of more than two junctions.
- –H host_name
- Specifies the DNS host name or IP address of the proxy server.
The –P option also supports proxy server
junctions. Valid values for host_name include
any valid IP host name. For example:
This option is valid only with junctions that were created with the type ofproxy.www.example.comtcpproxyorsslproxy. - –i
- Indicates that the WebSEAL junction does not treat URLs as case-sensitive.
To correctly authorize requests for junctions that are not case-sensitive,
WebSEAL does the authorization check on a lowercase version of the
URL. For example, a Web server that is running on a Windows operating system treats
requests for
INDEX.HTMandindex.htmas requests for the same file.Junctions to such a Web server should be created with the –i or –w option. ACLs or POPs that are attached to objects beneath the junction point should use the lower case object name. An ACL attached to/junction/index.htmwill apply to all of the following requests if the –i or –w option is used:/junction/INDEX.HTM/junction/index.htm/junction/InDeX.HtM
This option is valid for all junction except for the type of
localtcpandlocalssl. Local junctions are not case-sensitive only on Win32 platforms; all other platforms are case-sensitive. - –k
- Sends WebSEAL session cookies to the back-end virtual host. By
default, cookies are removed from requests that are sent to the server.
This option is valid for all junction types except
localtcpandlocalssl. - –K "key_label"
- Specifies the key label of the client-side certificate that WebSEAL
should present to the back-end server. Use of this option allows the
virtual host to authenticate the WebSEAL server using client certificates.
This option is valid only with junctions that were created with the type of
sslandsslproxy. - –l percent
- Defines the soft limit for consumption of worker threads.
This option is valid for all junction types except
localtcpandlocalssl. - –L percent
- Defines the hard limit for consumption of worker threads.
This option is valid for all junction types except
localtcpandlocalssl. - –p port
- Specifies the TCP port of the back-end third-party server. The
default value is
80for TCP junctions and443for SSL junctions.This option is valid for all junction types except
localtcpandlocalssl. - –P port
- Specifies the TCP port number for the HTTP proxy server. The –P option
is required when the –H option is used.
This option is valid only with junctions that were created with the type of
tcpproxyorsslproxy. - –q path
- Required option for back-end Windows™ virtual
hosts. Specifies the relative path for the query_contents script.
By default, Verify Identity Access looks
for the query_contents script in the /cgi_bin directory.
If this directory is different or the query_contents file
name is renamed, this option will indicate to WebSEAL the new URL
to the file.
This option is valid for all junction types except
localtcpandlocalssl. - –r
- Inserts the incoming IP address into the HTTP header across the
junction.
This option is valid for all junction types except
localtcpandlocalssl. - –R
- Allows the request to proceed but provides the rule failure reason
to the junction in an HTTP header. If the –R option
is not used and a rule failure occurs, WebSEAL will not allow the
request to proceed.
This option is valid for all junction types except
localtcpandlocalssl. - –s
- Indicates that the virtual host junction support stateful applications.
By default, virtual host junctions are not stateful.
This option is valid for all junction types except
localtcpandlocalssl. - –S
- Indicates the name of the forms single signon configuration
file.
This option is valid for all junction types except
localtcpandlocalssl. - –T {resource | resource_group}
- Specifies the name of the GSO resource or resource group. This
option is required only when the –b
gsooption is used.This option is valid for all junction types except
localtcpandlocalssl. - –u uuid
- Specifies the Universally Unique Identifier (UUID) of a back-end
server connected to WebSEAL by using a stateful virtual host junction
(–s option).
This option is valid for all junction types except
localtcpandlocalssl. - –U "user_name"
- Specifies the WebSEAL server user name. This option requires the –B and –W options.
WebSEAL uses the BA header information to authenticate to the back-end
virtual host and to provide mutual authentication over SSL.
This option is valid only with junctions that were created with the type of
sslorsslproxy. - –v vhost_name[:port]
-
WebSEAL selects a virtual host junction to process a request if the request's HTTP Host header matches the virtual host name and port number specified by the -v option.
The -v option is also used to specify the value of the Host header of the request sent to the back-end server.
The port number is required if the virtual host uses a non-standard port for the protocol. Standard port for TCP is 80; standard port for SSL is 443.
If –v is not specified for
tcp,ssl,tcpproxy, andsslproxytype junctions, the junction is selected from the information contained in the –h host and –p port options.The –v option is required for
localtcpandlocalssltype junctions. - –w
- Indicates Microsoft™ Windows file system support. This option
provides all of the functionality provided by the –i junction
option but disallows requests that contain file names that might be
interpreted as Windows file
name aliases.
This option is valid for all junction types except
localtcpandlocalssl. Local junctions prohibit URLs that contain Windows file name aliases on Win64 but allow such URLs on other platforms. - –W "password"
- Specifies the WebSEAL server password. This option requires the –B and –U options.
WebSEAL uses the BA header information to authenticate to the back-end
virtual host and to provide mutual authentication over SSL.
This option is valid only with junctions that were created with the type of
sslorsslproxy. - –Y
- Enables the Federation Runtime single sign-on
(SSO) for the junction. Note: Before using this option, you must first configure the WebSEAL configuration file to support the Federation Runtime single sign-on over junctions.
- –z replica_set
- Specifies the replica set, as follows:
- For distributed session cache environments:
- The replica set that sessions on the virtual host junction are managed under and provides the ability to group or separate login sessions among multiple virtual hosts.
- For environments that do not use the distributed session cache:
- The replica set that sessions on the virtual host junction are managed under and controls the partitioning of the WebSEAL session cache so the virtual host can be part of the same replica set as any standard junction that is assigned to that same replica set through the standard-junction-replica-set entry of the [session] stanza.
- –Z keyfile_pwd
- Specifies the password of the keyfile used to encrypt LTPA cookie
data. This option requires the –A and –F options.
The –A, –F, and –Z options
all must be used together.
This option is valid for all junction types except
localtcpandlocalssl.
- vhost_label
- Specifies the label name of the virtual host junction.
- –h host_name
- Required option for non-local junctions. Specifies the DNS host
name or IP address of the target server. This option is valid only
for non-local junctions; local junctions do not need a host name.
Valid values for host_name include any valid
IP host name. For example:
www.example.com - –t type
- Required option. Specifies the type of virtual host junction.
This option is required and must be one of the following types:
tcptcpproxysslsslproxylocaltcplocalssl
Authorization
Users and groups that require
access to this command must be given the s (server
administration) permission in the ACL that governs the /WebSEAL/host_name-instance_name/@vhost_label object.
For example, the sec_master administrative
user has permission by default.
This command is available only when WebSEAL is installed.
Return codes
- 0
- The command completed successfully. For WebSEAL server
task commands, the return code becomes
0when the command is sent to the WebSEAL server without errors.Note: Even if the command was successfully sent, the WebSEAL server might not be able to successfully complete the command and can return an error message. - 1
- The command failed. See "Error messages" in the IBM Knowledge Center which provides a list of the Verify Identity Access error messages by decimal or hexadecimal codes.
Examples
vhost-xy-https label.
This junction serves the virtual host x.y.com located
on the junctioned server cruz1.ibm.com. WebSEAL responds
to the Host: x.y.com header in SSL (HTTPS) requests
by forwarding the requests across this virtual host junction: pdadmin> server task default-webseald-abc.ibm.com virtualhost create
-t ssl -h cruz1.ibm.com -v x.y.com vhost-xy-httpsSee also
server task virtualhost add
server task virtualhost delete
server task virtualhost list
server task virtualhost remove
server task virtualhost show