Ibm Websphere Datapower Soa Appliances Placement Papers - Ibm Websphere Datapower Soa Appliances Interview Questions and Answers updated on 19.Mar.2024

Digital signatures act as a verifiable seal or signature to confirm the authenticity of the sender and the integrity of the message. Users who wish to verify their identity when sending a protected message can encrypt the information with their private key. The recipient can then decrypt the message with the sender’s public key in order to confirm the sender’s identity and the integrity of the message.

To verify that your custom injection patterns file is working correctly, check the default log for any messages that report parsing failure. A parsing failure could occur for any of the following reasons:

  • The file contains XML that is not well-formed.
  • The file contains XML that does not conform to the XML schema.
  • The file was deleted after the configuration was saved.
  • The file does not exist or is in the wrong location.

Certificate authorities act as trusted third parties that verify the identity of the sender of an encrypted message and issue digital certificates as evidence of authorization. These digital certificates contain the public key of the sender, which is then passed along to the intended recipient. The Certificate authorities do extensive background checks before giving an organization or a given individual a certificate.

Symmetric key cryptography-

The biggest obstacle in successfully deploying a symmetric-key algorithm is the necessity for a proper exchange of private keys. This traction must be completed in a secure manner. If face to-face meeting, which proves quite impractical in many circumstances when taking distance and time into account, cannot be possible to exchange private keys. If one assumes that security is a risk to begin with due to the desire for a secret exchange of data in the first place, the exchange of keys becomes further complicated.

Another problem concerns the compromise of a private key.  In symmetric key cryptography, every participant has an identical private key. As the number of participants in a traction increases, both the risk of compromise and the consequences of such a compromise increase dramatically. Each additional user adds another potential point of weakness that an attacker could take advantage of. If such an attacker succeeds in gaining control of just one of the private keys in this world, every user, whether there are hundreds of users or only a few, is completely compromised.

Both Symmetric and Asymmetric-key cryptography also has vulnerabilities to attacks such as the man in the middle attack. In this situation, a malicious third party intercepts a public key on its way to one of the parties involved. The third party can then instead pass along his or her own public key with a message claiming to be from the original sender. An attacker can use this process at every step of an exchange in order to successfully impersonate each member of the conversation without any other parties having knowledge of this deception.

Asymmetric cryptography –More secure 

Asymmetric keys must be many times longer than keys in symmetric-cryptography in order to boast security. While generating longer keys in other algorithms will usually prevent a brute force attack from succeeding in any meaningful length of time, these computations become more computationally intensive. These longer keys can still vary in effectiveness depending on the computing power available to an attacker.

A back end server or the requesting client might be expecting some special characters such as the British Pound symbol and letters with umlauts, accents, or other special marks; however, these special characters are not preserved when they pass through the DataPower appliance.

Take the following steps to resolve the problem:

  • Set include charset in response-type to on:
  • For the Multi-Protocol Gateway service or the Web Service Proxy service:
  • Use the Objects navigator to open the service configuration screen.
  • Choose the Proxy Settings tab and set include charset in response-type to on.
  • For the XML Firewall service:
  • Use the Objects navigator to open the XML Firewall service configuration screen.
  • Choose the HTTP Options tab and set HTTP charset in response-type to on.
  • Edit the XML Manager that you are using in your service so that the XML Manager contains a minimum output escaping rule:
  • Add a new Compile Options Policy or select an existing one by clicking ....
  • Add a Minimum Output Escaping Rule.
  • Add a matching rule so that all requests coming in on that URI (it can be * ) are minimally escaped.
  • Use a style sheet in the trform action in your processing rule. Include the following line in the style sheet to specify output encoding:

<xsl:output encoding="UTF-8" version="1.0" method="xml"/>

  • Make sure that you trform the incoming request with your style sheet, even minimally; otherwise, the settings in step 2 are not used. If you do not want to trform the request, insert the following line in between the xsl:template element tags:

<a>
  <xsl:copy-of select="."/>
</a>

Optional: If your response still escapes the special characters, clear the stylesheet cache. Clearing the style sheet cache ensures that the DataPower appliance uses the current settings.

File system structure in DataPower is one of the main component that we need to look out for while working on day to day activities. Below image shows the directory structure in DataPower.

