Changes for page org.clazzes.login.sql
Last modified by christoph_lechleitner@iteg_at on 2013-07-15 01.30:42
From version 5.1
edited by christoph_lechleitner@iteg_at
on 2013-02-02 05.21:48
on 2013-02-02 05.21:48
Change comment:
There is no comment for this version
To version 9.1
edited by christoph_lechleitner@iteg_at
on 2013-02-13 11.31:05
on 2013-02-13 11.31:05
Change comment:
1.1.0 released
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -org.clazzes.login.sql (work in progress)1 +org.clazzes.login.sql - Content
-
... ... @@ -22,12 +22,14 @@ 22 22 23 23 === {{id name="org.clazzes.login.sql-Configuration"/}}Configuration === 24 24 25 -The SQL login service may be configured using the OSGi configuration PID {{code language="none"}}org.clazzes.login.sql{{/code}} using the seconfiguration values:25 +The SQL login service may be configured using the OSGi configuration PID {{code language="none"}}org.clazzes.login.sql{{/code}} using the configuration values shown in the table below. 26 26 27 +Beginning with the version 1.1.0 (released 2013-02-13), all query strings default to the database structure used by the upcoming [[SDS (SQL Directory Service)>>confluencePage:page:LOGIN.SDS (SQL Directory Service) (work in progress)]] bundle. When using another database structure that does not allow some of the queries, it is important set those configuration values to empty strings; deleting them will not help because default values would kick in right away. 28 + 29 +Results of list queries (group memberships, group members) are sorted naturally in the Java layer, so there is no need to use ORDER BY clauses. ORDER BY clauses often provoke temporary tables and filesort, which is quite expensive for queries used quite often. 30 + 27 27 (% class="wiki-content" %) 28 28 ((( 29 - 30 - 31 31 |=((( 32 32 (% class="tablesorter-header-inner" %) 33 33 ((( ... ... @@ -44,12 +44,12 @@ 44 44 deactivateUserStatement 45 45 {{/code}} 46 46 )))|((( 47 - Not implemented yet. Optional.Required for //deactivateUser// feature.49 +Required non-empty for //deactivateUser// feature. 48 48 49 49 SQL template for a prepared statement to deactivate a user. 50 50 51 - Example:52 -{{code language="none"}}UPDATE usersSETencryptedPassword='{disabled}' WHEREuserId=?{{/code}}53 +Default, appropriate for SDS' tables: 54 +{{code language="none"}}UPDATE USERS SET PASSWORD='{disabled}' WHERE USERID=?{{/code}} 53 53 ))) 54 54 |((( 55 55 {{code language="none"}} ... ... @@ -69,16 +69,12 @@ 69 69 groupsByUserIdQuery 70 70 {{/code}} 71 71 )))|((( 72 - Optional.Required for //getGroups// feature.74 +Required non-empty for //getGroups// feature. 73 73 74 74 SQL template for a prepared statement to query the group IDs and group names of the groups of which the user specified by a userId is a member. 75 75 76 -Example: 77 -{{code language="none"}}SELECT g.groupId, g.groupName FROM groups AS g, users AS u, memberships AS mgroupName 78 - WHERE u.userId=? 79 -AND m.userId = u.id 80 - AND g.id = m.groupId 81 - ORDER BY g.groupId {{/code}} 78 +Default, appropriate for SDS' tables: 79 +{{code language="none"}}SELECT g.GROUPID, g.GROUPNAME FROM GROUPS AS g, USERS AS u, GROUPMEMBERSHIPS AS m WHERE u.USERID='?' AND m.USER_ID = u.ID AND g.ID = m.GROUP_ID{{/code}} 82 82 ))) 83 83 |((( 84 84 {{code language="none"}} ... ... @@ -99,12 +99,12 @@ 99 99 setUserPasswordStatement 100 100 {{/code}} 101 101 )))|((( 102 - Optional.Required for //changePassword// feature.100 +Required non-empty for //changePassword// feature. 103 103 104 104 SQL template for a prepared statement to set a new password for the user. 105 105 106 - Example:107 -{{code language="none"}}UPDATE usersSETencryptedPassword=? WHEREuserId=?{{/code}}104 +Default, appropriate for SDS' tables: 105 +{{code language="none"}}UPDATE USERS SET PASSWORD=? WHERE USERID=?{{/code}} 108 108 ))) 109 109 |((( 110 110 {{code language="none"}} ... ... @@ -116,7 +116,7 @@ 116 116 If the e-mail address is not part of the database, use a constant like '' or null. 117 117 118 118 Example: 119 -{{code language="none"}}SELECT userId,encryptedPassword,userName,mailAdrFROMusersWHEREuserId=?{{/code}}117 +{{code language="none"}}SELECT USERID, PASSWORD, USERNAME, EMAIL FROM USERS WHERE USERID=?{{/code}} 120 120 ))) 121 121 |((( 122 122 {{code language="none"}} ... ... @@ -123,16 +123,11 @@ 123 123 usersByGroupIdQuery 124 124 {{/code}} 125 125 )))|((( 126 - Optional.Required for //getGroupMembers// feature.124 +Required non-empty for //getGroupMembers// feature. 127 127 128 128 SQL template for a prepared statement to query the user IDs, user names and e-mail-addresses of the members of the group specified by a groupId. 129 129 130 130 Example: 131 -{{code language="none"}}SELECT u.userId, u.userName, u.mailAdr 132 - FROM groups AS g, users AS u, memberships AS mgroupName 133 - WHERE g.groupId=? 134 -AND m.groupId = g.id 135 - AND u.id = m.userId 136 - ORDER BY g.userId {{/code}} 129 +{{code language="none"}}SELECT u.USERID, u.USERNAME, u.EMAIL FROM GROUPS AS g, USERS AS u, GROUPMEMBERSHIPS AS m WHERE g.GROUPID=? AND m.GROUP_ID = g.ID AND u.ID = m.USER_ID{{/code}} 137 137 ))) 138 138 )))
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -6888 201 +688781 - Title
-
... ... @@ -1,1 +1,1 @@ 1 -org.clazzes.login.sql (work in progress)1 +org.clazzes.login.sql - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://clazzes.atlassian.net/wiki/spaces/LOGIN/pages/6888 20/org.clazzes.login.sql(work in progress)1 +https://clazzes.atlassian.net/wiki/spaces/LOGIN/pages/688781/org.clazzes.login.sql