Showing posts with label blog. Show all posts
Showing posts with label blog. Show all posts

IBM Security Identity Manager enables organizations to drive effective identity management and governance across the enterprise for improved security and compliance. Now available as a virtual appliance, IBM Security Identity Manager automates the creation, modification, recertification and termination of identities throughout the user lifecycle. It features an intuitive, business-friendly user interface to simplify provisioning requests and help managers make intelligent access decisions for their employees. It also includes enhanced reporting and analytic capabilities to monitor user entitlements and activities.


Benefits of using ISIM Virtual Appliance:

Deployment:
  1. Quick and Easy deployment of ISIM, Faster time to value
  2. Saves on hardware costs and helps reduce the total cost of ownership (TCO)
  3. ISIM Components inside the virtual appliance are pre-tuned for best performance...
  4. Minimal middleware skills required for Virtual Appliance administrator.
  5. Reduces manual intervention during deployment, thus preventing any environment specific issues or user errors.
Clustering:
  1. Setting up a cluster is just as simple as setting up another Virtual Appliance (ISIMVA) by selecting a different option from the startup menu. 
  2. With VA, its now easy to manage a ISIM cluster.
  3. Centralized management and monitoring of Virtual Appliance (ISIMVA)
  4. Whether its a file system change or any configuration change, synchronization of member nodes of a cluster is as easy as just clicking "Synchronize" button from the manage cluster panel.
Serviceability:
  1. Simplified serviceabilty options like log management and one click support package creation for any issue with the ISIM VA.
Maintenance:
  1. Unified approach for user to patch/upgrade all the underlying components via fixpacks.
  2. Create snapshots of the VA using the Snapshots feature, so that you dont miss out on any changes to the system, when your VA is in trouble...
