ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzatz_5.4.0.1/51/webserv/wssecoverbind.htm

66 lines
6.6 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<LINK rel="stylesheet" type="text/css" href="../../../rzahg/ic.css">
<title>Default bindings for Web services</title>
</head>
<BODY>
<!-- Java sync-link -->
<SCRIPT LANGUAGE="Javascript" SRC="../../../rzahg/synch.js" TYPE="text/javascript"></SCRIPT>
<h5><a name="wssecoverbind"></a>Default bindings for Web services</h5>
<p>Certain applications can share certain binding information. This includes trust stores, key stores, and authentication method (token validation). WebSphere Application Server - Express provides support for default binding information. This means administrators can define binding information at the server level, and applications can refer to the binding information. The default binding information is defined in ws-security.xml and can be administered by either the administrative console or by scripting.</p>
<p>The following binding information can be defined in the ws-security.xml file:</p>
<ul>
<li><strong>Trust anchors (trust store)</strong>
<ul>
<li>Trust anchors contain key store configuration information that has the root-trusted certificates. Trust anchors are used for certificate path validation of the incoming X.509-formatted security tokens.</li>
<li>The Trust Anchor Name is used in the binding file (ibm-webservices-bnd.xmi and ibm-webservicesclient-bnd-xmi when Web services is running as client) to refer to the trust anchor defined in the default binding information. The Trust Anchor Name must be unique in the trust anchor collection.</li>
</ul><p></p></li>
<li><strong>Collection certificate store</strong>
<ul>
<li>The collection certificate store specifies a list of untrusted, intermediate certificates and is used for certificate path validation of incoming X.509-formatted security tokens. The default provider is IBMCertPath.</li>
<li>The Certificate Store Name is used in the binding file (ibm-webservices-bnd.xmi and ibm-webservicesclient-bnd-xmi when Web services is running as client) to refer to the certificate store defined in the default binding information. The Certificate Store Name must be unique to the collection certificate store collection.</li>
</ul><p></p></li>
<li><strong>Key locators</strong>
<ul>
<li>Key locators specify implementation of the com.ibm.wsspi.wssecurity.config.KeyLocator interface. This interface is used to retrieve keys for signature or encryption. Customer implementation can be provided to extend the key locator interface to retrieve keys using other methods. WebSphere Application Server - Express provides implementations to retrieve a key from the key store, map an authenticated identity to a key in the key store, or retrieve a key from the signer certificate (the latter two are used for encrypting the response).</li>
<li>The Key Locator Name is used in the binding file (ibm-webservices-bnd.xmi and ibm-webservicesclient-bnd-xmi when Web services is running as client) to refer to the key locator defined in the default binding information. The Key Locator Name must be unique to the key locators collection in the default binding information.</li>
</ul><p></p></li>
<li><strong>Trusted ID evaluators</strong>
<ul>
<li>Trusted ID evaluators are an implementation of the com.ibm.wsspi.wssecurity.id.TrustedIDEvaluator interface. This interface is used to make sure the identity-asserting authority is trusted. Additionally, you can extend the trusted identity evaluator to validate the trust. WebSphere Application Server - Express provides a default implementation for validating trust based on a pre-defined list of identities.</li>
<li>The Trusted ID Evaluator Name is used in the binding file (ibm-webservices-bnd.xmi) to refer to the trusted identity evaluator defined in the default binding information. The Trusted ID Evaluator Name must be unique to the Trusted ID Evaluator collection.</li>
</ul><p></p></li>
<li><strong>Login mappings</strong>
<ul>
<li>The login mappings define the mapping of the AuthMethod to JAAS Login Configuration. The mappings are used to authenticate the incoming security token embedded in the Web services security SOAP message header. The JAAS Login Configuration is defined in the administrative console under <strong>Security --&gt; JAAS Configuration --&gt; Application Logins</strong>.</li>
<li>WebSphere Application Server - Express defines BasicAuth (authenticates user name and password), Signature (maps the subject distinguished name (DN) in the certificate to a WebSphere Application Server - Express credential), and IDAssertion (maps the identity to a WebSphere Application Server - Express credential). After identity authentication, the associated credential is used in the downstream call.</li>
<li>This can be extended to authenticate custom security tokens by providing custom JAAS Login Configuration and using the com.ibm.wsspi.wssecurity.auth.module.WSSecurityMappingModule to create the principal and credential required by WebSphere Application Server - Express.</li>
<li>If LoginConfig (AuthMethod) is defined in the IBM extension deployment descriptor (ibm-webservices-ext.xmi), but there are no login mapping bindings (ibm-webservices-bnd.xmi) defined for the AuthMethod, Web services security run time uses the login mapping defined in the default binding information.</li>
</ul></li>
</ul>
<p>In WebSphere Application Server - Express, each server has a copy of the ws-security.xml file (default binding information for Web services security). To navigate to the server-level default binding in the administrative console, click <strong> Servers --&gt; Application Servers --&gt; <em>server_name</em> --&gt; Web Services: Default bindings for Web Services
Security</strong>, where <em>server_name</em> is the name of your application server.</p>
<p><strong>Figure 1: Web services security application level bindings and server level default binding
information.</strong></p>
<p><img src="rzamy517.gif" width="433" height="294" alt="Web services security application level bindings and server level default binding information"></p>
<p>Web services security run time uses the binding information in the Web module binding file (ibm-webservices-bnd.xmi or ibm-webservicesclient-bnd.xmi if Web services is acting as client on the server) if the binding information is defined in the application level binding file. For example, if key locator K1 is defined in both the application level binding file and the default binding file (ws-security.xml), the K1 in the application level binding file is used.</p>
</body>
</html>