Log the message payload

Hello,
We have a HTTP --> RFC synchronous scenario.
We have 8 fields in request but we want to log only 6 of them in XI. The other 2 fields should not be logged anywhere in XI.
Is that possible?
Thanks,
Beena.

Beena,
I've been raising this issue with SAP for a while now.  I entered a Service ticket with OSS to make this issue known internally at SAP and would strongly recommend that you do the same.
Just so others also realize how important it is that the Card Number and CVV value not be logged - have a look at the Payment Card Industry Data Security Standards (PCI-DSS) which can be found here: https://www.pcisecuritystandards.org/security_standards/pci_dss_download.html. 
If you take a look at the table on page 2 and you'll note that under the Storage Permitted column you'll note that for CVC2/CVV2/CID the entry is NO.  This means that a merchant may never store the CVV value in an unencrypted or encrypted format.  It simply is never allowed.  In fact, the following note is made after that box:
Sensitive authentication data must not be stored subsequent to authorization (even if encrypted).
Storing this type of data may subject a merchant to fines and perhaps even loss of their merchant license - effectively taking away their license to accept credit cards as a form of payment.  Even worse, should a breach of the data stored in the XI logs occur, the merchant may eventually find itself in the news as the next company to have had sensitive data stolen.  The fact that the data was unencrypted in SAP's XI logs would be even worse publicity!
I'm trying to encourage SAP to help find an acceptable solution for this issue and would request that you also log this as an issue with SAP Support.  The CVV value is important to a credit card transaction and must be passed in the authorization transaction - but without being logged.  Until such a solution is found I would recommend that XI/PI not be used for processing credit card authorizations because of this PCI security issue. 
As Srinivas states in his response, it may be best simply to bypass XI/PI altogether.
Regards,
Eric Bushman
VP, Solutions Engineering
[Paymetric|http://www.paymetric.com]

Similar Messages

  • How to log the messages in program scheduled background

    Hi all,
    I have a program and it is to be scheduled to run in the background.
    I want to log the messages within the program while running.
    What could I do?
    (The standard job log is not what I want)
    Thanks.

    Ignore my previous post. It is good that you posted this question, as I learnt something new. Try the code below.
    Regarding help for why you require and why to go for application logs, refer this SAP Help
    http://help.sap.com/saphelp_47x200/helpdata/en/2a/fa0223493111d182b70000e829fbfe/frameset.htm
    DATA: ls_log  TYPE bal_s_log.
    DATA: p_log_handle TYPE balloghndl.
    ls_log-extnumber = 'YMYTEST'.
    ls_log-alprog = sy-repid.
    CALL FUNCTION 'BAL_LOG_CREATE'
      EXPORTING
        I_S_LOG                 = ls_log
      IMPORTING
        E_LOG_HANDLE            = p_log_handle
      EXCEPTIONS
        LOG_HEADER_INCONSISTENT = 1
        OTHERS                  = 2.
    IF SY-SUBRC <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    data: l_s_msg TYPE bal_s_msg.
    data: E_MSG_WAS_DISPLAYED type boolean.
    data: E_MSG_WAS_LOGGED type boolean.
    data: E_S_MSG_HANDLE type BALMSGHNDL.
    l_s_msg-msgid = '00'.
    l_s_msg-msgty = 'E'.
    l_s_msg-msgno = '001'.
    l_s_msg-msgv1 = 'This is a test message from 20130810'.
    CALL FUNCTION 'BAL_LOG_MSG_ADD'
      EXPORTING
        I_LOG_HANDLE              = p_log_handle
        I_S_MSG                   = l_s_msg
    IMPORTING
       E_S_MSG_HANDLE            = E_S_MSG_HANDLE
       E_MSG_WAS_LOGGED          = E_MSG_WAS_LOGGED
       E_MSG_WAS_DISPLAYED       = E_MSG_WAS_DISPLAYED
    EXCEPTIONS
       LOG_NOT_FOUND             = 1
       MSG_INCONSISTENT          = 2
       LOG_IS_FULL               = 3
       OTHERS                    = 4
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    data: I_T_LOG_HANDLE type BAL_T_LOGH.
    append p_log_handle to i_t_log_handle.
    CALL FUNCTION 'BAL_DSP_LOG_DISPLAY'
    EXPORTING
    *   I_S_DISPLAY_PROFILE          =
        I_T_LOG_HANDLE               = i_t_log_handle
    *   I_T_MSG_HANDLE               =
    *   I_S_LOG_FILTER               =
    *   I_S_MSG_FILTER               =
    *   I_T_LOG_CONTEXT_FILTER       =
    *   I_T_MSG_CONTEXT_FILTER       =
    *   I_AMODAL                     = ' '
    * IMPORTING
    *   E_S_EXIT_COMMAND             =
    EXCEPTIONS
       PROFILE_INCONSISTENT         = 1
       INTERNAL_ERROR               = 2
       NO_DATA_AVAILABLE            = 3
       NO_AUTHORITY                 = 4
       OTHERS                       = 5
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Regards,
    Subramanian V.

  • Developing the Wrapper class to log the message in XI server

    Hi All,
    We are trying to develop  wrapper class on the SAP Logging API, in that I am unable to log the message in the log file(whose path is mentioned in the properties file).
    We use this for storing when exception raised during message transformation due to certain error conditions...
    Procedure:
    My Wrapper class will take the parameters from Property file and store/log the message in the specified location,
    This is working outside of XI environment
    Please suggest how to make to work in XI environment
    Also suggest do I need to do any configurations in SAP web As
    Thanks,
    venu.

    HI,
    With the above blog ref by Michal , see the below links also,
    /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
    /people/amjad-ali.khoja/blog/2005/12/16/slaw-a-new-logging-tracing-framework-for-xi
    /people/amjad-ali.khoja/blog/2006/02/07/using-dom4j-in-xi--a-more-sophisticated-option-for-xml-processing-than-sap-xml-toolkit
    Also my be useful..
    /people/community.user/blog/2007/01/09/enterprise-soa-explorations-reflections-on-database-integration
    /people/anne.tarnoruder/blog/2006/10/26/reusing-code-with-pdk-for-net
    /people/piers.harding/blog/2006/05/18/ruby-on-rails-with-ajax
    Regards
    Chilla

  • Alerts with variables from the messages payload without BPM?

    Hi, experts:
    Is it possible to define a alert category with variables from the messages payload(for example:order_id ) without BPM?
    Regards
    Yu Ming

    Refer to
    http://searchsap.techtarget.com/tip/0,289483,sid21_gci1240902,00.html
    initially this also talk about BPM but you can check whether you can use the container variable in you case.
    How to define the container variable in ALRTCATDEF is mention in above link.
    **Points if answers find useful.
    Gaurav Jain

  • Logging the XML payload in Oracle Sales Cloud

    How can xml payloads for inbound and outbound web service call be logged in Oracle Sales Cloud?
    We need to capture the xml payloads as part of web service calls (inbound/outbound) and store it on server/objects.
    Is it possible to achieve this and if so how can this be done?
    Thanks,
    Abhishek

    For outbound invocations from Sales Cloud, how are you invoking the web services today?
    If you are using groovy scripts to invoke, you can using a println after the invocation and view the messages through the "Runtime logging" feature.
    This should work if you want to view the payload for debugging purposes
    However, I also see that you need to store the response. Are you trying to implement auditing?

  • How to log the messages in an internal table n display

    Hello guys,
    This is my first post in SDN.
    I am uploading some data from application server. I am doing lot of varifications, based on that I have to display the messages.
    So I asked not to use the write statements to display the messages but asked me to create an internal table and display the messages afterwards..
    like I am using some BAPI to upload after the bapi call i have to log the result for each record into an internal table and show...
    can anyone guide me how to do it?

    Thanks for your info Azad,
    here I am posting my code... can u go through it once and lemme me whether i am in right track or not?
    FORM FORM_POST_DATA.
      IF X_POST = 'X'.
        CALL FUNCTION 'BAPI_ACC_BILLING_POST'
          EXPORTING
            DOCUMENTHEADER          = WA_DOCUMENTHEADER
           CUSTOMERCPD             = WA_CUSTOMERCPD
    IMPORTING
      OBJ_TYPE                =
      OBJ_KEY                 =
      OBJ_SYS                 =
          TABLES
            ACCOUNTRECEIVABLE       = IT_ACCOUNTRECEIVABLE
            ACCOUNTGL               = IT_ACCOUNTGL
            ACCOUNTTAX              = IT_ACCOUNTTAX
      CRITERIA                =
      VALUEFIELD              =
            CURRENCYAMOUNT          = IT_CURRENCYAMOUNT
            RETURN                  = IT_RETURN
      SALESORDER              =
      SALESAMOUNT             =
           EXTENSION1              = IT_EXTENSION1
        LOOP AT IT_RETURN.
          MOVE-CORRESPONDING IT_RETURN TO IT_MESSAGES.
        ENDLOOP.
      ENDIF.
    WRITE: / 'Result of Post:'.
      WRITE : / REF_TYPE,REF_KEY,REF_SYS.
      PERFORM FORM_SHOW_MESSAGES.
    ENDFORM.              "FORM_POST_DATA
    FORM FORM_SHOW_MESSAGES.
      IF IT_RETURN[] IS INITIAL.
        WRITE: / 'no messages'.
      ELSE.
        SKIP 1.
        LOOP AT IT_RETURN.
          WRITE: /    IT_RETURN-TYPE,
                 (2)  IT_RETURN-ID,
                      IT_RETURN-NUMBER,
                 (80) IT_RETURN-MESSAGE,
                    IT_RETURN-LOG_NO
                    IT_RETURN-LOG_MSG_NO
                    IT_RETURN-MESSAGE_V1
                    IT_RETURN-MESSAGE_V2
                    IT_RETURN-MESSAGE_V3
                    IT_RETURN-MESSAGE_V4
                 (20) IT_RETURN-PARAMETER,
                 (3)  IT_RETURN-ROW,
                      IT_RETURN-FIELD.
                    IT_RETURN-SYSTEM
        ENDLOOP.
      ENDIF.
      ULINE.
    ENDFORM.                               " Show_messages
    Nisha...

  • Navigate from an XI Alert to the message payload

    Hi experts,
        Please consider the following scenario.
    Assume that we have a scenario wherein we have a BPM.
    The BPM has a transformation step inside it.
    The transformation step may fail due to some mapping errors.
    In such cases, we can trigger an alert to notify the users.
    In the alert that has been sent, we would like to have a Hyperlink, upon clicking which, the user should be navigated to a screen where he can view the payload that is involved.
    Can someone guide me in this regard?
    Thanks,
    Ravi Kanth Talagana

    Hi,
    While creating the Alert Category, you will have something called FOLLOW ON actiovities, please add the links here.
    By default, in your Alert message in Alert Inbox, you will have 2 links taking you directly to the messae in SXMb_MONI. Have you checked the Follow On Activities tab of your Alert messge in Alert Inbox. You would be able to see the link --> Message Monitor and Message Monitor (Safe Connection). Click on this to go to your message in MONI.
    Regards,
    Bhavesh

  • Metadirectory: In the join-engine log, the message 'MDSConfig Invalid PollSchedule supplied (-NULL-). Defaulting to 15 seconds' appears every (you guessed it) 15 seconds.

    Where can a valid poll schedule be set?

    After biting the bullet and ordering more RAM, my computer now is working a ton better. So that must have been the main issue. With 8 GB RAM, I can now even run Parallels fluidly (better than my work PC!) where before simple things like logging in to my MBP after reboot could take forever.
    The place I went to had several other people getting RAM upgrades at the same time as me, so between this and other comments I've seen in discussions here and elsewhere on the Internets, I take it to mean that either Apple should bump up the base RAM on its new machines, and/or stop charging so much for additional RAM.
    I refused to believe a Pro machine bought with Lion installed would come with too little RAM for light to medium usage, but it was apparently the case. I'll mark this as a correct answer and hope some other poor soul will come across this thread and be helped by it.

  • Message payload logging for Uniform Distribute Queue

    Hi All,
    We have a requirement to log the message payload, of every jms message received in a Uniform Distribute Queue in Weblogic.
    Please let us know how can we achieve this.
    Thanks.

    If you want to avoid use of the Path Service, then the alternative is to make the destination members highly available. This will help ensure that the host member for a particular UOO is up.
    One approach to HA is to configure "service migration". For more information see the Automatic Service Migration white-paper at
    http://www.oracle.com/technology/products/weblogic/pdf/weblogic-automatic-service-migration-whitepaper.pdf
    In addition, I recommend referencing Best Practices for JMS Beginners and Advanced Users
    http://docs.oracle.com/cd/E17904_01/web.1111/e13738/best_practice.htm#JMSAD455 to help with WL configuration in general.
    Hope this helps,
    Tom

  • How to monitor the size of message payload processed

    Hi all,
    where could i find the size of the message payload processed in monitor?
    i want to check the volumn of the payload, such as how much kb
    thanks in advance

    Hi,
    ths payload size in KB can be found from the audit logs of the adapter monitoring (Runtime workbench ).
    it will tell you the exact size of the files processed through the adapter.
    Cheers,
    Sunil.

  • Problem in Edit Message Payload in AE

    Hi all,
    actually we have a problem with editing the message payload of a failed message in the adapter engine.
    Messages Editor shows "The version you want to edit is locked"
    Log in NWA shows "EditorDynPage: loadMessage()
    Thrown:
    com.sap.aii.mdt.api.exceptions.OperationFailedException: VersionAlreadyLockedException in Method: AdapterFrameworkMonitoringBean: getTransferMessage( Query ). The version you want to edit is locked. Message: Version 1 of message 4eb86ecc-fb6b-0c10-e100-80000a93147c(INBOUND) is already locked for editing.; To-String: com.sap.engine.interfaces.messaging.api.version.VersionAlreadyLockedException: Version 1 of message 4eb86ecc-fb6b-0c10-e100-80000a93147c(INBOUND) is already locked for editing."
    How to delet te lock,  the nwa => problem management => locks shows no locks?
    regards Ralf

    Hi,
    In NWS, you should also have a tab "Database Locks". See detail in this [SAP help|http://help.sap.com/saphelp_nwpi711/helpdata/en/48/b2e0156b156ff4e10000000a42189b/content.htm].
    regards.
    Mickael

  • Logging SOAP messages

    I need help on how to use handlers in Weblogic Workshop web services. I have the following logging handler from the bea documentation site.
    Now, if I want to log my SOAP messages on the server side, do I just need to put the annotation:
    * @jws:handler operation="handler.ConsoleLoggingHandler"
    at the top of my JWS file? If that is the case, I don't see any messages being logged. Any help will be greatly appreciated.
    Thanks.
    gtata
    package handler;
    import java.util.Iterator;
    import javax.xml.rpc.handler.MessageContext;
    import javax.xml.rpc.handler.soap.SOAPMessageContext;
    import javax.xml.soap.SOAPElement;
    // for readability, using weblogic API instead of javax.xml.rpc.handler.GenericHandler
    // See http://edocs.beasys.com/wls/docs81/webserv/interceptors.html#1060763
    import weblogic.webservice.GenericHandler;
    * Purpose: Log all messages to the Server console
    public class ConsoleLoggingHandler extends GenericHandler
    * Handles incoming web service requests and outgoing callback requests
    public boolean handleRequest(MessageContext mc)
    logSoapMessage(mc, "handleRequest");
    return true;
    * Handles outgoing web service responses and incoming callback responses
    public boolean handleResponse(MessageContext mc)
    this.logSoapMessage(mc, "handleResponse");
    return true;
    * Handles SOAP Faults that may occur during message processing
    public boolean handleFault(MessageContext mc)
    this.logSoapMessage(mc, "handleFault");
    return true;
    * Log the message to the server console using System.out
    protected void logSoapMessage(MessageContext mc, String eventType)
    try
    System.out.println("*****************************");
    System.out.println("Event: "+eventType);
    System.out.println("Endpoint Method: " + getMethodName(mc));
    System.out.println("Soap message is: \n " +
    com.bea.wlw.runtime.jws.soap.util.SAAJUtil.SOAPPart2String(
    ((SOAPMessageContext)mc).getMessage() ) + "\n");
    System.out.println("*****************************");
    catch( Exception e )
    e.printStackTrace();
    * Get the method Name from a SOAP Payload.
    protected String getMethodName(MessageContext mc)
    String operationName = null;
    try
    SOAPMessageContext messageContext = (SOAPMessageContext) mc;
    // assume the operation name is the first element
    // after SOAP:Body element
    Iterator i = messageContext.
    getMessage().getSOAPPart().getEnvelope().getBody().getChildElements();
    while ( i.hasNext() )
    Object obj = i.next();
    if(obj instanceof SOAPElement)
    SOAPElement e = (SOAPElement) obj;
    operationName = e.getElementName().getLocalName();
    break;
    catch(Exception e)
    e.printStackTrace();
    return operationName;
    }

    You can use the logging and tracing functionality to write log statements anywhere in BPEL. refer http://wiki.open-esb.java.net/Wiki.jsp?page=LoggingFromWSBPELActivityInABusinessProcess . But you should keep in mind these are not soap messages that you log. They will be abstract WSDL message instances. If you want to log specifically the soap messages you need the support in HTTP-BC.
    If you turn on logging you should see the line number of BPEL where it fails. That should give you some indication. I am not 100% sure, but in the logs, we should be logging the variable which was not initialized. I can't think of any other way to find out which variable caused this exception.
    -Kiran Bhumana

  • How to log the exception using Log action in Oracle Service Bus

    Hi,
    Whenever an exception is raised how to log the exception using Log action in oracle service bus.After logging where I have to find the logged message.

    It would be in the log file for the managed server which ran the request. If you are logging the message at a lower level than your app server, however, you won't see it. You should be logging the exception at Error level.

  • JMS Message Selector on Message Payload

    Hi,
    I have a requirement where in;
    A JMS adapter consumes messages from an AQ JMS Topic. We need to make selective dequeue from the Topic. Is that possible to make use of the message selector option on the 'message payload'?
    Message selector works on JMS Header and Properties as far as I know.
    Any insight on this would be of great help :-)
    Thanks,
    Manoj Nair.

    It's like almost a month to get a response for such a generic JMS functionality. Looks like the Oracle SOA user base is really low. Anyone with a working example reference.
    Thanks

  • Access to message payload at UDF

    Hi,
    I need to get the message payload at a User Defined Function. I found http://help.sap.com/javadocs/pi/pi711sp03/index.html which have many API class like http://help.sap.com/javadocs/pi/pi711sp03/com/sap/engine/interfaces/messaging/api/Message.html and http://help.sap.com/javadocs/pi/pi711sp03/com/sap/engine/interfaces/messaging/api/Payload.html . But i dont know how to get the message object from container. I checked the PI mapping blogs but couldnt find any clue about that. Any help would be appreciated.
    Kind regards,
    Altuğ Bayram

    When you want to work with the whole payload, why don't you use a Java mapping?
    The graphical mapping is made just to avoid that you have to deal with the XML structure.

Maybe you are looking for

  • TFS and Build Server 2013 with CNAME

    Hello Team As we have TFS 2013 with Update 3 on windows server 2012 and another windows server 2012 machine have build server installed. It is working well with machine name and build is running properly. Once i tried to change the machine with CNAME

  • Permission issues with files put on desktop by Vista

    Hi Folks, I posted this before and got no response so I'm trying again. Trying to finally solve an issue that has dogged me ever since upgrading to Lion in the summer. Since installing Lion 10.7 (clean install), I now seem to be having File Sharing i

  • Saving for Web Devices is not optimizing images properly

    Hello! Please help, when i use save for web devices, it does not make the file size of the final output smaller. As shown in the picture above, when i save for web devices the size is 33.85k but when i press save it will be 281kb as a final output. p

  • Resolve enter current password in my mh mini 110

    pls help me  to resolve my problem in my netbook.with product : hp mini 110/with s/n:cnu9245q94the problem of this is to enter current password

  • Single or Multiple FM area for multiple company codes ?

    Hi All, I have two company codes assigned with two different chart of accounts and controlling areas. Now i have to implement Funds Management in our company. In this scenario does i need to create single or two FM areas. can any one guide through th