Disaster Recovery:
  1. Easy to setup a backup node, which helps the administrator to recover from any primary node failures/disaster. 
    Lots more with ISIM VA ... Coming soon... December 5th 2014
    Read more: http://www-03.ibm.com/software/products/en/identity-manager

    IBM Security Identity Manager Virtual Appliance ... Coming soon

    Best screen recording tool for Linux ( RHEL / CENTOS )

    How to update/replace the default SSL certificate for WebSphere Application Server. We will have a look at topics like: Location of certificate, Certificate keystores, Programmatically import,replace or delete certificate using the WAS Admin commands.



    Note: Websphere Application Server certificate (personal certificate) is different for different nodes in a WAS cluster. 

    Note: Though the ppt mentions WAS 6.1, it works for WAS 7.x and 8.x too..

    Below are some commands used to manage the SSL certificate for WAS programmatically. In the below commands, in order to import/replace a certificate you need to provide a keystore containing the new/updated certificate.


    Import Certificate:
    AdminTask.importCertificate('[-keyFilePath ' + keyFilePath + ' -keyFilePassword ' + keyFilePassword + ' -keyFileType ' + keyFileType + ' -certificateAliasFromKeyFile \'' + certificateAliasFromKeyFile + '\' -certificateAlias ' + certificateAlias + ' -keyStoreName ' + keyStoreName + ' -keyStoreScope ' + keyStoreScope + ' ]')
    AdminConfig.save()

    Replace Certificate:
    AdminTask.replaceCertificate('[-certificateAlias ' + certificateAlias + ' -replacementCertificateAlias ' + replacementCertificateAlias + ' -deleteOldCert true -deleteOldSigners false -keyStoreName ' + keyStoreName + ' -keyStoreScope ' + keyStoreScope + ' ]')
    AdminConfig.save()

    Delete Certificate:
    AdminTask.deleteCertificate('[-keyStoreName ' + keyStoreName + ' -keyStoreScope ' + keyStoreScope + ' -certificateAlias ' + removeCertAlias + ' ]')
    AdminConfig.save()

    Get Signer Certificate:
    AdminTask.retrieveSignerFromPort('[-keyStoreName ' + keyStoreName + ' -keyStoreScope ' + keyStoreScope + ' -host ' + host + ' -port ' + port + ' -certificateAlias ' + certificateAlias + ' -sslConfigName ' + sslConfigName + ' -sslConfigScopeName ' + sslConfigScopeName + ' ]')
    AdminConfig.save()

    Sync All Nodes:
    AdminNodeManagement.syncActiveNodes()

    All above commands can be executed via the WAS scripting command:
    wsadmin.sh -lang jython -username admin -password admin -f<filecontaining the above commands>

    Link to request a production like SSL certificate for test purpose:
    https://trustcenter.websecurity.symantec.com/process/retail/trial_product_selector

    Update the Default SSL Certificate for IBM WAS

    How to fix the latest Eclipse, RAD, RSA, RTC Crashes

    Dojo 1.6.x unable to detect IE11 browser version details

    The Web is made up of many resources and a resource can be any item of interest, for example, an online book store may define book as a resource and clients may access that resource with this URL : http://www.myEbookStore.com/Books.

    As a result of accessing the above URL is that the representation of the resource is returned (e.g., books.html) which results in a state change of the client. Now the end users browser is displaying more than just the home page of the online book store, a more informative and detailed state than the previous.
    Thus, the client application transfers state with each resource representation. Isn't this same as browsing a website over the INTERNET ???
    WWW is like a REST system and many of such services are being used in our day to day activities like purchasing something from Amazon.com, using Facebook, and even using GMail. So you are using REST, and you didn't even know it.

    REST stands for Representational State Transfer. REST is not a standard but an architecture. However REST does make use of certain standards like http, URL, XML , html etc.

    Consider the case of myEbookStore.com which enables its customers to :
    1. get list of books
    2. get detailed information about a book
    3. purchase books on-line



    Get List of Books :
    -----------------------
    http://www.myEbooksStore.com/books

    Note that "how" the web service generates the books list is completely transparent to the client. All that the client knows is, if he/she submits the above URL then a document containing the list of books is returned which is obviously displayed in the browser. Since the implementation is transparent to clients, myEbooksStore.com owner is free to modify the underlying implementation of this resource without impacting clients.So we can consider REST as a loosely coupled architecture.

    Here's the document that the client receives:

        <?xml version="1.0"?>
        <p:Books xmlns:p="http://www.myEbooksStore.com"
                 xmlns:xlink="http://www.w3.org/1999/xlink">
              <Book id="0120" xlink:href="http://www.myEbooksStore.com/books/0120"/>
              <Book id="0121" xlink:href="http://www.myEbooksStore.com/books/0121"/>
              <Book id="0122" xlink:href="http://www.myEbooksStore.com/books/0122"/>
              <Book id="0123" xlink:href="http://www.myEbooksStore.com/books/0123"/>
        </p:Book>

    Note that the books list has links to get detailed information about each book. This is a key feature of REST. The client transfers from one state to the next by examining and choosing from among the alternative URLs in the response document. This is something like zooming the view on Google Maps. If you want to see the map of a location in Pune, the satellite will first zoom onto India, then Maharashtra and then Pune. At first level we get a list of countries from which we select India , then list of states in India from which Maharashtra is selected and then finally we get a list of districts in Maharashtra from which Pune is selected. We can see how data is refined gradually by taking decisions at each level. Lets get back to our BookStore example.

    Get Detailed Information about a Book
    -----------------------------------------------------
    The web service makes available a URL to each book resource.For example, here's how a client requests book 0122:

    http://www.myEbooksStore.com/books/0122

    Here's the document that the client receives:

        <?xml version="1.0"?>
        <p:Book xmlns:p="http://www.myEbooksStore.com"  
                xmlns:xlink="http://www.w3.org/1999/xlink">
              <Book-ID>0122</Book-ID>
              <Name>JSON explored</Name>
              <Description>This book explains JSON</Description>
              <Versions xlink:href="http://www.myEbooksStore.com/books/0122/versions"/>
              <UnitCost currency="USD">9.20</UnitCost>
              <Quantity>10</Quantity>
        </p:Book>

    Again observe how this data is linked to still more detailed data - the versions for this book may be found by traversing the versions hyperlink. Each response document allows the client to drill down to get more detailed information. Thats the whole idea of REST, Representational State Transfer.

    In-short lets summarize some important points related to REST/Web Services :

    1. Client-Server model, where the client pulls representations.

    2. Stateless, meaning state of the data provider is not important. So each request from client to server should contain all the information necessary to understand the request. For example searching google.com for the word "computer" is sent to google server as http://www.google.com/#hl=en&output=search&q=computer ... so the required information is sent from client to server irrespective of the state of the server... that's true because before searching, we never worry about the state of google's server.

    3. Common interface. For example : All google search queries are accessed with a generic interface (e.g., HTTP GET, POST, PUT, DELETE) and there is no static page for all searches. Imagine having a static page like : http://www.google.com/computer.html for search results of "computer" keyword... a bad idea.

    4. Interconnected representations - the representations of any resource are interconnected using URLs, thereby enabling a client to progress from one state to another.

    5. Cache to improve network efficiency. Hence once a website is loaded all the external javascripts needed by the site will be cached.

    6. Categorizing the resources according to the requirement of a particular resource. Clients can just receive a representation of the resource, or even modify the resource. For the former, make those resources accessible using an HTTP GET. For the later, make those resources accessible using HTTP POST, PUT, and/or DELETE.

    7. Underlying implementation of REST needs to be independent of the URL or type of REST service (GET, PUT, POST, DELETE). This means a website can be built using either JSP or ASP, without impacting the service being provided to the client. Also data can be represented in JSON format or as XML format or any other structured format.

    Note :  APIs built using REST or conforming to REST design/architecture are said to be RESTful.

    Understanding REST in a RESTful way


    Is /etc/resolv.conf useless in Ubuntu 12.04 LTS ? I say so, because when I configured the /etc/resolv.conf file and rebooted the VM, all the settings were overwritten.
    piyush@co109044:~$ cat /etc/resolvconf/resolv.conf.d/tail
    search romelab.it.ibm.com ibm.com
    nameserver 9.168.127.100
    namserver 9.168.96.100

    piyush@co109044:~$ cat /etc/resolv.conf
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
    #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    search romelab.it.ibm.com ibm.com
    nameserver 9.168.127.100
    namserver 9.168.96.100

    piyush@co109044:~$ reboot

    Last login: Mon Mar 31 08:48:50 2014 from 9.77.94.202
    piyush@co109044:~$ cat /etc/resolv.conf
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
    #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

    After rebooting the VM, all the settings of /etc/resolv.conf were overwritten.
    After reading the release notes of Ubuntu, figured out that "resolvconf is now used to manage /etc/resolv.conf on all Ubuntu systems". What's that ??? I suggest reading the man page for resolvconf. 

    resolvconf is a set of script and hooks managing DNS resolution. The most notable difference for the user is that any change manually done to /etc/resolv.conf will be lost as it gets overwritten next time something triggers resolvconf or the system is rebooted. As a thumb rule, if you are using static IP configuration for your Ubuntu system, add all your network related entries to the file /etc/network/interfaces
    piyush@co109044:~$ man resolvconf
    piyush@co109044:~$ vi /etc/network/interfaces
    piyush@co109044:~$ sudo vi /etc/network/interfaces
    [sudo] password for piyush:

    piyush@co109044:~$ cat /etc/network/interfaces
    auto eth0
    iface eth0 inet static
    address 9.168.109.44
    netmask 255.255.255.0
    gateway 9.168.109.254
    dns-nameservers 9.168.127.100 9.168.96.100
    dns-search romelab.it.ibm.com ibm.com

    auto lo
    iface lo inet loopback

    piyush@co109044:~$ ping google.com
    ping: unknown host google.com

    piyush@co109044:~$ sudo ifdown eth0;sudo ifup eth0
    ssh stop/waiting
    ssh start/running, process 1999

    piyush@co109044:~$ ping google.com
    PING google.com (173.194.41.167) 56(84) bytes of data
    piyush@co109044:~$ cat /etc/resolv.conf
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
    #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    nameserver 9.168.127.100
    nameserver 9.168.96.100
    search romelab.it.ibm.com ibm.com
    As you can see the entries from the /etc/network/interfaces were automatically added to the /etc/resov.conf file. Notice that the /etc/resolv.conf is a softlink to /run/resolvconf/resolv.conf
    So if you make, /etc/resolv.conf as a regular file then resolvconf will be disabled (not recommended).

    Resolvconf has a /etc/resolvconf/resolv.conf.d/ directory that can contain "base", "head", "original" and "tail" files. All in resolv.conf format.
    • tail: Any entry in /etc/resolvconf/resolv.conf.d/tail is appended at the end of the resulting resolv.conf. If the tail file is missing then create it.
    • base: Used when no other data can be found.
    • original: Just a backup of your resolv.conf at the time of resolvconf installation

    Configure DNS using resolvconf in Ubuntu 12.04 (Precise Pangolin)


    Read more about POSIX shell on wikipedia. Below are the set of commands to understand some of the expressions for writing portable shell scripts. Empty cells in the "Example" column is for you to practice.

    Exit Status for the "test" command:
    0 - The Expression parameter is true.
    1 - The Expression parameter is false or missing.
    >1 - An error occurred.

    SyntaxDescriptionExample
    -a FileTrue, if the specified file is a symbolic link that points to another file that does exist.# touch file1
    # ln -s file1 linktofile1
    # ls -al linktofile1
    # test -a linktofile1
    # echo $?
    0
    # rm -f file1
    # test -a linktofile1
    # echo $?
    1
    -b FileTrue, if the specified file exists and is a block special file.All files in /dev are special files... they represent devices of the computer. (http://www.lanana.org/docs/device-list/devices-2.6+.txt)
    # test -b /dev/ram0
    # echo $?
    0
    -c FileTrue, if the specified file exists and is a character special file.All files in /dev are special files... they represent devices of the computer. (http://www.lanana.org/docs/device-list/devices-2.6+.txt)
    # test -c /dev/mem0
    # echo $?
    0
    -d FileTrue, if the specified file exists and is a directory.# mkdir abc
    # test -d abc ; echo $?
    -e FileTrue, if the specified file exists.# touch file1 ; test -e file1 ; echo $?
    -f FileTrue, if the specified file exists and is an ordinary file. # touch file1 ; test -e file1 ; echo $?
    -g FileTrue, if the specified file exists and its setgid bit is set.setgid is similar to setuid, with only diff that it will use a 2 instead of 4. (chmod 2XXX file instead of chmod 4XXX file) 
    Read more: setgid and setuid

    Negative test:
    # touch file1 ; chmod 4000 file1 ; test -g file1 ; echo $?
    Positive test:
    # touch file1 ; chmod 2000 file1 ; test -g file1 ; echo $?
    -h FileTrue, if the specified file exists and is a symbolic link.#  test -h linktofile1 ; echo $?
    -k FileTrue, if the specified file exists and its sticky bit is set.# test -k file1 ; echo $?
    1
    # chmod +t file1
    # test -k file1 ; echo $?
    0
    -n StringTrue, if the length of the specified string is nonzero.# str=
    # test -n "$str" ; echo $?
    1
    # str="abc"
    # test -n "$str" ; echo $?
    0
    -o OptionTrue, if the specified option is on.
    -p FileTrue, if the specified file exists and is a FIFO special file or a named pipe. (A named pipe can be used to transfer information from one application to another without the use of an intermediate temporary file. Also two separate processes can access the pipe by name — one process can open it as a reader, and the other as a writer.)# mkfifo pcclm
    # test -p pcclm ; echo $?
    -r FileTrue, if the specified file exists and is readable by the current process.# touch myfile
    # su <anotheruser>
    # test -r /root/myfile
    -s FileTrue, if the specified file exists and has a size greater than 0.# test -s /root/myfile ; echo $?
    1
    # echo "hello" >>/root/myfile
    # test -s /root/myfile ; echo $?
    0
    -t FileDescriptorTrue, if specified file descriptor number is open and associated with a terminal device.
    -u FileTrue, if the specified file exists and its setuid bit is set.
    -w FileTrue, if the specified file exists and the write bit is on. However, the file will not be writable on a read-only file system even if this test indicates true.
    -x FileTrue, if the specified file exists and the execute flag is on. If the specified file exists and is a directory, then the current process has permission to search in the directory.
    -z StringTrue, if length of the specified string is 0. # mystr=""
    # test -z "$mystr"
    -L FileTrue, if the specified file exists and is a symbolic link.
    -O FileTrue, if the specified file exists and is owned by the effective user ID of this process.
    -G FileTrue, if the specified file exists and its group matches the effective group ID of this process.
    -S FileTrue, if the specified file exists and is a socket.
    File1 -nt File2True, if File1 exists and is newer than File2.
    File1 -ot File2True, if File1 exists and is older than File2.
    File1 -ef File2True, if File1 and File2 exist and refer to the same file.
    String1 = String2True, if String1 is equal to String2.# test "a" = "a" ; echo $?
    String1 != String2True, if String1 is not equal to String2. # test "a" != "b" ; echo $?
    String = PatternTrue, if the specified string matches the specified pattern.
    String != PatternTrue, if the specified string does not match the specified pattern.
    String1 < String2True, if String1 comes before String2 based on the ASCII value of their characters.
    String1 > String2True, if String1 comes after String2 based on the ASCII value of their characters.
    Expression1 -eq Expression2True, if Expression1 is equal to Expression2.# test 2 -eq 2 ; echo $?
    Expression1 -ne Expression2True, if Expression1 is not equal to Expression2.
    Expression1 -lt Expression2True, if Expression1 is less than Expression2.
    Expression1 -gt Expression2True, if Expression1 is greater than Expression2.
    Expression1 -le Expression2True, if Expression1 is less than or equal to Expression2.
    Expression1 -ge Expression2True, if Expression1 is greater than or equal to Expression2.

    Understanding some conditional expressions for the Korn shell or POSIX shell

    Typically some hosts from a resource pool can be in maintenance mode. In such situations customers can't wait till these hosts are out from the maintenance mode, neither can they stop new SRs ... However TSAM's bluecloud reservation is not aware that some hosts need to be skipped when trying to fit reservations.

    In such cases, SRs will continue to fail for sitting on those hosts. Inorder to indicate to Bluecloud that a particular host must be skipped, set the "ignored-by-resource-broker" property to "true" for that host. This can be set from Maximo UI. Goto -> Service Automation -> Cloud Server Pool Administration. Select the required pool. From the Resource Pool Configuration tab, Goto the Resource Pool. Here you will be able to see the hosts included in this pool. For ever host to be ignored, check the "Is Failed" flag.

    Why TSAM continues to select host for resource allocation requests even when the host is in maintaince mode ?

    All eyes are on the latest technology from Google ... all new smart contact lens... 
    In a classically Google-clever way: Smart co ntact lenses with tiny glucose-tracking technology will monitor wearers’ glucose levels not by measuring the sugar in their blood, but by tracking it in their tears.

    The contact lenses will monitor glucose with a tiny sensor once per second, and then transmit the data through a wireless transmitter. According to Otis, the sensor is the smallest ever made, and took years of affixing tiny wires to tiny electronics to produce it.
    The electronics in the contacts lie on the periphery, so don’t obstruct the wearer’s vision. To power the lenses, developers designed a method of pulling energy from surrounding radio frequency waves. The company is testing the possibility of adding a tiny LED light to indicate when the wearer’s glucose exceeds a certain level.

    Go Google go.....

    Contact lens to check blood glucose level

    Last week I decided to move from the old, outdated by secure blackberry device to my cool new smartphone G2. The first thing to do when moving to a new mobile device is transfer/copy/import contacts.

     Interestingly, Even though I'm a programmer by profession, I just couldn't figure out how to transfer contacts from my Blackberry Pearl to G2 - Android smartphone. So I decided to pair both these devices using Bluetooth. After pairing, both my devices were now connected. Pressing the options after selecting G2 device on my Blackberry phone, showed up the lifeline - Transfer contacts. WOW.
    Clicked the Transfer contacts options, my G2 poped up a message saying "pcclm wants to send you Phonebook-1.vcf (22.64KB), Accept the file ?" Ofcourse, I can't reject this ...

    Accept the file transfer, then on your android device select the file from the Bluetooth downloads folder. Click on the file and done. All your contacts are now saved on new Android smartphone. Simple.

    Steps:
    1. From the BlackBerry home screen, click on: Options >> Networks and Connections >> Bluetooth Connections. Turn it on.
    2. In "Paired Devices", click on "Add a new device", then click on "Search" and your Android should be detected.
    3. Select your Android device and click on Submit to prompt your device.
    4. Now on your BlackBerry device goto "Paired devices",  select your Android phone.
    5. Press the BlackBerry button (options menu) and select "Transfer contacts"
    6. Authorize the Bluetooth access on the Android device and wait for the transfer to be completed.

    Transfer contacts from Blackberry to your Android smartphone

    Error when attempting to create new report from
    Go To => Administration => Reporting => Report Administration => Create Report button (extreme right button)
    Nothing happens when you click it ...
    OR
    A popup opens and when you choose any of the fields (as maxadmin user) it generates the error:



    "BMXAA4214E  Unknown error occur.  Please contact your system administrator for assistance"

    Solution:
    Backup the original Library.xml
    1. Go To => System Configuration => Platform Configuration =>  Application Designer
    2. In the dropdown box select 'Export System XML'
    3. Select the LIBRARY from System Presentations ( it's the library.xml we need to keep as backup, just in case the provided fix doesn't work )
    4. On the right hand side you'll see an arrow, click on it to download  this file. A new window will open up. Wait for it to finish generating/opening and then from File->Save As, go ahead and save this file as  Backup_LIBRARY.xml.

    Create another copy of Backup_LIBRARY.xml and edit it:
    Search for the string: psdi.webclient.beans.report.CreateReportBean
    this will be in a dailog tag, now in this XML tag look for id="createreport"
    if found, change it to id="CREATEREPT"

    Also add the below line:
    listeners="selected_field_table,available_field_table"

    Final dialog tag should look like:
    <dialog beanclass="psdi.webclient.beans.report.CreateReportBean" id="CREATEREPT" label="Query Based Report" mboname="USERREPORT" positionattop="true" listeners="selected_field_table,available_field_table">

    now search for string: beanclass="psdi.webclient.beans.report.ReportAttributesAvailableBean"
    this will be in a table tag, now in this XML tag look for id="available_fields_table"
    if found change it to id="available_field_table"

    now search for string: beanclass="psdi.webclient.beans.report.ReportAttributesSelectedBean"
    this will be in a table tag, now in this XML tag look for id="selected_fields_table"
    if found change it to id="selected_field_table"

    Save this file as: Modified_LIBRARY.xml

    Apply the modified Library:
    1. Go To => System Configuration => Platform Configuration => Application Designer
    2. Click on the 'Import Application Definition' icon in the top toolbar.
    3. In the popup, browse for the modified library (Modified_LIBRARY.xml) and click OK.
    4. Wait for the import to finish. It may take upto 2-3 mins.
    5. Now Go to => Administration => Reporting => Report Administration =>  'Create New Report' button and try the scenario to create a Query Based Report.

    BMXAA4214E Unknown error occured while creating Query Based Reports (QBR)

    In my hunt to ways of achieving goals, I read a lot of websites which talked about a common pattern of people who achieve their goals constantly ... and most important without real efforts.


    If you observe the habits of people who are consistently achieving their goals, you start to realize that it's not the end results that make them different. It's their commitment that help them reach their GOALS. They are passionate about their daily routine, not the individual event or work type or results of solving a problem.

    Below are some examples of who needs to do what to reach their goals:

    If you want to be a great blogger, then having an excellent popular blog is wonderful. But the only way to reach that result is to fall in love with the process of writing/expressing.

    If you want everyone to know about your business, then it would be great to be featured in news channels and newspapers. But the only way to reach that result is to fall in love with the process of marketing.

    If you want to be in the best shape & looks, then losing 20 kilos might be necessary. But the only way to reach that result is to fall in love with the process of eating healthy and exercising consistently.

    If you want to become exceptionally better at anything, you have to fall in love with the process of doing it.

    In other words...
    Stop dreaming about the results,  focus on the process, and let results drive you towards your goal.

    Well, I just blogged to fall in love with the process of writing and sharing.

    The secret behind reaching your goals

     TSAM 7.2.4.3 is now available with some new features mentioned below:

    1. Multi-customer user: 
    Users (in all Cloud Roles) with Cloud Customer Level Policy permissions will be able to register with multiple customers. The current limitation of single customer membership can be attributed to the desire to cater for Service Providers, but represents a major limitation for Enterprises implementing a Private Cloud. This feature meets the demand of several organizations wanting to implement Private Cloud.

    2. Enhancement to the Out of Band Resource Allocation for System P: 
    Now has an additional resource check at the time of provisioning to  allow for selection of an alternate host platform.

    3. VMWare Disk management independent of mount point: 
    Additional disk can now be managed independent of mount points and a new mandatory parameter disk name is used for the user to identify the disk.

    4. IBM System Director VMControl TSAM Extension: 
    Now available as part of TSAM Core and provides Additional Disk and Live Partition Mobility for Virtual Servers provisioned using IBM System Director VMControl Offering.

    5. Serviceability Requests: 
    Messages included / modified / improved in this release: CTJZH3405E, BMXAA1477E, CTJZI8329W, CTJZI1717E, CTJZH9336W, CTJZH9337E

    TSAM 7.2.4.3 on Fix Central: http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=ibm~Tivoli&product=ibm/Tivoli/Tivoli+Service+Automation+Manager&release=7.2.4&platform=All&function=all

    TSAM 7.2.4.3 InfoCenter: http://pic.dhe.ibm.com/infocenter/tivihelp/v10r1/index.jsp?topic=%2Fcom.ibm.tsam_7.2.4.3.doc%2Fc_components.html

    Tivoli Service Automation Manager 7243

    Its been a while since I posted something. Well work at workplace kept me super busy. One evening in the hunt of what's my IQ score, I started searching about how do you judge someones IQ and ended reading the below Info-graphic. It clearly shows the common pattern of good and bad habits shared by most of the smart people.


    "Those with high IQs tend to set goals and read avidly", this is the most common habit you'll observe in some of the smart people around you. The habit of "setting goals & sharing with others" is really what I would like to copy from these smarties ...

    Analytics on habits of Smarter people

    Interviews are not purely dependent on your technical skills, but also on the ability to speak with confidence and give diplomatically correct answers ...

    4 tricky interview questions for all jobs


    Look around the place you are in . Can you see a leader ? Are you hunting for a good leader ? Do you always complain that it was your leaders mistake ?

    Most people think that a leader is someone who manages ... it could be human beings, machines, resources or anything in quantity. Many of us grow up believing that a leader is someone else around us.

    There are many different types of leader and some people take more naturally to leadership than others. Yet most people have it inside them to become leaders themselves. In order to realize this potential, you must realize what it takes to be a leader. Most important quality of a leader is to take RISK ...  Leaders follow a pattern: Make a decision. Make a mistake. Move on

    A leader is not a person who manages people, but a person whom people like following.
    Look around the environment you are in again. How many future leaders can you spot now?

    Watch this inspiring video from Simon Sinek, where he clearly explains how leaders are made (and not born) ... I am sure after watching this video, your belief about a leader will change ...


    In biological terms, leaders get the first pick of food and other perks, but at a cost. When danger is present, the group expects the leader to mitigate all threats even at the expense of their personal well-being. Understanding this deep-seated expectation is the key difference between a "Position" and a "leader".
    After watching this video, I understand myself even more now.

    Be a leader or start following ?

    In a typical Tivoli Endpoint Manager (TEM or aka BigFix) deployment, end users shouldn't be having the administrative rights else they may just uninstall the TEM agent or stop the TEM agent.


    TEM Clients listen for UDP commands which have been sent to them by their parent Relay or Server.  Many times UDP commands may not reach the TEM Client, as when UDP has been blocked by a firewall or there is a significant amount of network traffic. For such cases the TEM Client has been configured to poll its parent Relay or Server and check if there is any command for it.

    If the TEM agent service is stopped, the machine will be grayed out in the TEM console after the default client poll time ( typically it is every 4 hours ) ... For a secure endpoint management we need to prevent user from disabling TEM (BigFix) agent.

    On Windows, we can prevent the TEM Client service from being stopped or disabled.
    We can also configure the service to automatically restart incase it is killed/stopped.

    DENY Administrators from starting/stopping the BESClient service:
    cmd.exe /c sc failure besclient reset= 1 actions= restart/5000
    cmd.exe /c sc sdset besclient D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)

    ALLOW Administrators to start/stop the BESClient service (default state):
    cmd.exe /c sc failure besclient reset= 1 actions= restart/5000
    cmd.exe /C sc sdset BESClient D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)

    Restoring the security descriptor is a little harder. The best way, is to use a third-party CLI tool called SCAcl as follows:
    scacl besclient /Q /T /I
    sc failure besclient reset= 0 actions= none
    However instead of using third party tools, I suggest to use the following Fixlets provided OOTB with TEM:

    IDNameSite
    251 Hide BES Clients from the Add/Remove Programs List - BES Client < 8.0BES Support
    325 Hide BES Clients from the Add/Remove Programs List - MSIBES Support
    713 Hide BES Clients from the Add/Remove Programs List - BES Client >= 8.0BES Support
    591 Install BES Client Helper ServiceBES Support

    You should also apply the client helper Fixlet 591 which installs a watchdog executable file that will start the BESClient even if its stopped or disabled.

    How to prevent tampering or screwing with TEM (BigFix) Agents

    IBM turns its Ads of "People for Smarter Cities" project into something creative, attractive and for the Smarter People. Many brands market their ideas with apps and social media, but if its IBM its true innovation with execution. IBM has taken their ad campaigns to a new level - an outdoor furniture.



    IBM is committed to creating solutions that help cities all over the world get smarter, in order to make life in those cities better. That’s why IBM and Ogilvy are working together to create a positive impact and bring a change with the "People for Smarter Cities" project.


    To get this into the minds of people, Ogilvy created outdoor advertising with a purpose: a bench, a shelter and a ramp that are not only designed to be beautiful, but to be useful to city dwellers as well. Once again Ogilvy has done justice to the marketing campaign and is conveying a right message with the right Ads and most importantly with practical implementation.


    Ad campaign created in collaboration with Ogilvy & Mather France clearly sends a message to the make your cities a smarter and a better place to stay.


    Related reading: A Swim after Global Warming by Ogilvy for HSBC

    IBM makes the most of it's "Smarter Ideas for Smarter Cities" with outdoor furniture

    IBM recently ported the Tivoli Endpoint Manager server from Windows to Linux. With the new release of TEM 9.0, server component of TEM can now be installed on RHEL 6.1 and above with IBM DB2 10.x as the backend database.

    In order to explore the new features and capabilities of IBM Endpoint Manager 9.0,  lets quickly create a POC image. Before you start creating a POC image, its recommended to read these tutorials: How to create a YUM repository from an ISO image or mounted CD and Installing TEM 9.0 on Linux

    You may download the TEM Linux Server installer from http://software.bigfix.com/download/bes/90/ServerInstaller_9.0.649.0-rhel.tgz . This archive doesn't contain the installer for IBM DB2 10.x. For the purpose of demonstration ( exploring TEM features or creating a quick POC ) , you can download the  FREE version of DB2 from http://www.ibm.com/developerworks/downloads/im/db2express/index.html . Ensure that you download the Linux 64-bit version of IBM DB2 10.1.2 Express-C edition. DB2 Express-C is a full function DB2 data server available for download, and deployment at no charge.

    Create a VM with RHEL6.1 (  RHEL 6.2 , RHEL 6.3 are also supported ) typical installation.
    Ensure that a valid hostname and IP is assigned to the VM.
    Now configure the YUM repository as mentioned here
    Install the per-requisite packages for TEM:
    #yum install audit-libs.i686 libselinux.i686 cracklib.i686 libaio compat-libstdc++-33 pam.i686 libstdc++.i686 cyrus-sasl-lib.i686
    Note: Since TEM Server is 32-bit, ensure that 32-bit compatibility libraries are installed - without x86_64 in the file name.

    Now extract the downloaded DB2 package, and run the db2prereqcheck utility. Check for failed errors and warnings.
     Before installing DB2 10.1.2 Express-C edition, install the required packages on RHEL6.1 :
    #yum install ibsim ibutils libcxgb3 libibcm libibmad libibumad libipathverbs libmthca libnes rdma sg_persist sg3_utils
    Note: Since DB2 is 64-bit, ensure that 64-bit libraries are installed - with x86_64 in the file name.
    Shown below the list of dependencies:
    Once the required packages are installed, you can proceed to installation of IBM DB2 10.1.2 Express-C edition. Run the db2setup script from the extracted location of DB2 package. Enter default values and proceed with the DB2 installation. Refer this ppt for detailed install steps:
    Now install TEM 9.0 as per the steps mentioned here.
    I've tried installing the Evaluation version of TEM 9.0 for Linux on RHEL 6.1 (Santiago) with Free version of IBM DB2 10.1.2 Express-C and it works perfecting fine. Good for creating Proof of Concepts and customer demos. This installation appears to work on CentOS 6.3 also, although it is not supported by IBM.





    Create a POC image using IEM 9.0 on Linux with Free DB2 10.1.2 Express-C Edition

    +