Following are details of all the Folders present and their description.

audit: This directory contains the audit logs. Each appliance contains only one audit: directory. This directory cannot be the destination of a copy.This directory is available from the CLI in only the default domain.

cert: This encrypted directory contains private key and certificate files that services use in the domain. You can add, delete, and list files in this directory but you cannot view or modify these files. Each application domain contains one cert: directory. This directory is not shared across domains.

chkpoints: This directory contains the configuration checkpoint files for the appliance. Each application domain contains one chkpoints: directory. This directory is not shared across domains. During an upgrade, the operation deletes the contents of this directory.

config: This directory contains the configuration files for the appliance. Each application domain contains one config: directory. This directory is not shared across domains.

dpcert: This encrypted directory contains files that the appliance itself uses. This directory is available from the CLI in only the default domain.

export: This directory contains the export packages. Each application domain contains one export: directory. This directory is not shared across domains.

image: This directory contains the firmware images (primary and secondary) for the appliance. This directory is where firmware images are stored typically during an upload or fetch operation. Each appliance contains only one image: directory. This directory is available in only the default domain. During an upgrade, the operation deletes the contents of this directory.

internalconfig: This hidden directory contains configuration-like artifacts for the appliance. This directory is where predefined deployment artifacts like pattern exemplars are stored. You cannot access this directory with any interface.

isamcert: This directory contains shared certificate and key files. When a shared file is changed, all reverse proxies must be restarted.

isamconfig: This directory contains the following files.

The Access Manager Reverse Proxy configuration files. There is one configuration file per reverse proxy. The files are named in the isamconfig:///webseald-name.conf format.

The Access Manager Reverse Proxy routing files. There is one routing file per reverse proxy. The files are named in the isamconfig:///routing-name format.

isamwebroot: This directory contains files for each Access Manager Reverse Proxy. When a file in this directory is changed, only the reverse proxy that is modified must be restarted.

local: This directory contains miscellaneous files that are used by the services within the domain, such as XSL, XSD, and WSDL files. Each application domain contains one local: directory. This directory can be made visible to other domains. When viewed from other domains, the directory name changes from local: to the name of the application domain.

logstore: This directory contains log files that are stored for future reference. Typically, the logging targets use the logtemp: directory for active logs. You can move log files to the logstore: directory. Each application domain contains one logstore: directory. This directory is not shared across domains.

logtemp: This directory is the default location of log files, such as the appliance-wide default log. This directory can hold 13 MB. This directory cannot be the destination of a copy. Each application domain contains one logtemp: directory. This directory is not shared across domains.

policyframework: This directory contains unattached policies that are submitted to the appliance through the REST management interface. Do not modify files in this directory. To modify an unattached policy, DELETE and POST the policy through the REST management interface. This process ensures that the policy is recompiled. This directory is not shared across domains.

pubcert: This encrypted directory contains the security certificates that are used commonly by web browsers. These certificates are used to establish security credentials. Each appliance contains only one pubcert: directory. This directory is not shared across domains. However, you must be in default domain to upload or fetch files.

sharedcert: This encrypted directory contains security certificates that are shared. Each appliance contains only one sharedcert: directory. This directory is not shared across domains. However, you must be in default domain to upload or fetch files.

store: This directory contains example stylesheets, default stylesheets, and schemas that the appliance itself uses. Do not modify files in this directory. Each appliance contains only one store: directory. Although this directory is visible to all domains, you can change the contents of this directory from only the default domain.

tasktemplates: This directory contains the XSL files that define the display of specialized GUI screens. Each appliance contains only one tasktemplates: directory. This directory is available in only the default domain.

temporary: This directory is used as temporary disk space by processing rules. Each application domain contains one temporary: directory. This directory is not shared across domains. During an upgrade, the operation deletes the contents of this directory.

Rotate, rotate the log file when the maximum size is reached. The appliance creates a copy of the file and starts a new file. The appliance retains the archived copies up to the specified number of rotations. After reaching the maximum number of rotations and the log file reaches its maximum size, the appliance deletes the oldest file and copies the current file.

Upload, upload the log file when the maximum size is reached. The appliance uploads the file using the specified upload method.

