Hi Jackie,

I have been using twitter connector for an enterprise use case in past few
days. As far as I have figured out, following are the steps to get it
working. However, some of these are purely twitter related activities,
don't know whether we can/should mention them in our docs.

   1. Goto https://dev.twitter.com/apps and create a new application. Here
   you have to provide some basic information about the app.
   2. Once the app is created it will show you the following artifacts
   which you need to use in <twitter.init> operation.
   [Consumer key, Consumer secret, Access token, Access token secret]
   3. Prior to deploying, visit
https://api.twitter.com/oauth2/token<https://www.google.com/url?q=https%3A%2F%2Fapi.twitter.com%2Foauth2%2Ftoken&sa=D&sntz=1&usg=AFQjCNE4_apO1KFJZjWn-dwt_6XfwAOR-Q>
on
   your browser and click on the https trust icon on address bar and follow
   Connection tab.
   4. Click certificate information and follow details tab on the appearing
   dialog. There use 'Export' option to export the trust certificate to the
   file system.
   5. Then use the following command to import that certificate into ESB
   client trust store.
   keytool -importcert -file <certificate file> -keystore
   <ESB>/repository/resources/security/client-truststore.jks -alias
   "TwitterTrustCertImport"
   6. After this, restart the server and deploy the twitter configuration.

Hope this helps.

Thanks,





On Tue, Jan 28, 2014 at 2:41 AM, Jackie Wheeler <[email protected]> wrote:

> I'm having a hard time figuring out exactly what to say in the docs about
> authentication. I'm reading through Twitter's documentation on OAuth, and
> I'm not clear on what applies to WSO2 as creators of the Twitter connector
> and what users of our Twitter connector have to actually configure. Can
> someone walk me through the specific steps that one of our connector users
> would have to do to get the Twitter connector to authenticate with and
> connect to Twitter? Please note that we are still missing a full working
> example or any real sample values that will help people understand how to
> use the connector.
>
> Thanks,
> Jackie
>
>
> On Sun, Jan 26, 2014 at 9:54 PM, Dushan Abeyruwan <[email protected]> wrote:
>
>> HI
>> May be twitter trust certificates might have renewed and that's why once
>> we add twitter certificate to client-trust-store it started to work, we
>> should add this to documentation
>>     Need to get certificate from https://api.twitter.com/oauth2/token
>> and adding to trust store.
>>
>>
>> On Mon, Jan 27, 2014 at 11:15 AM, Gayan Yalpathwala <[email protected]>wrote:
>>
>>> Hi,
>>>
>>> Twitter connector fails to init and throws the following exception.
>>>
>>> TID: [0] [ESB] [2014-01-27 09:20:08,385] ERROR
>>> {org.apache.synapse.transport.passthru.TargetHandler} -  I/O error: General
>>> SSLEngine problem {org.apache.synapse.transport.passthru.TargetHandler}
>>> javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>>> at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1362)
>>> at sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:513)
>>>  at
>>> sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1177)
>>> at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1149)
>>>  at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:469)
>>> at
>>> org.apache.http.nio.reactor.ssl.SSLIOSession.doWrap(SSLIOSession.java:220)
>>>  at
>>> org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:254)
>>> at
>>> org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:380)
>>>  at
>>> org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:118)
>>> at
>>> org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:160)
>>>  at
>>> org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>>> at
>>> org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:320)
>>>  at
>>> org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:280)
>>> at
>>> org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:106)
>>>  at
>>> org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:604)
>>> at java.lang.Thread.run(Thread.java:722)
>>> Caused by: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
>>> at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
>>> at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1683)
>>>  at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:278)
>>> at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:270)
>>>  at
>>> sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1341)
>>> at
>>> sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:153)
>>>  at sun.security.ssl.Handshaker.processLoop(Handshaker.java:868)
>>> at sun.security.ssl.Handshaker$1.run(Handshaker.java:808)
>>>  at sun.security.ssl.Handshaker$1.run(Handshaker.java:806)
>>> at java.security.AccessController.doPrivileged(Native Method)
>>>  at sun.security.ssl.Handshaker$DelegatedTask.run(Handshaker.java:1299)
>>> at
>>> org.apache.http.nio.reactor.ssl.SSLIOSession.doRunTask(SSLIOSession.java:238)
>>>  at
>>> org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:270)
>>> ... 9 more
>>> Caused by: sun.security.validator.ValidatorException: PKIX path building
>>> failed: sun.security.provider.certpath.SunCertPathBuilderException: unable
>>> to find valid certification path to requested target
>>>  at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:385)
>>> at
>>> sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
>>>  at sun.security.validator.Validator.validate(Validator.java:260)
>>> at
>>> sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:326)
>>>  at
>>> sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:283)
>>> at
>>> sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:138)
>>>  at
>>> sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1328)
>>> ... 17 more
>>> Caused by: sun.security.provider.certpath.SunCertPathBuilderException:
>>> unable to find valid certification path to requested target
>>>  at
>>> sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:196)
>>> at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)
>>>  at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:380)
>>> ... 23 more
>>> TID: [0] [ESB] [2014-01-27 09:20:08,402]  WARN
>>> {org.apache.synapse.endpoints.EndpointContext} -  Endpoint :
>>> AnonymousEndpoint will be marked SUSPENDED as it failed
>>> {org.apache.synapse.endpoints.EndpointContext}
>>> TID: [0] [ESB] [2014-01-27 09:20:08,403]  WARN
>>> {org.apache.synapse.endpoints.EndpointContext} -  Suspending endpoint :
>>> AnonymousEndpoint - current suspend duration is : 30000ms - Next retry
>>> after : Mon Jan 27 09:20:38 IST 2014
>>> {org.apache.synapse.endpoints.EndpointContext}
>>>
>>> I think this occurs due to a certificate change on twitter side. I was
>>> able to overcome this issue by importing api.twitter.com[1] certificate
>>> into client-truststore.jks. Is there a known workaround for this or what
>>> further action can be taken?
>>>
>>> [1] 
>>> https://api.twitter.com/oauth2/token<https://www.google.com/url?q=https%3A%2F%2Fapi.twitter.com%2Foauth2%2Ftoken&sa=D&sntz=1&usg=AFQjCNE4_apO1KFJZjWn-dwt_6XfwAOR-Q>
>>>
>>> Thanks,
>>>
>>> --
>>> *Gayan Kaushalya Yalpathwala*
>>>  Software Engineer
>>> WSO2 Inc.; http://wso2.com
>>> lean.enterprise.middleware
>>>
>>> mobile: +94 71 8682704 <http://asia14.wso2con.com/>
>>>
>>> <http://asia14.wso2con.com/>
>>>
>>
>>
>>
>> --
>> Dushan Abeyruwan | Associate Tech Lead
>>  Integration Technologies Team
>> PMC Member Apache Synpase
>> WSO2 Inc. http://wso2.com/
>> Blog:http://dushansview.blogspot.com/
>> Mobile:(0094)713942042
>>
>>
>
>
> --
> *Jackie Wheeler*
> VP, Technical Content
> WSO2, Inc.
> Mobile: +1 510 725-2876
> http://wso2.com/
>



-- 
*Gayan Kaushalya Yalpathwala*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware

mobile: +94 71 8682704 <http://asia14.wso2con.com/>

<http://asia14.wso2con.com/>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to