Saturday, March 10, 2012

How do I control access to services


How do I control access to services?

WebMethods provides an easy way to apply security settings to your services. This FAQ looks at how service execution can be secured.
In this example we are assuming there are 3 users, user1, user2 and user3 who need privileges to execute a service. These users are external partners and should not have any other privileges on the system.
  • Create a group for the new users.
  • Place the users in the new group.
Next, you will want to give permissions for these users to execute services as well as retaining permission for the default groups such as Developers and Administrators.
  • On the Integration Server Administration console, click on ACLs under Security.
  • Click on the link to Add and Remove ACLs.
  • Give your ACL a name, add it.
  • On the access control lists screen, bring up your ACL and choose the groups allowed by your ACL. This should be the group you created for the new users and Developers & Administrators at the very least. This ACL will define Allow permissions for all users covered in the groups listed under Allow.
  • Finally, in developer change the service Execute ACL property to the ACL you just created.
  • Test user1 account, you will see that they can invoke the service but they won't be able to log into Administrator, Developer or any of the other tools.
  • Test that Administrator and Developers can execute the service too.

How do I change the text at the top of the Administrator


Change the extended property
watt.server.text
e.g.
watt.server.text=Development Server


Not all settings are placed inside the "Show and Hide Keys" page. It only lists the properties that are listed inside the server.cnf file. For this one - just add it in.
Adding watt.server.text doesn't seem to do anything. Even after an IS restart. I see that top.dsp refers to "text" as a var but adding watt.server.text didn't have any affect on it. What am I missing?

How do I change the JVM used by Integration Server


How do I change the JVM used by Integration Server?

To change to the JDK used by webMethods you will need to edit the IntegrationServer\bin\server.bat or IntegrationServer/bin/server.sh file used to start up Integration Server.
Edit the file and change the following line to point to the JDK path
SET JAVA_DIR=C:\opt\j2sdk1.4.2

Cannot start Integration Server


If you tried to start your Integration Server as per usual, but it is not started after the normal startup procedure, first check whether there is a LOCKFILE.
Check <webMethods6/IntegrationServer/> directory for a file named "LOCKFILE".
Remove the file and you should be able to restart your Integration Server then.

Add a menu item to WebMethods Admin Console


Overview

The WebMethods menu on the left hand side has a series of menu sections and menu items.
These are controlled by a series of services in the package (contained within package WmRoot):
  • wm.server.ui
The main service which results in all the menu iteams is called wm.server.ui:mainMenu. You can view the results of this service by:
1) going to the console
2) Project Management
3) Package WmRoot
4) Browse services for this package
5) Execute it.
You will also see on this page a list of services available. However do not use the services to create the menu items.

Solution

To add your own custom menu link, create 3 services in WebMethods Developer.
  • addSolution
  • removeSolution
  • callback
The process:
  • The first two services need to call services called wm.server.ui.addSolution or wm.server.ui.removeSolution respectively.
    • For the callback parameter, make them point to your callback service. e.g. zzDavid.davidTest.menuAdmin:callback
    • Note: to create this flow service create any service and manually change its General -> Service property on the right.
  • For the callback service place a MAP step and add the following parameters:
    NameDescriptionValue
    nameDescription of menuWmUnit
    textThe text to displayWmUnit
    urlThe url link../WmUnit.dsp
    targetThe target link to displayWmUnit.dsp
  • Run the Add service to create a menu item which will by default go into the Solutions menu section
    • Note the 3 periods (...) are automatically appended at the end of the text name
    • Use the Remove service with the same callback parameters to remove the menu item