The algorithm should be known to the public; but the key needs to be confidential

  • Key size
  • Performance/ Response time for Encryption or Decryption (depends on the system we use)
  • Mathematical proof for standardization of security provided by that algorithm
  • Who provided the certificate for the algorithm and the date of expiration date?

Object filters allow only those log messages for specific objects to be written to the specific log target. Object filters are based on object classes. With this filter, you can create a log target that collects only log messages generated by particular instances of the specified object classes.

Event Filter allow only those log messages that contain the configured event codes to be written to this log target. With this filter, it is possible to create a log target that collects only log messages for a specific set of event codes.

It is done by setting up Event triggers.  Event triggers perform actions only when triggered by a specified message ID or event code in this case the system goes up/down. With this filter, it is possible to create a log target that collects only the results of the specified trigger action. For example, to trigger the generation of an error report when a certain event occurs use the save error-report command and trfer to SMTP target format to send as an email alert.

We need cryptography to share information confidentially which is ensuring the secrecy of communication

Authentication – Ajitab can sign his message and Mulu can verify that he sent it based on his signature

Integrity checking -Mulu can generate a checksum of the message. Ajitab can either extract it from the message or recalculate it and verify that the message has not been changed.

Non-repudiation – if Ajitab signs the message he cannot deny later that he sent it, because no one else could generate that same signature/private key.

Different types Data power appliances :-

XML Accelerator XA35: 

  • Accelerates XML processing and trformation.
  • Increases throughput and reduces latency.
  • Lowers development costs.  

XML Security Gateway XS40:

  • Help secure SOA with XML threat protection andaccess control
  • Combines Web services security, routing and management functions Drop-in, centralized policy enforcement.
  • Easily integrates with existing infrastructure and processes.

Integration Appliance XI50:-

  • Trforms messages (Binary to XML, Binary toBinary, XML to Binary)
  • Bridges multiple protocols (e.g. MQ, HTTP,JMS)
  • Routes messages based on content and policy.
  • Integrates message-level security and policy Functions.

Cryptography is to protect private communication in the public world. For example, two entities wanting to communicate – Ajitab and Mulu – are shouting their messages in a room full of people. Everyone can hear what they are saying. The goal of cryptography is to protect this communication so that only Ajitab and Mulu can understand the content of the messages.

Log size: 500 kilobytes, When the log file reached the limit, the system will uploaded it to the FTP server and if it is successfully uploaded, the appliance will delete the log in the system to free space.

SMTP, forwards log entries as email to the configured remote SNMP servers and email addresses. Before sending, the contents of the log can be encrypted or signed. The processing rate can be limited.

SQL injection attacks are attempts by malicious users to access or alter database information available only to the web application. XPath injection attacks are attempts to access or alter XML data.

Attackers alter user-submitted requests to do the following:

  • Gain more knowledge about the structure of the database or XML data
  • Obtain sensitive data such as user names and passwords
  • Corrupt or delete data in the database.

A trust store contains certificates from other parties that we expect to communicate with, or from Certificate Authorities that we trust to identify other parties. For example, google (chrome) contains certificate of many companies or websites. Whenever we browse that site the browser automatically check the site for its certificate form the store and compare it. If it is true, google will add the ‘s’ on ‘HTTP’. That way we know that website is secured and trust worthy.

SSL are digital signed certificates. user for meesage/communication integrity and confidentiality.  Generally encrypt at Sender side and decrypt at receiver side.

An injection filter blocks requests that are considered likely to perform injection attacks. The filter protects against injection attacks as follows:

  • Analyzes incoming requests and validates that the input data is well-formed
  • Ensures that the request is not attempting to alter SQL statements or XML data embedded in the application
  • This protection is achieved by applying a number of regular expressions against different parts of the HTTP request. Any match indicates that the request might be malicious and causes the firewall to log, reject, or redirect the request.

we need logtarget to capture messages that are posted by the various objects and services that are running on the appliance. In order to get a specific event or/and object log information, we utilize logtargets.

Triple DES-uses three individual keys with 56 bits each. The total key length adds up to 168 bits, but experts would argue that 112-bits in key strength is more like it.

RSA- is a public-key encryption algorithm and the standard for encrypting data sent over the internet.

AES-it is extremely efficient in 128-bit form, AES also uses keys of 192 and 256 bits for heavy duty encryption purposes.