scala - Play-pac4j with wso2is throws "IDP Metadata cannot be null" -


i need little this. i'm use project (play-pac4j-scala-demo) test wso2is saml server, change make in openidp-feide.xml file, replaced content:

    <md:entitydescriptor xmlns:md="urn:oasis:names:tc:saml:2.0:metadata" xmlns:saml="urn:oasis:names:tc:saml:2.0:assertion"                      xmlns:ds="http://www.w3.org/2000/09/xmldsig#"                      entityid="https://localhost:9443/samlsso" validuntil="2023-09-23t06:57:15.396z">   <md:idpssodescriptor protocolsupportenumeration="urn:oasis:names:tc:saml:2.0:protocol">     <md:keydescriptor use="encryption">       <ds:keyinfo>         <ds:x509data >           <ds:x509certificate >             miievtccaz2gawibagiqizi6spzn4kg8sj2/gy6qdtanbgkqhkig9w0baqsfadcb             hde7mdkga1uecwwyz2vuzxjhdgvkigj5igf2yxn0isbhbnrpdmlydxmgzm9yifnt             tc9utfmgc2nhbm5pbmcxhzadbgnvbaomfmf2yxn0isbxzwivtwfpbcbtagllbgqx             jdaibgnvbammg2f2yxn0isbxzwivtwfpbcbtagllbgqgum9vddaefw0xntaxmjay             mda2mzlafw0xnjaxmjaymda2mzlamd8xitafbgnvbastgervbwfpbibdb250cm9s             ifzhbglkyxrlzdeambgga1ueawwrki5qzndlynbvcnrhbc5jb20wggeima0gcsqg             sib3dqebaquaa4ibdwawggekaoibaqdvnszgsbqc+0ieql//mc/swckstqtnxces             4fl4jn7rzov0rftb0xkxxsdss66yeswz1/hn8hnkswdyl9ttlsum8r4brirjdrgi             xaxyj5gzgkwa5fhbqjeuq3fqxqbm+ytnhvuvd4jqrgs3ccxephf35dk/2mtvei0b             us8iecbvrscerbg5a6zdz2ppmlh5jrc/mq8mhwqjyztf4/hlmzr2ixzvahcd59bg             apawubbv4uz44xs288qdha8ty0+m0fhnxh6v5v1afenmamvwoelb8d2vkfzk+1nm             krtggevupab3k4+3xlv7qkd9eqsfdso+oairirvvmaxc3bmkweflagmbaagjggef             miibatambgnvhrmbaf8eajaamb0ga1udjqqwmbqgccsgaqufbwmbbggrbgefbqcd             ajaobgnvhq8baf8ebamcbaawuwydvr0gbewwsjbibgtghkgbhv1taqcxata5mdcg             ccsgaqufbwibfitodhrwoi8vy2vydglmawnhdgvzlmdvzgfkzhkuy29tl3jlcg9z             axrvcnkvmb8ga1udiwqymbaafblpv0jwxwgkdtayzxqlgjrkp/vxmc0ga1udeqqm             mcscesouamz3zwjwb3j0ywwuy29tgg9qzndlynbvcnrhbc5jb20whqydvr0obbye             fbpraaygfel1ufhj8ijqtcja71v0ma0gcsqgsib3dqebcwuaa4ibaqct7cs4yuud             vi+oe7kgsgmtgtjec7ui211v5f6humscz2g/udfjwppkkutorvovrvl6s64lvipy             pgmwdcrebwxhwmn+x4w1gpq97r9pltw2qah5aobbuct8y/rblvxy9w9qz5gj5rii             nri7i2j/omo/qh5mqfc6wrmhz91mksv6+ts5s+pgb30kkezyxc7kg/1z4l7nblls             brsicg7fvu7frjeyxg64eponim0zu4agowd+aqbbfz6ps+rimgqgbibnjbjjxgni             ysg0z4s5nusoxmgwc54heoytu6ulcaslrwvqqaziyrdboyt98lfkhdsmmt7+yn04             awezsyuqis2v           </ds:x509certificate>         </ds:x509data>       </ds:keyinfo>     </md:keydescriptor>     <md:singlelogoutservice binding="urn:oasis:names:tc:saml:2.0:bindings:http-redirect" location="https://localhost:9443/samlsso" responselocation="https://localhost:9443/samlsso"/>     <md:singlesignonservice binding="urn:oasis:names:tc:saml:2.0:bindings:http-post" location="https://localhost:9443/samlsso"/>     <md:singlesignonservice binding="urn:oasis:names:tc:saml:2.0:bindings:http-redirect" location="https://localhost:9443/samlsso"/>   </md:idpssodescriptor> </md:entitydescriptor> 

