<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Weblogic wonders!!!</title>
	<atom:link href="http://weblogic-wonders.com/weblogic/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://weblogic-wonders.com/weblogic</link>
	<description>A place for all middleware solutions!!</description>
	<lastBuildDate>Fri, 03 Feb 2012 19:37:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Webservice Security &#8211; WS-Trust and WS-SecureConversation an overview</title>
		<link>http://weblogic-wonders.com/weblogic/2012/02/03/webservice-security-ws-trust-and-ws-secureconversation-an-overview/</link>
		<comments>http://weblogic-wonders.com/weblogic/2012/02/03/webservice-security-ws-trust-and-ws-secureconversation-an-overview/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 19:34:24 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5166</guid>
		<description><![CDATA[Webservices “A Web Service is a system designed to support interoperable communication from machine to machine over a network. It includes an interface described in a machine-processable format (WSDL), and is typically conveyed using HTTP with XML serialization.” Webservices exist in a wide range of architecture, technologies and software design. They provide an interaction mechanism [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Webservices</strong></p>
<p>“A Web Service is a system designed to support interoperable communication from machine to machine over a network. It includes an interface described in a machine-processable format (WSDL), and is typically conveyed using HTTP with XML serialization.”<br />
Webservices exist in a wide range of architecture, technologies and software design. They provide an interaction mechanism between Business to Business applications. Webservices rely on SOAP Protocol for the interaction between the B2B applications.  SOAP is and XML Based protocol that uses HTTP as its base transport protocol. Following is an example of a SOAP Request and SOAP Response</p>
<p>&nbsp;</p>
<p><strong>REQUEST</strong></p>
<p>&nbsp;</p>
<blockquote><p>POST /SecureHelloWorldService/SecureHelloWorldService</p>
<p>HTTP/1.1 User-Agent: BEA WebLogic Server 10.3.0.0</p>
<p>Content-Type: text/xml; charset=utf-8 SOAPAction: &#8220;&#8221;</p>
<p>Host: 127.0.0.1:7000</p>
<p>Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2</p>
<p>Connection: keep-alive Content-Length: 187</p>
<p>&nbsp;</p>
<p>&lt;env:Envelope xmlns:env=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&gt;</p>
<p>&lt;env:Header /&gt;</p>
<p>&lt;env:Body&gt;</p>
<p>&lt;m:sayHello xmlns:m=&#8221;http://www.bea.com&#8221;&gt;</p>
<p>&lt;m:s&gt;World&lt;/m:s&gt;</p>
<p>&lt;/m:sayHello&gt;</p>
<p>&lt;/env:Body&gt;</p>
<p>&lt;/env:Envelope&gt;</p></blockquote>
<p>&nbsp;</p>
<p><strong>RESPONSE</strong></p>
<p>&nbsp;</p>
<blockquote><p>HTTP/1.1 200 OK Date: Tue, 24 Jan 2012 06:15:42 GMT</p>
<p>Transfer-Encoding: chunked</p>
<p>Content-Type: text/xml; charset=utf-8</p>
<p>SOAPAction: &#8220;&#8221; X-Powered-By: Servlet/2.5 JSP/2.1</p>
<p>&nbsp;</p>
<p>&lt;env:Envelope</p>
<p>xmlns:env=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&gt;</p>
<p>&lt;env:Header /&gt;</p>
<p>&lt;env:Body&gt;</p>
<p>&lt;m:sayHelloResponse xmlns:m=&#8221;http://www.bea.com&#8221;&gt;</p>
<p>&lt;m:return&gt;Hello World&lt;/m:return&gt;</p>
<p>&lt;/m:sayHelloResponse&gt;</p>
<p>&lt;/env:Body&gt;</p>
<p>&lt;/env:Envelope&gt;</p>
<p>&nbsp;</p></blockquote>
<p><strong>Webservices Security</strong></p>
<p>For a secure environment data exchange cannot happen in clear text as sensitive information might be exchanged. Also securing the communication channel for all communication is an overhead and might not be acceptable in all scenarios. Hence many specifications exist which allows to secure the data exchanged. One such framework is WS-Policy which defines how secure messages can be exchanged. To demonstrate this I have secured the above Webservice using standard policies and captured the SOAP Request and SOAP Response</p>
<p>&nbsp;</p>
<blockquote><p>@Policies({    @Policy(uri=&#8221;policy:Auth.xml&#8221;, direction=Policy.Direction.inbound),    @Policy(uri=&#8221;policy:Sign.xml&#8221;),    @Policy(uri=&#8221;policy:Encrypt.xml&#8221;)})</p></blockquote>
<p>&nbsp;</p>
<p>The message body is encrypted</p>
<blockquote><p>﻿&lt;env:Body wsu:Id=&#8221;Body_FE10KgY262Y31ZRm&#8221;		xmlns:wsu=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&#8221;&gt;</p>
<p>&lt;ns1:EncryptedData Id=&#8221;3ZpXu9BlqgQNKF4s&#8221;			Type=&#8221;http://www.w3.org/2001/04/xmlenc#Content&#8221; MimeType=&#8221;text/xml&#8221;			Encoding=&#8221;UTF-8&#8243; xmlns:ns1=&#8221;http://www.w3.org/2001/04/xmlenc#&#8221;&gt;			&lt;ns1:EncryptionMethod				Algorithm=&#8221;http://www.w3.org/2001/04/xmlenc#tripledes-cbc&#8221; /&gt;			&lt;ns1:CipherData&gt;				&lt;ns1:CipherValue&gt;					T7MoCfhyDwXRjLrpRhZ62es3qK2jhTbY2ReS1ZSWhRaBidi8DwW5EbzNQKgudtPa8m7zxkW/ljebMV5dSvIZrJC1o+6peC111iFgPC4jMyA=				&lt;/ns1:CipherValue&gt;</p>
<p>&lt;/ns1:CipherData&gt;</p>
<p>&lt;/ns1:EncryptedData&gt;</p>
<p>&lt;/env:Body&gt;<a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2012/02/soap-body.jpg"><br />
</a></p></blockquote>
<p>&nbsp;</p>
<p>In addition to this, security tokens need to be passed for authentication and authorization purpose.</p>
<p><strong>Username Password Token</strong></p>
<blockquote><p>&lt;wsse:UsernameToken wsu:Id=&#8221;unt_CQbnapvDgXSDnTtZ&#8221;				xmlns:wsu=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&#8221;&gt;				&lt;wsse:Username&gt;weblogic&lt;/wsse:Username&gt;</p>
<p>&lt;wsse:Password					Type=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText&#8221;&gt;					weblogic				&lt;/wsse:Password&gt;</p>
<p>&lt;/wsse:UsernameToken&gt;</p></blockquote>
<p>&nbsp;</p>
<p><strong>Binary Security Token</strong></p>
<blockquote><p>&lt;wsse:BinarySecurityToken wsu:Id=&#8221;bst_MIWyV2RKFBlLh9AT&#8221;xmlns:wsu=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&#8221;ValueType=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3&#8243;EncodingType=&#8221;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary&#8221;&gt;MIICYTCCAgugAwIBAgIQsAtcv4jhs9Rpsu6m&#8230;..</p>
<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;xuT69jAN</p>
<p>BgkqhkiG9w0BAQQFADB5MQswCQYDVQQGEwJVUzEQM</p>
<p>/wsse:BinarySecurityToken&gt;</p>
<p>&nbsp;</p></blockquote>
<p>Following is the lists of supported tokens that can be used for authentication and authorization purposes</p>
<p>Lists of tokens (Table 1)</p>
<p>Table 1</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="193" valign="top">Token Type</td>
<td width="445" valign="top">Description</td>
</tr>
<tr>
<td width="193" valign="top">User Name Token-Plain</td>
<td width="445" valign="top">Carries basic information (username and   a clear text password or shared secret) for purposes of authenticating the   user identity to the WSP. Communication is done in plain text so SSL over   HTTPS transport must be used to protect the credentials.</td>
</tr>
<tr>
<td width="193" valign="top">Kerberos Token</td>
<td width="445" valign="top">Carries basic information (username   and, optionally, a password or shared secret), in a Kerberos token, for   purposes of authenticating the user identity to the WSP.</td>
</tr>
<tr>
<td width="193" valign="top">X.509 Token</td>
<td width="445" valign="top">Contains an X.509 formatted certificate   for authentication using credentials created with a public key infrastructure   (PKI). In this case, the WSC and WSP must trust each other&#8217;s public keys or   share a common, trusted certificate authority.</td>
</tr>
<tr>
<td width="193" valign="top">SAML-Holder-Of-Key Token</td>
<td width="445" valign="top">Uses the SAML holder-of-key   confirmation method whereby the WSC supplies a SAML assertion with public key   information as the means for authenticating the requester to the web service   provider. A second signature binds the assertion to the SOAP payload. Can use   either SAML v1.x or SAML v2.</td>
</tr>
<tr>
<td width="193" valign="top">SAML-Sender Vouches Token</td>
<td width="445" valign="top">Uses the SAML sender-vouches   confirmation method whereby the WSC adds a SAML assertion and a digital   signature to a SOAP header. A sender certificate or public key is also   provided with the signature. Can use either SAML v1.x or SAML v2.</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><strong>Key Exchange using WS-Trust </strong></p>
<p>In the model above it’s the responsibility of the server to validate the tokens, signatures and perform authentication and authorization. This again can be an overhead, especially if the numbers of clients are very high. Also if the client is not known to the Service, it becomes difficult to establish a trust with the client. To address this situation WS-Trust standard has been adopted.  In this model, the responsibility of establishing the trust has been assigned to a third party. Clients request for a Security Token from a Secure Token Server (STS). Once they get the token, they present the token to the Service. The exchange mechanism and standard format of the token has been provided in WS-Trust specification.  In my test, I used opensso (an open source STS Server) and captured the request-response interaction as depicted in Figure below.</p>
<p>&nbsp;</p>
<p>﻿<a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2012/02/sts1.png"><img class="alignright size-full wp-image-5174" title="sts" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2012/02/sts1.png" alt="" width="956" height="453" /></a><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2012/02/sts.png"><br />
</a></p>
<p>1)Client requests for a Security token to a Secure Token Server</p>
<blockquote><p>&lt;soap:Envelope  xmlns:wsa=&#8221;http://schemas.xmlsoap.org/ws/2004/08/addressing&#8221;  xmlns:wsu=&#8221;http://schemas.xmlsoap.org/ws/2002/07/utility&#8221;  xmlns:wsse=&#8221;http://schemas.xmlsoap.org/ws/2002/12/secext&#8221;  xmlns:soap=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&gt;</p>
<p>&lt;soap:Header&gt;      &lt;wsa:To&gt;http://demo&lt;/wsa:To&gt;</p>
<p>&lt;wsse:Security soap:mustUnderstand=&#8221;1&#8243;&gt; 	&#8230;.      &lt;/wsse:Security&gt;    &lt;/soap:Header&gt;    &lt;soap:Body wsu:Id=&#8221;Id-d7fceab4-62ed-45fb-bc09-69310ff1712e&#8221;&gt;      &lt;wsse:RequestSecurityToken&gt;        &lt;wsse:TokenType&gt;wsse:SecurityContextToken&lt;/wsse:TokenType&gt;        &lt;wsse:RequestType&gt;wsse:ReqIssue&lt;/wsse:RequestType&gt;        &lt;wsp:AppliesTo xmlns:wsp=&#8221;http://schemas.xmlsoap.org/ws/2002/12/policy&#8221;&gt;          &lt;wsa:EndpointReference&gt;            &lt;wsa:Address&gt;http://localhost:7001//SecureHelloWorldService/SecureHelloWorldService&lt;/wsa:Address&gt;          &lt;/wsa:EndpointReference&gt;</p>
<p>&lt;/wsp:AppliesTo&gt;</p>
<p>&lt;/wsse:RequestSecurityToken&gt;    &lt;/soap:Body&gt;</p>
<p>&lt;/soap:Envelope&gt;</p></blockquote>
<p>2)Secure Token Server provides the token to the Client.</p>
<blockquote><p>&lt;soap:Envelope xmlns:wsa=&#8221;http://schemas.xmlsoap.org/ws/2004/08/addressing&#8221;  xmlns:wsu=&#8221;http://schemas.xmlsoap.org/ws/2002/07/utility&#8221;  xmlns:wsse=&#8221;http://schemas.xmlsoap.org/ws/2002/12/secext&#8221;  xmlns:soap=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&gt;</p>
<p>&lt;soap:Header&gt;      &lt;wsse:Security soap:mustUnderstand=&#8221;1&#8243;&gt;	&#8230;.</p>
<p>&lt;/wsse:Security&gt;</p>
<p>&lt;/soap:Header&gt;    &lt;soap:Body wsu:Id=&#8221;Id-aa53632b-2211-46c8-451-4234b12ecf834&#8243;&gt;</p>
<p>&lt;xenc:EncryptedData xmlns:xenc=&#8221;http://www.w3.org/2001/04/xmlenc#&#8221;&gt;        &lt;xenc:EncryptionMethod Algorithm=&#8221;http://www.w3.org/2001/04/xmlenc#tripledes-cbc&#8221; /&gt;        &lt;xenc:CipherData&gt;          &lt;xenc:CipherValue&gt;&#8230;</p>
<p>&lt;/xenc:CipherValue&gt;</p>
<p>&lt;/xenc:CipherData&gt;</p>
<p>&lt;/xenc:EncryptedData&gt;</p>
<p>&lt;/soap:Body&gt;  &lt;/soap:Envelope&gt;</p></blockquote>
<p>3)Using  the token, the service is invoked.</p>
<blockquote><p>&lt;soap:Envelope xmlns:soap=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;  xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;  xmlns:xsd=&#8221;http://www.w3.org/2001/XMLSchema&#8221;  xmlns:wsa=&#8221;http://schemas.xmlsoap.org/ws/2004/08/addressing&#8221;  xmlns:wsu=&#8221;http://schemas.xmlsoap.org/ws/2002/07/utility&#8221;  xmlns:wsse=&#8221;http://schemas.xmlsoap.org/ws/2002/12/secext&#8221;&gt;</p>
<p>&lt;soap:Header&gt;      &lt;wsa:To&gt;http://quoteservice&lt;/wsa:To&gt;</p>
<p>&lt;wsse:Security soap:mustUnderstand=&#8221;1&#8243;&gt;	 &#8230;.      &lt;/wsse:Security&gt;</p>
<p>&lt;/soap:Header&gt;    &lt;soap:Body wsu:Id=&#8221;Id-aa53632b-2211-46c8-451-4234b12ecf834&#8243;&gt;</p>
<p>&lt;xenc:EncryptedData xmlns:xenc=&#8221;http://www.w3.org/2001/04/xmlenc#&#8221;&gt;	&#8230;</p>
<p>&lt;/xenc:EncryptedData&gt;    &lt;/soap:Body&gt;</p>
<p>&lt;/soap:Envelope&gt;</p></blockquote>
<p>&nbsp;</p>
<p>4)Response from the service</p>
<blockquote><p>&lt;soap:Envelope xmlns:soap=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;  xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;  xmlns:xsd=&#8221;http://www.w3.org/2001/XMLSchema&#8221;  xmlns:wsa=&#8221;http://schemas.xmlsoap.org/ws/2004/08/addressing&#8221;  xmlns:wsu=&#8221;http://schemas.xmlsoap.org/ws/2002/07/utility&#8221;&gt;    &lt;soap:Header&gt;    &lt;/soap:Header&gt;    &lt;soap:Body&gt;       &lt;m:sayHelloResponse xmlns:m=&#8221;http://www.bea.com&#8221;&gt;</p>
<p>&lt;m:return&gt;Hello World&lt;/m:return&gt;       &lt;/m:sayHelloResponse&gt;</p>
<p>&lt;/soap:Body&gt;</p>
<p>&lt;/soap:Envelope&gt;</p></blockquote>
<p>&nbsp;</p>
<p><strong>References</strong></p>
<p>1) Webservices Vulnerabilities, Security Compass Inc 2007<br />
2) WS Trust Specification</p>
<p>http://specs.xmlsoap.org/ws/2005/02/trust/WS-Trust.pdf</p>
<p>3) WS Security Specification</p>
<p>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf</p>
<p>4) Open SSO STS Solution</p>
<p>http://en.wikipedia.org/wiki/OpenSSO</p>
<p>http://www.oracle.com/technetwork/testcontent/opensso-091890.html</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2012/02/03/webservice-security-ws-trust-and-ws-secureconversation-an-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Converting certificate formats</title>
		<link>http://weblogic-wonders.com/weblogic/2012/01/25/converting-certificate-formats/</link>
		<comments>http://weblogic-wonders.com/weblogic/2012/01/25/converting-certificate-formats/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 11:23:36 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[pfx p12]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5162</guid>
		<description><![CDATA[Converting Certificate from JKS to P12 Format keytool -importkeystore -srckeystore Fabrizio.jks -destkeystore Fabrizio.p12 -srcstoretype JKS -deststoretype PKCS12 -srcstorepass weblogic1 -deststorepass weblogic1 -srcalias {4d390f81-7f7a-4a0a-ae76-9a5ea5ba567f} -destalias {4d390f81-7f7a-4a0a-ae76-9a5ea5ba567f} -srckeypass weblogic1 -destkeypass weblogic1 Converting certificate from PFX to JKS Format java -classpath ./jetty-6.1.1.jar org.mortbay.jetty.security.PKCS12Import Fabrizio.pfx Fabrizio.jks Converting certificate from P12 to PFX Format 1. Import the certificate in the [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Converting Certificate from JKS to P12 Format </strong></p>
<p>keytool -importkeystore -srckeystore Fabrizio.jks -destkeystore Fabrizio.p12 -srcstoretype JKS -deststoretype PKCS12 -srcstorepass weblogic1 -deststorepass weblogic1 -srcalias {4d390f81-7f7a-4a0a-ae76-9a5ea5ba567f} -destalias {4d390f81-7f7a-4a0a-ae76-9a5ea5ba567f} -srckeypass weblogic1 -destkeypass weblogic1</p>
<p><strong>Converting certificate from PFX to JKS Format</strong></p>
<p>java -classpath ./jetty-6.1.1.jar org.mortbay.jetty.security.PKCS12Import Fabrizio.pfx Fabrizio.jks</p>
<p><strong>Converting certificate from P12 to PFX Format</strong></p>
<p>1. Import the certificate in the browser using certificate import wiward by double clicking on the p12 certificate.<br />
2. Go to Internet Options > Content > Certificates > Personal<br />
3. Choose your certificate and click export.<br />
4. Select Yes Export the Private Key<br />
5. Select Personal Information Exchange Format and provide the password.<br />
6. Store the file as .pfx.</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2012/01/25/converting-certificate-formats/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thread Dumps</title>
		<link>http://weblogic-wonders.com/weblogic/2011/10/04/thread-dumps/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/10/04/thread-dumps/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 04:26:16 +0000</pubDate>
		<dc:creator>anandraj</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5143</guid>
		<description><![CDATA[There could be scenarios like Server Hang, Crashes, Performance delays where you might need to capture Thread Dumps for further analysis. Thread dumps provide a snapshot of the current active threads. It provides the stack trace of all the java threads in the JVM. There are different ways to capture thread dumps; some are based [...]]]></description>
			<content:encoded><![CDATA[<p>There could be scenarios like Server Hang, Crashes, Performance delays where you might need to capture Thread Dumps for further analysis.</p>
<blockquote><p>Thread dumps provide a snapshot of the current active threads. It provides the stack trace of all the java threads in the JVM.</p></blockquote>
<p>There are different ways to capture thread dumps; some are based on the operating systems.</p>
<p><strong>On Windows:</strong></p>
<ol>
<li>Go to the server standard output and press a Control + Break and copy the thread dump onto a file</li>
</ol>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/10/1.jpg"><img class="aligncenter size-medium wp-image-5144" title="1" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/10/1-300x178.jpg" alt="" width="300" height="178" /></a></p>
<p><strong>On UNIX/ Linux</strong></p>
<p>Find the process id for your server</p>
<ol>
<li>Ps –ef  | grep java</li>
<li>Kill -3 &lt;pid&gt;</li>
</ol>
<p>&nbsp;</p>
<p>WebLogic utilities to capture thread dumps</p>
<p><strong>1. webLogic.Admin utility</strong></p>
<p>a. Open a command prompt , set the classpath running <strong>&lt;DOMAIN_HOME&gt;/bin/setDomain.env</strong></p>
<p>b. Execute the below command</p>
<blockquote><p><strong>java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic1 THREAD_DUMP</strong></p></blockquote>
<p>Note: Thread Dump will be printed to the servers standard out (by default, the shell in which the server is running).</p>
<p><strong>2. Using Admin Console</strong></p>
<p>a. Log into the Admin Console , click on the server</p>
<p>b. Click onto the Server  &#8211;&gt; Monitoring  &#8211;&gt; Threads</p>
<p>c. Click on the Dump Thread Stack</p>
<p>&nbsp;</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/10/2.jpg"><img class="aligncenter size-medium wp-image-5145" title="2" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/10/2-300x108.jpg" alt="" width="300" height="108" /></a></p>
<p>&nbsp;</p>
<p><strong>3. Using WLST (WebLogic Scripting Tool)</strong></p>
<p>a. Save and execute  the below snippet as ThreadDump.py</p>
<blockquote><p>************************************</p>
<p>connect(&#8216;weblogic&#8217;,'weblogic1&#8242;,&#8217;t3://localhost:7001&#8242;)</p>
<p>cd(&#8216;Servers&#8217;)</p>
<p>cd(&#8216;AdminServer&#8217;)</p>
<p>threadDump()</p>
<p>disconnect()</p>
<p>exit()</p>
<p>************************************</p></blockquote>
<p>Note: The thread dumps get stored in the location from where you run the WLST script</p>
<p>&nbsp;</p>
<p>If your Server is running as windows service, then follow the below steps</p>
<p>1. Open a command prompt and execute the below command</p>
<blockquote><p><strong><em> WL_HOME</em>\bin\beasvc -dump -svcname:<em>service-name</em></strong></p></blockquote>
<p>There are other tools that can be used to capture thread dumps for example jrcmd (for JRockit) ,Samurai etc.</p>
<p>NOTE: It is recommended to capture a set of 6-7 thread dumps at an interval 8-10 seconds to find a pattern in the thread execution.</p>
<p>Cheers,</p>
<p>Wonders Team</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/10/04/thread-dumps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How and Why we need to SECURE our Web Server</title>
		<link>http://weblogic-wonders.com/weblogic/2011/07/26/how-and-why-we-need-to-secure-our-web-server/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/07/26/how-and-why-we-need-to-secure-our-web-server/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 14:55:19 +0000</pubDate>
		<dc:creator>Shiva Shankar</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5127</guid>
		<description><![CDATA[Introduction: Over the year’s internet and the internet based applications had revolutioned our life. They had created many new global business opportunities for enterprises conducting online business. However, the security risks associated with conducting e-business have resulted in security becoming a major factor for online success or failure. Any high-profile hacking attack has proven that [...]]]></description>
			<content:encoded><![CDATA[<p><strong><em><span style="text-decoration: underline">Introduction</span></em></strong>: Over the year’s internet and the internet based applications had revolutioned our life. They had created many new global business opportunities for enterprises conducting online business. However, the security risks associated with conducting e-business have resulted in security becoming a major factor for online success or failure.</p>
<p>Any high-profile hacking attack has proven that web security still remains a serious issue for any business that&#8217;s running its operations online. Web servers are one of the most targeted public faces of an organization, because of the sensitive data they usually host.  Hence, securing web server is as important as securing the website or web application itself.  If we have a secure web application and an insecure web server, or vice versa, it still puts business at a huge risk. Therefore, it is important for us to have a secured web server.</p>
<p>&nbsp;</p>
<p><strong><em><span style="text-decoration: underline">What is a Web Server</span></em></strong>?? A Web Server can be defined as an HTTP protocol dependant server used for re-direction of the client requests to the appropriate application servers. Following is the pictorial representation of the purpose of a web server:</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/14.jpg"><img class="aligncenter size-full wp-image-5128" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/14.jpg" alt="" width="510" height="354" /></a></p>
<p>*<strong><span style="text-decoration: underline">Security Implementation in Apache Web Server</span>:</strong> Below is the schematic representation of the communication with a secured web server.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/21.jpg"><img class="aligncenter size-full wp-image-5130" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/21.jpg" alt="" width="505" height="327" /></a></p>
<p>The security implementation inside the web server is implemented in two different steps:-</p>
<p><strong>1) </strong>Installation of SSL Certificate</p>
<p><strong>2) </strong>By following the security guide lines</p>
<p><strong><span style="text-decoration: underline"> </span></strong></p>
<p><em><span style="text-decoration: underline">Installation of certificate</span></em>:- The installation of the SSL certificates for apache servers involves the following stages:</p>
<p>1. Create a Certificate Signing Request (CSR)<br />
2. Apply online<br />
3. Installing your Certificate<br />
4. Displaying your Secure Site Seal</p>
<p>&nbsp;</p>
<ol>
<li>For a      webserver generate a CSR and a private key, use the following command:                                                            <code>openssl req -config      openssl.cnf -new -out my-server.csr</code></li>
</ol>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/22.jpg"><img class="aligncenter size-full wp-image-5131" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/22.jpg" alt="" width="669" height="338" /></a><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/23.jpg"><img class="aligncenter size-full wp-image-5132" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/23.jpg" alt="" width="669" height="338" /></a></p>
<p>&nbsp;</p>
<p>2. Removes      the pass phrase from the private key because it contains the entropy      information for creating the key and could be used for cryptographic      attacks against your private key using the command:</p>
<p><code> rsa -in privkey.pem -out my-server.key</code></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/24.jpg"><img class="aligncenter size-full wp-image-5133" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/24.jpg" alt="" width="657" height="68" /></a></p>
<p>3.  Use      the below command to generate the self signed certificate (later replace      this with the certificate from Certifying Authority)</p>
<p><code> x509 -in my-server.csr -out my-server.cert -req -signkey my-server.key -days 365</code></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/25.jpg"><img class="aligncenter size-full wp-image-5134" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/25.jpg" alt="" width="670" height="102" /></a></p>
<p>&nbsp;</p>
<p>4.  Create an <code>Apache/conf/ssl</code> directory and move <code>my-server.key</code> and <code>cert</code> into it</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/26.jpg"><img class="aligncenter size-full wp-image-5135" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/26.jpg" alt="" width="670" height="134" /></a></p>
<p>&nbsp;</p>
<p>5.  Open      the httpd.conf file and add the following lines:</p>
<p><code>LoadModule ssl_module modules/mod_ssl.so<a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/27.jpg"><img class="aligncenter size-full wp-image-5136" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/27.jpg" alt="" width="454" height="149" /></a></code></p>
<p>&nbsp;</p>
<p>6.   Add      the following to the end of <code>httpd.conf</code>:</p>
<pre><code>        SSLMutex sem</code></pre>
<pre><code>        SSLRandomSeed startup builtin</code></pre>
<pre><code>        SSLSessionCache none</code></pre>
<pre><code> </code></pre>
<pre><code>        SSLLog logs/SSL.log</code></pre>
<pre><code>        SSLLogLevel info</code></pre>
<pre><code>        &lt;VirtualHost&gt;</code></pre>
<pre><code>        SSLEngine On</code></pre>
<pre><code>        SSLCertificateFile conf/ssl/my-server.cert</code></pre>
<pre><code>        SSLCertificateKeyFile conf/ssl/my-server.key</code></pre>
<p><code> &lt;/VirtualHost&gt;</code></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/28.jpg"><img class="aligncenter size-full wp-image-5137" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/28.jpg" alt="" width="497" height="333" /></a></p>
<p>&nbsp;</p>
<p><code>Restart the Apache server and access the applications with the SSL mode.</code></p>
<p>&nbsp;</p>
<p>Following are some of the tips and guidelines implementing, will help our apache servers to be more and more secured:-</p>
<p>1)      Update the Apache Server with the latest security patched and fix pack. (stable version of Apache)</p>
<p>2)      Hide the Apache Version number, and other sensitive information as below inside httpd.conf:</p>
<pre>                       ServerSignature Off</pre>
<pre>                       ServerTokens Prod</pre>
<pre><strong><span style="text-decoration: underline">Note</span></strong>: ServerSignature Off tells apache not to display the server version on error pages, or other pages it generates.</pre>
<pre>ServerTokens Prod tells apache to only return Apache in the Server header, returned on every page request.</pre>
<p><strong> </strong></p>
<p>3)      Many at times the apache installation run as anonyms or root, make sure that the apache is running under its own user account and group. You can check this information in httpd.conf:</p>
<pre>        User apache</pre>
<pre>        Group apache</pre>
<p>&nbsp;</p>
<p>4)      Make sure that apache doesn’t use/access any of the files outside its web root directory (this is the location where we have all of apache files):</p>
<p>&nbsp;</p>
<pre>               &lt;Directory /&gt;</pre>
<pre>                 Order Deny,Allow</pre>
<pre>                 Deny from all</pre>
<pre>                 Options None</pre>
<pre>                 AllowOverride None</pre>
<pre>                &lt;/Directory&gt;</pre>
<pre>               &lt;Directory /web&gt;</pre>
<pre>                 Order Allow,Deny</pre>
<pre>                 Allow from all</pre>
<pre>                &lt;/Directory&gt;</pre>
<p>&nbsp;</p>
<p>5)      In typical operation, Apache is started by the root user. Set the right permissions on ServerRoot Directories as follows:</p>
<p>&nbsp;</p>
<p><code>mkdir /usr/local/apache </code><br />
<code>cd /usr/local/apache </code><br />
<code>mkdir bin conf logs </code><br />
<code>chown 0 . bin conf logs </code><br />
<code>chgrp 0 . bin conf logs </code><br />
<code>chmod 755 . bin conf logs</code></p>
<p>&nbsp;</p>
<p><code>6) </code>**Server Side Includes (SSI) presents an administrator with several potential security risks like increased load on the server, etc. Hence, turn off server side includes by <code>Options directive inside a Directory</code> tag inside the httpd.conf file. Set Options to either <code>None or –Includes.</code></p>
<p>&nbsp;</p>
<p>7)      Allowing users to execute ***CGI scripts in any directory should only be considered if:</p>
<p>Ø      You trust your users not to write scripts which will deliberately or          accidentally expose your system to an attack.</p>
<p>Ø      You consider security at your site to be so feeble in other areas, as to make one more potential hole irrelevant.</p>
<p>Ø      You have no users, and nobody ever visits your server</p>
<p>&nbsp;</p>
<p>8)      Watch logs to keep up-to-date about what is actually going on against your server you have to check the Log Files. They will give you some understanding of what attacks is thrown against the server and allow you to check if the necessary level of security is present.</p>
<pre>
chown -R root:root /usr/local/apache</pre>
<pre>               chmod -R o-rwx /usr/local/apache</pre>
<pre><em><span style="text-decoration: underline">Note</span></em>: /usr/local/apache is Apache installation directory</pre>
<p>9)      Lower the time out and restrict request body requests as follows:</p>
<pre>               Timeout 45</pre>
<pre>               LimitRequestBody 1048576</pre>
<p>10)   Restrict the accessing of resource by using the IP restriction:</p>
<pre>               Order Deny,Allow</pre>
<pre>               Deny from all</pre>
<pre>               Allow from 127.0.0.1</pre>
<p>&nbsp;</p>
<p><strong><span style="text-decoration: underline"> </span></strong></p>
<p><strong><span style="text-decoration: underline">Note</span></strong>: **Server Side Include page is typically an HTML page with embedded command(s) that are executed by the Web server.</p>
<p>&nbsp;</p>
<p>***CGI program is any program designed to accept and return data that confirms to the CGI specification. The program could be written in any programming language, including C, Perl, Java, or Visual Basic. CGI programs are the most common way for Web servers to interact dynamically with users<strong> </strong></p>
<p>&nbsp;</p>
<p><strong><span style="text-decoration: underline">References</span></strong>:</p>
<p>1)      <a href="http://httpd.apache.org/docs/2.0/misc/security_tips.html">http://httpd.apache.org/docs/2.0/misc/security_tips.html</a></p>
<p>2)      <a href="http://www.google.com/">http://www.google.com</a></p>
<p>3)      <a href="http://www.modssl.org/docs/2.8/ssl_reference.html">http://www.modssl.org/docs/2.8/ssl_reference.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/07/26/how-and-why-we-need-to-secure-our-web-server/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>All Server States using WLST</title>
		<link>http://weblogic-wonders.com/weblogic/2011/07/20/all-server-states-using-wlst/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/07/20/all-server-states-using-wlst/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 06:26:53 +0000</pubDate>
		<dc:creator>anandraj</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[server state]]></category>
		<category><![CDATA[wlst]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5118</guid>
		<description><![CDATA[This is an extension to my earlier post which gives the runtime attributes about the alive servers. http://weblogic-wonders.com/weblogic/2011/03/16/weblogic-server-runtime-using-wlst/ However there could be scenarios where you might want to keep a track of all the server states like RUNNING, SHUTDOWN  etc  in the domain. The below WLST script provides a list of all the servers in [...]]]></description>
			<content:encoded><![CDATA[<p>This is an extension to my earlier post which gives the runtime attributes about the <strong>alive </strong>servers.</p>
<p><a href="http://weblogic-wonders.com/weblogic/2011/03/16/weblogic-server-runtime-using-wlst/">http://weblogic-wonders.com/weblogic/2011/03/16/weblogic-server-runtime-using-wlst/</a></p>
<p>However there could be scenarios where you might want to keep a track of all the server states like RUNNING, SHUTDOWN  etc  in the domain.</p>
<p>The below WLST script provides a list of all the servers in the domains and their respective server states. To check the servers which are in shutdown state.</p>
<p>Steps:-</p>
<p><strong>1. Script to monitor all the Server States in the domain.</strong></p>
<p>a. Save the below script AllServerStatus.py on to your local machine.</p>
<p>**************************************************************************</p>
<p><code>username = 'weblogic'</code></p>
<p><code>password = 'weblogic1'</code></p>
<p><code>URL='t3://localhost:7001'</code></p>
<p><code>connect(username,password,URL)</code></p>
<p><code>domainConfig()</code></p>
<p><code>serverList=cmo.getServers();</code></p>
<p><code>domainRuntime()</code></p>
<p><code>cd('/ServerLifeCycleRuntimes/')</code></p>
<p><code>for server in serverList:</code></p>
<p><code> name=server.getName()</code></p>
<p><code> cd(name)</code></p>
<p><code> serverState=cmo.getState()</code></p>
<p><code> if serverState=='SHUTDOWN':</code></p>
<p><code> print '**** Shutdown Servers ****'</code></p>
<p><code> print 'Server *****'+ name +'***** State *****'+serverState</code></p>
<p><code> break </code></p>
<p><code> print 'Server *****'+ name +'***** State *****'+serverState</code></p>
<p><code> cd('..')</code></p>
<p>**************************************************************************</p>
<p><strong>2. Execute the WLST Script</strong></p>
<p>a.  Set the <strong>CLASSPATH</strong><strong> </strong>by running the <strong>setDomainEnv</strong><strong> </strong>script from the</p>
<p>Alternatively you can set the CLASSPATH by specifying the <strong>–cp</strong> argument while executing the WLST Script</p>
<p>For Ex: <strong> </strong><strong>java –cp $BEA_HOME/wlserver_10.3/server/lib/weblogic.jar  weblogic.WLST AllServerStatus.py</strong></p>
<p>&nbsp;</p>
<p><strong>Downloads</strong></p>
<p>You can download the WLST script from the below link.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/serverStateAll.py_.txt">serverStateAll.py</a></p>
<p><strong>Note: Save the script as AllServerStatus.py</strong></p>
<p>References:</p>
<p><a href="http://download.oracle.com/docs/cd/E11035_01/wls100/config_scripting/monitoring.html">http://download.oracle.com/docs/cd/E11035_01/wls100/config_scripting/monitoring.html</a></p>
<p>Regards,</p>
<p>Wonders Team.</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/07/20/all-server-states-using-wlst/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Certificate Management in WebSphere Application Server</title>
		<link>http://weblogic-wonders.com/weblogic/2011/07/06/certificate-management-in-websphere-application-server-2/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/07/06/certificate-management-in-websphere-application-server-2/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 18:41:48 +0000</pubDate>
		<dc:creator>Shiva Shankar</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WAS]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5087</guid>
		<description><![CDATA[Before, trying to understand about the certificate management, installation of certificates inside the WebSphere application server we should first understand why we need ssl communication and what is the impact of not installing the certificates. During the olden days whenever we want to make any banking transaction (e.g.: depositing the money, with draw money, transfer [...]]]></description>
			<content:encoded><![CDATA[<p>Before, trying to understand about the certificate management, installation of certificates inside the WebSphere application server we should first understand why we need ssl communication and what is the impact of not installing the certificates.</p>
<p>During the olden days whenever we want to make any banking transaction (e.g.: depositing the money, with draw money, transfer money, etc), make a reservation for Air travel, etc&#8230; we used to visit the branches, stand in the queue and wait for our turn and complete the transaction. But, in present day with <em><span style="text-decoration: underline;">time constraint</span>, busy world</em> none of us wants to waste time being in queue. Thanks to the internet based applications which made every work possible with a finger click. But, always a question remains how about the security to these transactions on the internet??.</p>
<p>The JSSE (JAVA Secured Socket Extension) is a set of packages that enable secure Internet communications. It implements a Java technology version of Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols. It includes functionality for data encryption, server authentication, message integrity &amp; optional client authentication.</p>
<p>&nbsp;</p>
<p><strong><em><span style="text-decoration: underline;">SSL configuration</span></em></strong>:  SSL configuration help us in making secured communication between the application deployed inside the websphere and external client (browser) by encapsulating the data as required by JSSE. These certificates inside the websphere are mainly of 2 different types. They are as follows:-</p>
<p>(a)     Self Signed certificates ( or Internal or Default Certificates)</p>
<p>(b)     Signer Certificates (or Digital Certificates)</p>
<p>&nbsp;</p>
<p><strong><em><span style="text-decoration: underline;">Self Signed Certificates</span></em></strong>: From websphere application server 6.1 onwards the self signed certificates are created automatically during the profile creation .i.e., whenever the profile is federated to cell self signed certificated are created automatically. The management of these self signed certificates is automatically taken care. The expiration of these certificates is monitored on a pre-defined schedule with notifications sent to system logs and email-sending capabilities. The certificates will be automatically replaced before expiration, by default, and, there will of course be a warning prior to the certificate replacement.</p>
<p>&nbsp;</p>
<p><strong><em><span style="text-decoration: underline;">Signer Certificates</span></em></strong>: A <strong>signer certificate</strong> represents certificate and public key associated with some personal certificate. The signer certificate explicitly trusts connections made to or by the owner of the associated personal certificate. The signer certificate is typically made completely public by the owner of the personal certificate, but it&#8217;s up to the receiving entity to determine if it is a trusted signer prior to adding it to the trust store.</p>
<p>Following are the steps involved for installing the SSL signer certificates:-</p>
<p>1)      **Invoke the ikeyman from the profiles bin directory.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/11.jpg"><img class="aligncenter size-full wp-image-5090" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/11.jpg" alt="" width="527" height="127" /></a></p>
<p>2)      In the IBM Key Management Utility, click on <strong>Key Database File</strong> and then <strong>New</strong></p>
<p><strong> </strong></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/2.jpg"><img class="aligncenter size-full wp-image-5091" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/2.jpg" alt="" width="960" height="540" /></a></p>
<p>3)    Choose <strong>Key database</strong> type and select <strong>JKS</strong>. Give any name to keystore like Test_key.jks.</p>
<p>4)      Click the <strong>Browse</strong> button and give location where we want to store keystore file.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/4.jpg"><img class="aligncenter size-full wp-image-5092" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/4.jpg" alt="" width="617" height="180" /></a></p>
<p>5)      Click <strong>OK</strong>. Enter a password and click <strong>OK</strong>.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/5.jpg"><img class="aligncenter size-full wp-image-5093" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/5.jpg" alt="" width="527" height="290" /></a></p>
<p>6)      Click <strong>Create</strong> then <strong>New Certificate Request</strong> to bring up the Create New Key and Certificate Request window.</p>
<p>7)      Type a <strong>Key Label</strong>, <strong>Common Name</strong>, <strong>Organization</strong>, <strong>Locality</strong>, <strong>State</strong>, and select a <strong>Country</strong>. Select 1024 for <strong>Key Size.</strong></p>
<p><strong><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/6.jpg"><img class="aligncenter size-full wp-image-5095" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/6.jpg" alt="" width="640" height="444" /></a><br />
</strong></p>
<p>&nbsp;</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/7.jpg"><img class="aligncenter size-full wp-image-5094" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/7.jpg" alt="" width="527" height="148" /></a></p>
<p>8)      Click on <strong>Key Database File</strong> and then <strong>Open</strong>. Locate the keystore file that you created when you generated the CSR. Type the password and click <strong>OK</strong>.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/8.jpg"><img class="aligncenter size-full wp-image-5096" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/8.jpg" alt="" width="786" height="505" /></a></p>
<p>9)      Select <strong>Signer Certificates</strong> from the pull-down list.</p>
<p>10)   Click the button to <strong>Add&#8230;</strong></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/9.jpg"><img class="aligncenter size-full wp-image-5097" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/9.jpg" alt="" width="1280" height="664" /></a></p>
<p>11)   Login to WAS console with the valid credentials and Expand &#8220;Security&#8221; link at left hand side pane.</p>
<p>12)  Click on &#8220;SSL certificate and key management&#8221;.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/10.jpg"><img class="aligncenter size-full wp-image-5098" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/10.jpg" alt="" width="1028" height="466" /></a></p>
<p>13)  Click on &#8220;SSL configurations&#8221; link.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/111.jpg"><img class="aligncenter size-full wp-image-5099" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/111.jpg" alt="" width="745" height="350" /></a></p>
<p>14)   Click on &#8220;Key stores and certificates&#8221; link.</p>
<p>15)  Select the scope by clicking on CellDefaultTrustStore (or NodeDefaultTrustStore) link from the list.</p>
<p>16)   Click on &#8220;Signer certificates&#8221; link.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/12.jpg"><img class="aligncenter size-full wp-image-5100" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/12.jpg" alt="" width="990" height="377" /></a></p>
<p>17)   Click on Add button.</p>
<p>18)   Give alias name as &#8220;Test_Cert&#8221;.</p>
<p>19)  Give filename as complete path of &#8220;Test_Cert.cer&#8221; on server.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/13.jpg"><img class="aligncenter size-full wp-image-5101" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/13.jpg" alt="" width="1280" height="664" /></a></p>
<p>20)  Click apply and then OK and restart all the WAS server instances.</p>
<p>&nbsp;</p>
<p>Regards,</p>
<p>Weblogic-wonders Team</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/07/06/certificate-management-in-websphere-application-server-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Installation of WAS Fix pack</title>
		<link>http://weblogic-wonders.com/weblogic/2011/07/06/installation-of-was-fix-pack/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/07/06/installation-of-was-fix-pack/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 06:14:34 +0000</pubDate>
		<dc:creator>Shiva Shankar</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5078</guid>
		<description><![CDATA[Steps to install the Fixpack:- Following is the step-by-step approach for installing the fixpacks for WebSphere Application Server environment:- (1) Take the back-up of the existing configuration. You run the below command to take the backup of the existing configuration from the individual profiles- (a) ./backupConfig.sh name_config.zip (unix) (b) backupConfig.bat name_config.zip  (windows) (2) Download the [...]]]></description>
			<content:encoded><![CDATA[<p><span style="text-decoration: underline">Steps to install the Fixpack:-</span><br />
Following is the step-by-step approach for installing the fixpacks for WebSphere Application Server environment:-</p>
<p>(1) Take the back-up of the existing configuration. You run the below command to take the backup of the existing<br />
configuration from the individual profiles-<br />
(a) ./backupConfig.sh name_config.zip (unix)<br />
(b) backupConfig.bat name_config.zip  (windows)</p>
<p>(2) Download the update installer (for WAS6.1 use http://www-01.ibm.com/support/docview.wss?rs=180&amp;uid=swg24012718)</p>
<p><em><span style="text-decoration: underline">Note:</span></em> While downloading the update installer make sure that the version of update installer is more than your websphere application server installation. Check the WAS version  by running the below commands from appserver profiles bin folder) :</p>
<p>(a) ./versionInfo.sh (unix)</p>
<p>(b) versionInfo.bat (windows)</p>
<p>(3) Now, we can start the installation of fix pack to the existing WAS installation by using the following two different ways-<br />
(a) Silent Mode &#8212; Generally, this mode is used for windows or UNIX based OS<br />
(b) Graphical Mode &#8212; This mode is generally used for windows based OS</p>
<p><span style="text-decoration: underline"><strong>Graphical User Interface:</strong></span> Following are the steps for installation of fix packs using the GUI mode:-</p>
<p>(1) Download the required fix pack from the official IBM support Web site (http://www-01.ibm.com/support/docview.wss?rs=180&amp;uid=swg27004980#ver61) in to temporary directory updi_root /maintenance directory.</p>
<p>(2) Make the current working directory: updi_root.</p>
<p>(3) Ensure that you stop all running processes. (we can use ps -ef|grep java and kill -9)</p>
<p>(4) Launch the Update Installer. For example:<br />
(a) Windows &#8211; update.bat<br />
(b) Windows Vista &#8211; update.exe<br />
(c) AIX,HP-UX,Linux,Solaris &#8211; ./update.sh</p>
<p>(5) The Welcome panel will display. Click Next.</p>
<p>(6) The system will prompt for the location of the product that you want updated. Click Next.</p>
<p>(7) The system will present the choices of Install or Uninstall maintenance. The install option is the default. Click Next.</p>
<p>(8) The system will prompt for the maintenance location where packages can be found. Enter the directory name containing the packages, or browse for the required directory. Click Next.</p>
<p>(9) The following options exist for installing a fix pack:<br />
(a) For installing the fix pack without the feature pack, select the desired fix pack. Click Next.<br />
(b) For installing the fix pack with the feature pack, select the desired fix pack. Another panel is displayed that prompts you to install the enabling interim fix. Click Next.</p>
<p>(10) Before the installation, the Confirmation panel will confirm which packages will be installed.</p>
<p>(11) After the installation, the Summary panel will list which packages have been installed.</p>
<p>(12) After you install the fix pack, check the installation log to verify that the install was successful. The log can be found at app_server_root /logs/update/maintenance_package.install.</p>
<p><span style="text-decoration: underline"><em>Note: </em></span> (1) By any one of the following messages in the log file we can confirm the status of fix pack installation.<br />
(a) INSTCONFSUCCESS &#8211; The operation was a success.<br />
(b) INSTCONFPARTIALSUCCESS &#8211; The operation was partially successful, refer to the log for more details.<br />
(c) INSTCONFFAILED &#8211; The operation failed, refer to the log for more details</p>
<p>(2)*** The update installer and WAS installation should be installed by using the same user id belonging to the group id.</p>
<p>regards,</p>
<p>weblogic-wonders team</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/07/06/installation-of-was-fix-pack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BASIC Authentication in Websphere Application Server</title>
		<link>http://weblogic-wonders.com/weblogic/2011/07/01/basic-authentication-in-websphere-application-server/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/07/01/basic-authentication-in-websphere-application-server/#comments</comments>
		<pubDate>Fri, 01 Jul 2011 12:19:16 +0000</pubDate>
		<dc:creator>Faisal</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[basic authentication]]></category>
		<category><![CDATA[Websphere]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5065</guid>
		<description><![CDATA[1 ) Secure the application resources using the descriptor (web.xml) &#60;!DOCTYPE web-app PUBLIC &#8220;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&#8221; &#8220;http://java.sun.com/dtd/web-app_2_3.dtd&#8221;&#62; &#60;web-app id=&#8221;WebApp&#8221;&#62; &#60;welcome-file-list&#62; &#60;welcome-file&#62;index.jsp&#60;/welcome-file&#62; &#60;/welcome-file-list&#62; &#60;security-constraint&#62; &#60;display-name&#62;Constraint-0&#60;/display-name&#62; &#60;web-resource-collection&#62; &#60;web-resource-name&#62;Constraint-0&#60;/web-resource-name&#62; &#60;url-pattern&#62;/*&#60;/url-pattern&#62; &#60;/web-resource-collection&#62; &#60;auth-constraint&#62; &#60;role-name&#62;pegaadmin&#60;/role-name&#62; &#60;/auth-constraint&#62; &#60;user-data-constraint&#62; &#60;transport-guarantee&#62;NONE&#60;/transport-guarantee&#62; &#60;/user-data-constraint&#62; &#60;/security-constraint&#62; &#60;login-config&#62; &#60;auth-method&#62;BASIC&#60;/auth-method&#62; &#60;/login-config&#62; &#60;security-role&#62; &#60;role-name&#62;pegaadmin&#60;/role-name&#62; &#60;/security-role&#62; &#60;/web-app&#62; &#160; 2) Deploy the application on Websphere Application Server. 3) [...]]]></description>
			<content:encoded><![CDATA[<p>1 ) Secure the application resources using the descriptor (web.xml)</p>
<blockquote><p>&lt;!DOCTYPE web-app PUBLIC &#8220;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&#8221; &#8220;http://java.sun.com/dtd/web-app_2_3.dtd&#8221;&gt;<br />
&lt;web-app id=&#8221;WebApp&#8221;&gt;</p>
<p>&lt;welcome-file-list&gt;<br />
&lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;<br />
&lt;/welcome-file-list&gt;</p>
<p>&lt;security-constraint&gt;<br />
&lt;display-name&gt;Constraint-0&lt;/display-name&gt;</p>
<p>&lt;web-resource-collection&gt;<br />
&lt;web-resource-name&gt;Constraint-0&lt;/web-resource-name&gt;<br />
&lt;url-pattern&gt;/*&lt;/url-pattern&gt;<br />
&lt;/web-resource-collection&gt;</p>
<p>&lt;auth-constraint&gt;<br />
&lt;role-name&gt;pegaadmin&lt;/role-name&gt;<br />
&lt;/auth-constraint&gt;</p>
<p>&lt;user-data-constraint&gt;<br />
&lt;transport-guarantee&gt;NONE&lt;/transport-guarantee&gt;<br />
&lt;/user-data-constraint&gt;</p>
<p>&lt;/security-constraint&gt;</p>
<p>&lt;login-config&gt;<br />
&lt;auth-method&gt;BASIC&lt;/auth-method&gt;<br />
&lt;/login-config&gt;</p>
<p>&lt;security-role&gt;<br />
&lt;role-name&gt;pegaadmin&lt;/role-name&gt;<br />
&lt;/security-role&gt;</p>
<p>&lt;/web-app&gt;</p></blockquote>
<p>&nbsp;</p>
<p>2) Deploy the application on Websphere Application Server.</p>
<p>3)  Go to</p>
<p>Enterprise Applications &gt; Test_Basic_war &gt; Security role to user/group mapping</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/look-up-users.png"><img class="aligncenter size-medium wp-image-5066" title="look up users" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/look-up-users-300x84.png" alt="" width="300" height="84" /></a><br />
You will see the application role configured in the web.xml. Map the users to this role from WAS Console.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/search-users-and-select-faisal.png"><img class="aligncenter size-medium wp-image-5067" title="search users and select faisal" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/search-users-and-select-faisal-300x118.png" alt="" width="300" height="118" /></a><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/selected-user.png"><img class="aligncenter size-medium wp-image-5068" title="selected user" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/selected-user-300x80.png" alt="" width="300" height="80" /></a>Step 4) Go to</p>
<p>Security&gt; Secure administration, applications, and infrastructure  and Check Enable application security.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/enable-application-security.png"><img class="aligncenter size-medium wp-image-5069" title="enable application security" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/enable-application-security-300x249.png" alt="" width="300" height="249" /></a></p>
<p>Restart your Server.</p>
<p>Step 5) Access your application, you will be prompted for authentication.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/auth.png"><img class="aligncenter size-medium wp-image-5070" title="auth" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/07/auth-300x270.png" alt="" width="300" height="270" /></a></p>
<p>&nbsp;</p>
<p>Let us know if you face any issues.</p>
<p>&nbsp;</p>
<p>Cheers!</p>
<p>Wonders Team</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/07/01/basic-authentication-in-websphere-application-server/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Analyzing WebSphere Thread Dump</title>
		<link>http://weblogic-wonders.com/weblogic/2011/05/25/analyzing-websphere-thread-dump/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/05/25/analyzing-websphere-thread-dump/#comments</comments>
		<pubDate>Wed, 25 May 2011 10:58:28 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[thread dump analyzer]]></category>
		<category><![CDATA[Websphere]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5037</guid>
		<description><![CDATA[We can take thread dump on WAS using wsadmin tool in the following way. D:\IBM\WebSphere\AppServer\profiles\ProcessCommander\bin&#62;wsadmin.bat WASX7209I: Connected to process &#8220;server1&#8243; on node WKHANFXPNode02 using SOAP conn ector; The type of process is: UnManagedProcess WASX7029I: For help, enter: &#8220;$Help help&#8221; wsadmin&#62;set jvm [$AdminControl completeObjectName type=JVM,process=server1,*] WebSphere:name=JVM,process=server1,platform=proxy,node=WKHANFXPNode02,j2eeType=J VM,J2EEServer=server1,version=6.1.0.0,type=JVM,mbeanIdentifier=JVM,cell=WKHANFXP Node01Cell,spec=1.0 wsadmin&#62;$AdminControl invoke $jvm dumpThreads This will create a [...]]]></description>
			<content:encoded><![CDATA[<p>We can take thread dump on WAS using wsadmin tool in the following way.</p>
<blockquote><p>D:\IBM\WebSphere\AppServer\profiles\ProcessCommander\bin&gt;wsadmin.bat<br />
WASX7209I: Connected to process &#8220;server1&#8243; on node WKHANFXPNode02 using SOAP conn<br />
ector;  The type of process is: UnManagedProcess<br />
WASX7029I: For help, enter: &#8220;$Help help&#8221;<br />
wsadmin&gt;set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]<br />
WebSphere:name=JVM,process=server1,platform=proxy,node=WKHANFXPNode02,j2eeType=J<br />
VM,J2EEServer=server1,version=6.1.0.0,type=JVM,mbeanIdentifier=JVM,cell=WKHANFXP<br />
Node01Cell,spec=1.0<br />
wsadmin&gt;$AdminControl invoke $jvm dumpThreads</p></blockquote>
<p>This will create a java core file in the following directory</p>
<p>D:\IBM\WebSphere\AppServer\profiles\ProcessCommander</p>
<p>javacore.20110511.174141.9628.txt</p>
<p>We need to download IBM Thread Dump Analyzer from <a href="http://www.alphaworks.ibm.com/tech/jca/download">here</a></p>
<p>Start the tool using the following command</p>
<p>E:\tools\jca412&gt;java -Xmx515m -jar jca412.jar</p>
<p>Open the thread dump from</p>
<p>File &gt; Open Thread Dumps</p>
<p>Then click on Analysis &gt; Thread Details.</p>
<p>This will give you details of all the threads.<a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/thread-details-ibm.jpg"><img class="aligncenter size-medium wp-image-5043" title="IBM Thread Dump Analyzer" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/thread-details-ibm-300x232.jpg" alt="" width="300" height="232" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/05/25/analyzing-websphere-thread-dump/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSL configuration for WebLogic Server</title>
		<link>http://weblogic-wonders.com/weblogic/2011/05/25/ssl-configuration-for-weblogic-server/</link>
		<comments>http://weblogic-wonders.com/weblogic/2011/05/25/ssl-configuration-for-weblogic-server/#comments</comments>
		<pubDate>Wed, 25 May 2011 10:49:41 +0000</pubDate>
		<dc:creator>anandraj</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[One Way]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://weblogic-wonders.com/weblogic/?p=5023</guid>
		<description><![CDATA[These days the enterprise applications have grown more complex and boast a great deal of sensitive and critical data online. Cyber security has become more than important these days to secure the data. Secure Sockets Layer plays a pivotal role in how a sensitive data can be protected, accessed over a network. Secure Sockets Layer [...]]]></description>
			<content:encoded><![CDATA[<p>These days the enterprise applications have grown more complex and boast a great deal of sensitive and critical data online. Cyber security has become more than important these days to secure the data.</p>
<p>Secure Sockets Layer plays a pivotal role in how a sensitive data can be protected, accessed over a network.</p>
<blockquote><p><strong>Secure Sockets Layer (SSL)</strong> provides secure connections by allowing two applications connecting over a network connection to authenticate the other&#8217;s identity and by encrypting the data exchanged between the applications. Authentication allows a server and optionally a client to verify the identity of the application on the other end of a network connection. Encryption makes data transmitted over the network intelligible only to the intended recipient.</p></blockquote>
<p>It provides transport level security by usage of the SSL certificates which are provided by the Industry standard Certificate Authorities like <strong>Verisign, GeoTrust, GoDaddy</strong> etc.</p>
<p>WebLogic Server supports SSL on a dedicated listen port which defaults to 7002. To establish an SSL connection, a Web browser connects to WebLogic Server by supplying the SSL listen port and the HTTPs protocol in the connection URL, for example, <code><a href="https://myserver:7002">https://myserver:7002</a></code>.</p>
<p>The below post describes the complete procedure about procuring the certificate, installing and configuring the certificate to the WebLogic Server.</p>
<p><strong>1: Generating and procuring the certificate:</strong></p>
<p>a: Open a command prompt and set the environment by running the <strong>setDomainEnv </strong>script.</p>
<p>b: Generate the private – public key pair. For demonstration we would use <strong>keytool </strong>java utility to do so. However we can use other utilities like openssl etc.</p>
<blockquote><p><strong>keytool -genkey -alias client -keyalg  RSA -keysize 2048  -keystore identity.jks -storepass password -keypass password</strong></p></blockquote>
<p>c: Generate a <strong>Certificate Signing Request (CSR)</strong> and send it to Certifying Authority.</p>
<blockquote><p><strong>keytool -certreq -keyalg RSA -keysize 2048 -alias client -file certreq.csr -keystore identity.jks -storepass password</strong></p></blockquote>
<p>The CA would return with the certificate reply and the RootCA and sometimes an intermediateCA certificate.</p>
<p>d:  Import the certificates into the keystore, this can be done in two ways either by importing the certificates in an order of RootCA, intermediateCA and then Certificate reply. Or we can create a certificate chain clubbing them in an order into a .pem file.</p>
<p>For demo, we would create a certificate chain file CertChain.pem and import it into the identity keystore overriding the private key alias which is <strong>client </strong>in this example.</p>
<blockquote><p><strong>keytool -import  -file CertChain.pem -alias client -keystore  identity.jks -storepass password</strong></p></blockquote>
<p>e: Create a trust keystore, this can be done my importing your <strong>RootCA </strong>certificate into another keystore that constitutes the trust.</p>
<blockquote><p><strong>keytool -import  -file rootCA.cer -alias RootCA -keystore trust.jks -storepass password</strong></p></blockquote>
<p>To verify the contents of the keystore, you can use the below command,</p>
<blockquote><p><strong>Keytool –list –v –keystore &lt;keystore-name&gt; -storepass  &lt;keystore-password&gt;</strong></p></blockquote>
<p>&nbsp;</p>
<p><strong>2: Configuring the keystore on the WebLogic Server.</strong></p>
<p>a: Log into the Admin Console, select the server on which you want to configure the SSL certificate.</p>
<p>Server  &#8211;&gt;  Click on the Keystore tab. By default it points to the Demo Certificates.</p>
<p>From the dropdown list select the “<strong>Custom Identity and  Custom Trust</strong>” option.</p>
<p>Enter the identity and trust keystore details.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/23.jpg"><img class="aligncenter size-medium wp-image-5027" title="2" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/23-300x188.jpg" alt="" width="300" height="188" /></a></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/33.jpg"><img class="aligncenter size-medium wp-image-5028" title="3" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/33-300x135.jpg" alt="" width="300" height="135" /></a><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/41.jpg"><img class="aligncenter size-medium wp-image-5029" title="4" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/41-300x197.jpg" alt="" width="300" height="197" /></a></p>
<p>b: Configure the identity of the server:</p>
<p>Click on the SSL tab and enter the alias of the private key i.e. <strong>client </strong>in this case and the keypass password.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/9.jpg"><img class="aligncenter size-medium wp-image-5033" title="9" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/9-300x187.jpg" alt="" width="300" height="187" /></a></p>
<p><strong>NOTE: </strong> If you enable the SSL for a WebLogic Server, by default it would be One Way SSL. If you want to change to Two Way SSL, you would require to select  the two way SSL behavior from the Advanced option list.</p>
<p>c: Configure the SSL port.</p>
<p>By default it would be 7002.</p>
<p>Go to server &#8211;&gt; General tab &#8211;&gt; Specify  and enable SSL port.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/51.jpg"><img class="aligncenter size-medium wp-image-5030" title="5" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/51-300x196.jpg" alt="" width="300" height="196" /></a></p>
<p>You can see the below messages in the server logs which indicate that the certificates are loaded.</p>
<blockquote><p>&lt;Notice&gt; &lt;Security&gt; &lt;BEA-090171&gt; &lt;Loading the identity certificate and private key stored under the alias client from the JKS keystore file C:\Wonders\WebLogic\Security\SSL-Certs\Verisign\identityVerisign.jks.&gt;</p>
<p>&lt;Notice&gt; &lt;Security&gt; &lt;BEA-090169&gt; &lt;Loading trustedcertificates from the JKS keystore file C:\Wonders\WebLogic\Security\SSL-Certs\Verisign\trustVerisign.jks.&gt;</p>
<p>&nbsp;</p></blockquote>
<p><strong>3: Test the setup:</strong></p>
<p>You can test the setup by accessing the admin console (if SSL is configured for Admin Server) or any application deployed on the server by accessing it on <strong>https </strong>protocol.</p>
<p><a href="https://localhost:7002/console">https://localhost:7002/console</a></p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/7.jpg"><img class="aligncenter size-medium wp-image-5032" title="7" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/7-300x227.jpg" alt="" width="300" height="227" /></a></p>
<p>Now verify whether the right certificate is configured or not.</p>
<p>Click on the certificate details and you would find the details about the identity and the RootCA along with the certificate chain.</p>
<p><a href="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/8.jpg"><img class="aligncenter size-medium wp-image-5026" title="8" src="http://weblogic-wonders.com/weblogic/wp-content/uploads/2011/05/8-257x300.jpg" alt="" width="257" height="300" /></a></p>
<p>&nbsp;</p>
<p>NOTE: For a production environment make sure that <strong>CN (Common Name)</strong> of the certificate matches with the server host name.</p>
<p>You can also use self signed certificates or trial certificates for testing purpose. However is it not recommended to use them in production environment.</p>
<p>You can get the Verisign trail certificates from the below link.</p>
<p><a href="http://www.verisign.com/ssl/free-30day-trial/">http://www.verisign.com/ssl/free-30day-trial/</a></p>
<p>For further reading :</p>
<p><a href="http://download.oracle.com/docs/cd/E13222_01/wls/docs103/secmanage/ssl.html">http://download.oracle.com/docs/cd/E13222_01/wls/docs103/secmanage/ssl.html</a></p>
<p>Regards,</p>
<p>Wonders Team <img src='http://weblogic-wonders.com/weblogic/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://weblogic-wonders.com/weblogic/2011/05/25/ssl-configuration-for-weblogic-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.625 seconds -->

