{"id":17216,"date":"2013-09-13T01:00:38","date_gmt":"2013-09-12T22:00:38","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?p=17216"},"modified":"2013-09-12T09:28:47","modified_gmt":"2013-09-12T06:28:47","slug":"deploying-identity-server-over-a-jdbc-based-user-store","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html","title":{"rendered":"Deploying Identity Server over a JDBC Based User Store"},"content":{"rendered":"<p>With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but same procedure applies to any other JDBC user store as well. My environment is,<\/p>\n<ul>\n<li>OS &#8211; Ubuntu 12.10<\/li>\n<li>Java &#8211; 1.6<\/li>\n<li>WSO2 IS 4.5.0<\/li>\n<\/ul>\n<ol>\n<li>Setting up MySQL database<\/li>\n<li>User Store Configuration in IS &#8211; Primary<\/li>\n<li>User Store Configuration in IS &#8211; Secondary<\/li>\n<\/ol>\n<p>(I am referring to extracted wso2is folder as CARBON_HOME in this post)<\/p>\n<h2>Setting up MySQL database<\/h2>\n<p>We need MySQL running at first. This post will be helpful in <a href=\"http:\/\/pushpalankajaya.blogspot.com\/2013\/09\/getting-started-with-mysql.html\" target=\"_blank\">setting up the MySQL database<\/a>, if it&#8217;s not already done. Once MySQL is running we have to set up the database as required by the Identity Server. The server packs the necessary sql scripts within itself, which can be located at CARBON_HOME\/dbscripts.<\/p>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/dbscrpts.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17289\" alt=\"dbscrpts\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/dbscrpts-300x263.png\" width=\"300\" height=\"263\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/dbscrpts-300x263.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/dbscrpts.png 508w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><br \/> Let&#8217;s login to MySQL server and execute the following,<\/p>\n<p>Create a database,<\/p>\n<pre class=\" brush:java\">mysql&gt; create datbase JDBC_demo_user_store;<\/pre>\n<p>Check out the creation,<\/p>\n<pre class=\" brush:java\">mysql&gt; show databases;<\/pre>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/showdbs.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-17290\" alt=\"showdbs\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/showdbs.png\" width=\"217\" height=\"194\" \/><\/a><\/p>\n<p>Then use the sql script and set up the database,<\/p>\n<pre class=\" brush:java\">mysql&gt; use JDBC_demo_user_store;<\/pre>\n<pre class=\" brush:java\">mysql&gt; source &lt;path_to&gt;\/wso2is-4.5.0\/dbscripts\/mysql.sql;<\/pre>\n<p>This will run the queries in the SQL scripts and set up the required tables.<\/p>\n<p>Now if we enter the commands following outputs will be shown.<\/p>\n<pre class=\" brush:java\">mysql&gt; show tables;<\/pre>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/showTables.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17291\" alt=\"showTables\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/showTables-131x300.png\" width=\"131\" height=\"300\" \/><\/a><div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<p>Now we are done with setting up the database. We can go ahead and ask Identiy Server to use it.<\/p>\n<p>Note: Before going into the following steps we also need to add the mysql-jdbc connector to Identity Server. You can download it from <a href=\"http:\/\/dev.mysql.com\/downloads\/connector\/j\/#downloads\" target=\"_blank\">here<\/a> and drop it into CARBON_HOME\/repository\/components\/lib.<\/p>\n<h2>User Store Configuration in IS &#8211; Primary<\/h2>\n<p>Identity Server uses embedded H2 database to keep permission details etc. and the data source details of it resides in CARBON_HOME\/repository\/conf\/datasources\/master-datasources.xml. We can add data-source details of our new JDBC user store here as well. Here is the <a href=\"http:\/\/ubuntuone.com\/5lZiOAMGrPc8WUvUpGjAcI\" target=\"_blank\">master-datasources.xml<\/a> file according to my set-up.<\/p>\n<pre class=\" brush:java\">&lt;datasource&gt;\r\n            &lt;name&gt;JDBC_demo_user_store&lt;\/name&gt;\r\n            &lt;description&gt;The datasource used for JDBC_demo_user_store&lt;\/description&gt;\r\n            &lt;jndiConfig&gt;\r\n                &lt;name&gt;jdbc\/JDBC_demo_user_store&lt;\/name&gt;\r\n            &lt;\/jndiConfig&gt;\r\n            &lt;definition type=\"RDBMS\"&gt;\r\n                &lt;configuration&gt;\r\n                    &lt;url&gt;jdbc:mysql:\/\/localhost:3306\/JDBC_demo_user_store&lt;\/url&gt;\r\n                    &lt;username&gt;root&lt;\/username&gt;\r\n                    &lt;password&gt;pushpalanka2&lt;\/password&gt;\r\n                    &lt;driverClassName&gt;com.mysql.jdbc.Driver&lt;\/driverClassName&gt;\r\n                    &lt;maxActive&gt;50&lt;\/maxActive&gt;\r\n                    &lt;maxWait&gt;60000&lt;\/maxWait&gt;\r\n                    &lt;testOnBorrow&gt;true&lt;\/testOnBorrow&gt;\r\n                    &lt;validationQuery&gt;SELECT 1&lt;\/validationQuery&gt;\r\n                    &lt;validationInterval&gt;30000&lt;\/validationInterval&gt;\r\n                &lt;\/configuration&gt;\r\n            &lt;\/definition&gt;\r\n&lt;\/datasource&gt;<\/pre>\n<p>The\u00a0 Primary configuration for user store resides at CARBON_HOME\/repository\/conf\/user-mgt.xml file. By default this is pointing to a embedded ReadLDAPUserStoreManager. Now we are to change it to be a JDBCUserStoreManager. So let&#8217;s comment out the default one and uncomment JDBCUserStoreManager. Now we will have a <a href=\"http:\/\/ubuntuone.com\/1l0kUP7cQqegLFEJzTHJCS\" target=\"_blank\">user-mgt.xml file similar to this<\/a>. If we want, we can modify these properties as we want, according to the context.<\/p>\n<p>Now the configurations are over. Let&#8217;s start the server with bin\/wso2server.sh. Once started if we go ahead and add user to the &#8216;Primary&#8217; domain.<\/p>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/add_user.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17292\" alt=\"add_user\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/add_user-300x178.png\" width=\"300\" height=\"178\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/add_user-300x178.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/add_user.png 741w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Now if we go and check the UM_USER table created in our database, it will list user as well.<\/p>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/UM_USER.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17293\" alt=\"UM_USER\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/UM_USER-300x66.png\" width=\"300\" height=\"66\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/UM_USER-300x66.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/UM_USER.png 798w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<h2>User Store Configuration in IS &#8211; Secondary<\/h2>\n<p>Now let&#8217;s see how we can use that same MySQL user store as a secondary user store in IS. This is pretty easy that we can do the whole thing via UI, without any modification to the above default configurations in master-datasources.xml or user-mgt.xml. We have to add driver name, URL, user name and password here as mandatory properties which we previously gave at master-datasources.xml.<\/p>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/ui.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17294\" alt=\"ui\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/ui-300x183.png\" width=\"300\" height=\"183\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/ui-300x183.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/ui.png 770w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Once added it will be shown in the available user stores list. It intuitive to define a user store manager in UI, but if you want more details, you can refer <a href=\"http:\/\/pushpalankajaya.blogspot.com\/2013\/08\/await-wso2-identity-server-450-with.html\" target=\"_blank\">this post<\/a>. If we want we can also edit the optional properties too. The advanced section carries the SQL statements required for JDBC user store manager.<\/p>\n<p><b>Advanced Option: <\/b>If we are editing database structure(sql script), we need to update these SQL queries according to that schema, using this Advanced option.<\/p>\n<p>Now if we go and try add a new user, we will see this secondary domain as well.<\/p>\n<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/Screenshot-from-2013-09-05-17-01-50.png\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17295\" alt=\"Screenshot from 2013-09-05 17-01-50\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/Screenshot-from-2013-09-05-17-01-50-300x183.png\" width=\"300\" height=\"183\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/Screenshot-from-2013-09-05-17-01-50-300x183.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/Screenshot-from-2013-09-05-17-01-50.png 679w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>We can see the users getting added in the database as same as it was in the Primary user store, if we select this domain and add the users.<\/p>\n<p>&nbsp;<\/p>\n<div style=\"border: 1px solid #D8D8D8; background: #FAFAFA; width: 100%; padding-left: 5px;\"><b><i>Reference: <\/i><\/b><a href=\"http:\/\/pushpalankajaya.blogspot.com\/2013\/09\/deploying-identity-server-over-jdbc.html\">Deploying Identity Server over a JDBC Based User Store<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/jcg\">JCG partner<\/a> Pushpalanka at the <a href=\"http:\/\/pushpalankajaya.blogspot.com\/\">Pushpalanka&#8217;s Blog<\/a> blog.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but same procedure applies to any other JDBC user store as well. My environment is, OS &#8211; Ubuntu 12.10 Java &#8211; 1.6 WSO2 IS 4.5.0 Setting up &hellip;<\/p>\n","protected":false},"author":247,"featured_media":182,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[491,297],"class_list":["post-17216","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-jdbc","tag-security"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Deploying Identity Server over a JDBC Based User Store<\/title>\n<meta name=\"description\" content=\"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Deploying Identity Server over a JDBC Based User Store\" \/>\n<meta property=\"og:description\" content=\"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/pushpalanka\" \/>\n<meta property=\"article:published_time\" content=\"2013-09-12T22:00:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Pushpalanka\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/Pushpalanka\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pushpalanka\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html\"},\"author\":{\"name\":\"Pushpalanka\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/f134211f7e70919197fcc190a7974161\"},\"headline\":\"Deploying Identity Server over a JDBC Based User Store\",\"datePublished\":\"2013-09-12T22:00:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html\"},\"wordCount\":662,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/log4jdbc-logo.jpg\",\"keywords\":[\"JDBC\",\"Security\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html\",\"name\":\"Deploying Identity Server over a JDBC Based User Store\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/log4jdbc-logo.jpg\",\"datePublished\":\"2013-09-12T22:00:38+00:00\",\"description\":\"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/log4jdbc-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/log4jdbc-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/deploying-identity-server-over-a-jdbc-based-user-store.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Deploying Identity Server over a JDBC Based User Store\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/f134211f7e70919197fcc190a7974161\",\"name\":\"Pushpalanka\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g\",\"caption\":\"Pushpalanka\"},\"description\":\"Pushpalanka is an undergraduate in Computer Science and Engineering and working on variety of middle-ware solutions. She is an open-source enthusiastic having interests in the fields of Big Data, Distributed Systems and Web Security.She has successfully participated in Google Summer of Code 2012 program.\",\"sameAs\":[\"http:\\\/\\\/pushpalankajaya.blogspot.com\\\/\",\"https:\\\/\\\/www.facebook.com\\\/pushpalanka\",\"http:\\\/\\\/www.linkedin.com\\\/pub\\\/pushpalanka-jayawardhana\\\/21\\\/214\\\/50a\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/Pushpalanka\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/pushpalanka\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Deploying Identity Server over a JDBC Based User Store","description":"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html","og_locale":"en_US","og_type":"article","og_title":"Deploying Identity Server over a JDBC Based User Store","og_description":"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but","og_url":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_author":"https:\/\/www.facebook.com\/pushpalanka","article_published_time":"2013-09-12T22:00:38+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg","type":"image\/jpeg"}],"author":"Pushpalanka","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/Pushpalanka","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Pushpalanka","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html"},"author":{"name":"Pushpalanka","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/f134211f7e70919197fcc190a7974161"},"headline":"Deploying Identity Server over a JDBC Based User Store","datePublished":"2013-09-12T22:00:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html"},"wordCount":662,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg","keywords":["JDBC","Security"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html","url":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html","name":"Deploying Identity Server over a JDBC Based User Store","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg","datePublished":"2013-09-12T22:00:38+00:00","description":"With this post I am to demonstrate how to configure WSO2 Identity Server with a JDBC user store. For the demonstration I am using a MySQL user store, but","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/log4jdbc-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/deploying-identity-server-over-a-jdbc-based-user-store.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"Deploying Identity Server over a JDBC Based User Store"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/f134211f7e70919197fcc190a7974161","name":"Pushpalanka","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c732f6d647c37f2005ce72c025b595f6f962144daf6a13a885d844dc020a5e94?s=96&d=mm&r=g","caption":"Pushpalanka"},"description":"Pushpalanka is an undergraduate in Computer Science and Engineering and working on variety of middle-ware solutions. She is an open-source enthusiastic having interests in the fields of Big Data, Distributed Systems and Web Security.She has successfully participated in Google Summer of Code 2012 program.","sameAs":["http:\/\/pushpalankajaya.blogspot.com\/","https:\/\/www.facebook.com\/pushpalanka","http:\/\/www.linkedin.com\/pub\/pushpalanka-jayawardhana\/21\/214\/50a","https:\/\/x.com\/https:\/\/twitter.com\/Pushpalanka"],"url":"https:\/\/www.javacodegeeks.com\/author\/pushpalanka"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/17216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/247"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=17216"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/17216\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/182"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=17216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=17216"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=17216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}