the above idp metadata. next, in wso2is server created issuer, this:

issuer : http://localhost:9000/callback?client_name=saml2client assertion consumer url *: http://localhost:9000/callback?client_name=saml2client nameid format : urn:oasis:names:tc:saml:1.1:nameid-format:emailaddress enable attribute profile: true 

other attributes stay default options.

but when try authenticate project (play-pac4j-scala-demo) throws exception:

[debug] - org.pac4j.play.callbackcontroller - defaulturl : /?2         @ scala.concurrent.impl.callbackrunnable.executewithvalue(promise.scala:40) [scala-library-2.11.6.jar:na]         @ scala.concurrent.impl.promise$defaultpromise.trycomplete(promise.scala:248) [scala-library-2.11.6.jar:na]         @ scala.concurrent.promise$class.complete(promise.scala:55) [scala-library-2.11.6.jar:na]         @ scala.concurrent.impl.promise$defaultpromise.complete(promise.scala:153) [scala-library-2.11.6.jar:na]         @ scala.concurrent.future$$anonfun$recover$1.apply(future.scala:324) [scala-library-2.11.6.jar:na]         @ scala.concurrent.future$$anonfun$recover$1.apply(future.scala:324) [scala-library-2.11.6.jar:na]         @ scala.concurrent.impl.callbackrunnable.run(promise.scala:32) [scala-library-2.11.6.jar:na]         @ play.core.j.httpexecutioncontext$$anon$2.run(httpexecutioncontext.scala:40) [play_2.11-2.4.0.jar:2.4.0]         @ akka.dispatch.taskinvocation.run(abstractdispatcher.scala:40) [akka-actor_2.11-2.3.11.jar:na]         @ akka.dispatch.forkjoinexecutorconfigurator$akkaforkjointask.exec(abstractdispatcher.scala:397) [akka-actor_2.11-2.3.11.jar:na]         @ scala.concurrent.forkjoin.forkjointask.doexec(forkjointask.java:260) [scala-library-2.11.6.jar:na]         @ scala.concurrent.forkjoin.forkjoinpool$workqueue.runtask(forkjoinpool.java:1339) [scala-library-2.11.6.jar:na]         @ scala.concurrent.forkjoin.forkjoinpool.runworker(forkjoinpool.java:1979) [scala-library-2.11.6.jar:na]         @ scala.concurrent.forkjoin.forkjoinworkerthread.run(forkjoinworkerthread.java:107) [scala-library-2.11.6.jar:na] caused by: org.pac4j.saml.exceptions.samlexception: idp metadata cannot null         @ org.pac4j.saml.sso.saml2webssoprofilehandler.receivemessage(saml2webssoprofilehandler.java:127) ~[pac4j-saml-1.7.0.jar:na]         @ org.pac4j.saml.client.saml2client.retrievecredentials(saml2client.java:322) ~[pac4j-saml-1.7.0.jar:na]         @ org.pac4j.saml.client.saml2client.retrievecredentials(saml2client.java:95) ~[pac4j-saml-1.7.0.jar:na]         @ org.pac4j.core.client.baseclient.getcredentials(baseclient.java:220) ~[pac4j-core-1.7.0.jar:na]         @ org.pac4j.play.java.requiresauthenticationaction$6.apply(requiresauthenticationaction.java:202) ~[play-pac4j-java-1.5.0-snapshot.jar:na]         @ org.pac4j.play.java.requiresauthenticationaction$6.apply(requiresauthenticationaction.java:194) ~[play-pac4j-java-1.5.0-snapshot.jar:na]         @ play.core.j.fpromisehelper$$anonfun$promise$2.apply(fpromisehelper.scala:36) ~[play_2.11-2.4.0.jar:2.4.0]         @ scala.concurrent.impl.future$promisecompletingrunnable.liftedtree1$1(future.scala:24) ~[scala-library-2.11.6.jar:na]         @ scala.concurrent.impl.future$promisecompletingrunnable.run(future.scala:24) ~[scala-library-2.11.6.jar:na]         ... 7 common frames omitted 

what wrong here? can help? thanks!

this indicates method decoder.decode not able determine idp use saml authentication response. if encounter error @ point, assume redirect idp, enter credentials , redirect application rather starting point. please use debugging tool (for example saml tracer firefox) read saml assertion , check if idp entity id consistent set-up.


Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -

How to provide Authorization & Authentication using Asp.net, C#? -