<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Secure storage remote access in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339166#M1920437</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Secure storage is protected by call stack validations. It can only be called from permitted connections, such as Jco.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It cannot be used by customers directly. You must use the application which is a program in the call-stack validation (eg. a connector).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Julius&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 22 Oct 2015 19:48:25 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2015-10-22T19:48:25Z</dc:date>
    <item>
      <title>Secure storage remote access</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339165#M1920436</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm trying to implement a simple java standalone application that will connect to a J2EE instance, get a handle on "ts~sec~securestorage~service" and use it like described in &lt;A href="http://help.sap.com/saphelp_47x200/helpdata/en/2f/aaa1701494c043830b1945264b2624/frameset.htm" title="http://help.sap.com/saphelp_47x200/helpdata/en/2f/aaa1701494c043830b1945264b2624/frameset.htm"&gt;Examples for Using Secure Storage Interfaces and Classes - J2EE Technology in SAP Web Application Server - SAP Library&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is with this code, I can connect properly, I can do a ctx.list(""), walk through the list and verify that "ts~sec~securestorage~service" is existing. But when I do a ctx.lookup("ts~sec~securestorage~service") it returns a null object.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As I'm connecting from outside the JVM I'm setting up the Context with additional information like p4 connection, user, credentials as described in this page &lt;A href="https://help.sap.com/saphelp_nwce711/helpdata/en/08/8f633e0084e946e10000000a114084/content.htm" title="https://help.sap.com/saphelp_nwce711/helpdata/en/08/8f633e0084e946e10000000a114084/content.htm"&gt;Creating an Initial Context - Developing Java EE 5 Applications - SAP Library&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you elaborate on what the cause could be ?&lt;/P&gt;&lt;P&gt;Thanks in advance !&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Full code here,&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;import java.io.UnsupportedEncodingException;&lt;/P&gt;
&lt;P&gt;import com.sap.tc.logging.Category;&lt;/P&gt;
&lt;P&gt;import com.sap.security.core.server.securestorage.SecureStorageRuntimeInterface;&lt;/P&gt;
&lt;P&gt;import com.sap.security.core.server.securestorage.remote.RemoteSecureStorageClientContextInterface;&lt;/P&gt;
&lt;P&gt;import javax.naming.Context;&lt;/P&gt;
&lt;P&gt;import javax.naming.InitialContext;&lt;/P&gt;
&lt;P&gt;import java.util.Hashtable;&lt;/P&gt;
&lt;P&gt;import com.sap.xmii.security.SecureStoreManager;&lt;/P&gt;
&lt;P&gt;import javax.naming.NameClassPair;&lt;/P&gt;
&lt;P&gt;import javax.naming.NamingEnumeration;&lt;/P&gt;
&lt;P&gt;import javax.naming.NamingException;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;public class decryptor&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static void main(String[] args)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throws UnsupportedEncodingException, Exception&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String connectionString = "sapserver:50004";&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; java.util.Properties p = new java.util.Properties();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.put(Context.PROVIDER_URL, connectionString);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.put("force_remote", "true");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.put(Context.SECURITY_PRINCIPAL, "Administrator");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.put(Context.SECURITY_CREDENTIALS, "***********");&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Context ctx = new InitialContext(p);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NamingEnumeration&amp;lt;NameClassPair&amp;gt; list = ctx.list("");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String service_name;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String svc = "";&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (list.hasMore()) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; service_name = list.next().getName();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (service_name.contains("securestorage~service")) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Found service "+service_name+" in ctx.list()");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svc = service_name;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Object o = ctx.lookup(svc);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (o == null) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("secure storage service not started&amp;lt;br&amp;gt;");&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SecureStorageRuntimeInterface secStore = null;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RemoteSecureStorageClientContextInterface myContext = null;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; secStore = (SecureStorageRuntimeInterface)o;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myContext = secStore.getSecureStorageClientContext();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // do something with myContext here...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Oct 2015 16:37:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339165#M1920436</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2015-10-22T16:37:22Z</dc:date>
    </item>
    <item>
      <title>Re: Secure storage remote access</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339166#M1920437</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Secure storage is protected by call stack validations. It can only be called from permitted connections, such as Jco.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It cannot be used by customers directly. You must use the application which is a program in the call-stack validation (eg. a connector).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Julius&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Oct 2015 19:48:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339166#M1920437</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2015-10-22T19:48:25Z</dc:date>
    </item>
    <item>
      <title>Re: Secure storage remote access</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339167#M1920438</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Julius,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have no JCo connection active from the "JCo Monitoring" panel of Netweaver Administrator.&lt;/P&gt;&lt;P&gt;Is there a documentation somewhere that describe the exact conditions to met to use such a service from the outside ?&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Mathieu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Oct 2015 08:05:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339167#M1920438</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2015-10-23T08:05:04Z</dc:date>
    </item>
    <item>
      <title>Re: Secure storage remote access</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339168#M1920439</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am only aware of the statement that it is not intended and also not possible. So I guess they never made any external documentation for that either.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Julius&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Oct 2015 09:17:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/secure-storage-remote-access/m-p/11339168#M1920439</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2015-10-23T09:17:32Z</dc:date>
    </item>
  </channel>
</rss>

