You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2008/09/15 04:49:18 UTC
svn commit: r695329 [3/3] - in /roller/trunk: ./ apps/weblogger/
apps/weblogger/nbproject/ apps/weblogger/src/java/META-INF/
apps/weblogger/src/java/org/apache/roller/weblogger/business/
apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/...
Modified: roller/trunk/apps/weblogger/web/WEB-INF/classes/ApplicationResources.properties
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/classes/ApplicationResources.properties?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/classes/ApplicationResources.properties (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/classes/ApplicationResources.properties Sun Sep 14 19:49:10 2008
@@ -809,8 +809,12 @@
loginPage.title=Welcome to Roller
loginPage.prompt=Please enter your username and password to login.
+loginPage.openIdPrompt=Please login via OpenID
+loginPage.openIdHybridPrompt=Or, login with your username and password
loginPage.userName=Username
loginPage.password=Password
+loginPage.openID=OpenID username
+loginPage.loginOpenID=Login
loginPage.rememberMe=Remember Me
loginPage.login=Login
loginPage.reset=Reset
@@ -1585,27 +1589,69 @@
# --------------------------------------------------------------- User register
-userRegister.prompt=Use this form to register a new Roller user, please \
-create only one user account per person.
+userRegister.prompt=Welcome! Before you can get started, you need to create a \
+new user account. Please complete this form and click the button at the end \
+to request your new account. <b>All fields are required</b>.
-userRegister.button.save=Register User
-userRegister.button.cancel=Cancel
+Register.disabled=The administrator of this site has disabled user registrations \
+at this time. Please contact the system administrators if you think this is \
+incorrect.
+
+userRegister.heading.identification=How would you like to be identified?
+userRegister.tip.identification=Enter your name(s) so you can be identified on \
+this site and your email address so we can reach you for account activation.
+
+userRegister.tip.userName=A short one-word username to uniquely identify \
+yourself on the site. Please limit it to simple alphanumeric characters (a-z, \
+A-Z and 0-9) and do not use HTML. You will <b>not</b> be able to change this \
+later, but that\'s OK because this string will not be publicly displayed.
+
+userRegister.tip.screenName=Your desired screen name (with no HTML). This is \
+is what will be displayed in your weblog and on weblog entries that you write.
+
+userRegister.tip.fullName=Your full name (with no HTML), first and last. Some \
+weblog themes will display this instead of (or in addition to) your screenname.
-userRegister.tip.screenName=Your desired screen name (with no HTML).
-userRegister.tip.fullName=Your full name (with no HTML).
-userRegister.tip.userName=A short one-word username for your user account. \
-Please limit it to simple ASCII alphanumeric characters (a-z, A-Z and 0-9), \
-and do not use HTML.
userRegister.tip.email=Please enter valid email address, the site administrator \
may disable your account if he/she cannot reach you via email.
-userRegister.tip.timeZone=Your preferred timezone.
-userRegister.tip.locale=Your preferred locale.
+
+
+userRegister.heading.authentication=How will you be authenticated?
+
+userRegister.tip.openid.disabled=Enter a password to be used when you login \
+and confirm that password by entering it a second time.
+
+userRegister.tip.openid.hybrid=You can choose to login via password only you \
+can by OpenID only, or you can specify both if you would to be able to login \
+both ways. For more information about OpenID see \
+<a href=\"http://openid.net\">http://openid.net</a>.
+
+userRegister.tip.openid.only=This site uses only OpenID for logins, so please \
+specify your OpenID identifier below. For more information about OpenID see \
+<a href=\"http://openid.net\">http://openid.net</a>.
+
userRegister.tip.password=Your password.
userRegister.tip.passwordConfirm=Confirm your password.
+userRegister.tip.openIdUrl=Your OpenID identifier (in the form of a URL).
-Register.disabled=The administrator of this site has disabled user registrations \
-at this time. Please contact the system administrators if you think this is \
-incorrect.
+
+userRegister.heading.locale=What are your locale and timezone settings?
+
+userRegister.tip.localeAndTimeZone=We have attempted to guess your preferred \
+locale and timezone settings below. Please set them correctly as they will be \
+used in the weblog entries you create.
+
+userRegister.tip.timeZone=Your preferred timezone.
+userRegister.tip.locale=Your preferred locale.
+
+userRegister.heading.ready=Ready to roll?
+userRegister.tip.ready=When you are, click the button below.
+
+userRegister.button.save=Register User
+userRegister.button.cancel=Cancel
+
+userRegister.success.ready=Yes, form appears to be complete. Click the button below.
+userRegister.error.mismatchedPasswords=Your passwords do not match!
# errors from validation
Register.error.nameNull=User Name is a required field
@@ -1641,6 +1687,7 @@
userSettings.email=Email
userSettings.locale=Locale
userSettings.timeZone=Timezone
+userSettings.openIdUrl=OpenID name
userSettings.save=Save
userSettings.cookieLogin=You cannot change passwords when logging in with the \
Remember Me feature. Please logout and log back in to \
Added: roller/trunk/apps/weblogger/web/WEB-INF/classes/spring-security-2.0.1-openidfix.xsd
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/classes/spring-security-2.0.1-openidfix.xsd?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/apps/weblogger/web/WEB-INF/classes/spring-security-2.0.1-openidfix.xsd
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Login.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Login.jsp?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Login.jsp (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Login.jsp Sun Sep 14 19:49:10 2008
@@ -33,52 +33,87 @@
}
%>
-<p><s:text name="loginPage.prompt" /></p>
-<form method="post" id="loginForm"
- action="<c:url value="<%= securityCheckUrl %>"/>"
- onsubmit="saveUsername(this)">
-
- <table>
-
- <tr>
- <th><s:text name="loginPage.userName" />:</th>
- <td>
- <input type="text" name="j_username" id="j_username" size="25" />
- </td>
- </tr>
-
- <tr>
- <th><s:text name="loginPage.password" />:</th>
- <td>
- <input type="password" name="j_password" id="j_password" size="20" />
- </td>
- </tr>
-
- <c:if test="${rememberMeEnabled}">
- <tr>
- <td></td>
- <td>
- <input type="checkbox" name="rememberMe" id="rememberMe" />
- <label for="rememberMe">
- <s:text name="loginPage.rememberMe" />
- </label>
- </td>
- </tr>
- </c:if>
-
- <tr>
- <td></td>
- <td>
- <input type="submit" name="login" id="login" value="<s:text name="loginPage.login" />" />
- <input type="reset" name="reset" id="reset" value="<s:text name="loginPage.reset" />"
- onclick="$('j_username').focus()" />
- </td>
- </tr>
-
- </table>
+<s:if test="openIdConfiguration != 'disabled'">
-</form>
+ <p><s:text name="loginPage.openIdPrompt" /></p>
+
+ <form method="post" id="loginOpenIDForm"
+ action="/roller/roller_j_openid_security_check"
+ onsubmit="saveUsername(this)">
+ <!-- action="<c:url value='roller_j_openid_security_check'/>" -->
+ <table width="80%">
+ <tr>
+ <td width="20%" align="right"><s:text name="loginPage.openID" /></td>
+ <td width="80%">
+ <input type="text" name="j_username" id="j_username" class="f_openid_identifier" size="40" maxlength="255" />
+ </td>
+ </tr>
+ <tr>
+ <td width="20%"></td>
+ <td width="80%">
+ <input type="submit" name="submit" id="submit" value="<s:text name="loginPage.loginOpenID" />" />
+ </td>
+ </tr>
+ </table>
+ </form>
+</s:if>
+
+<s:if test="openIdConfiguration != 'only'">
+
+ <s:if test="openIdConfiguration == 'hybrid'">
+ <p><s:text name="loginPage.openIdHybridPrompt" /></p>
+ </s:if>
+
+ <s:if test="openIdConfiguration == 'disabled'">
+ <p><s:text name="loginPage.prompt" /></p>
+ </s:if>
+
+ <form method="post" id="loginForm"
+ action="<c:url value="<%= securityCheckUrl %>"/>"
+ onsubmit="saveUsername(this)">
+
+ <table width="80%">
+
+ <tr>
+ <td width="20%" align="right"><s:text name="loginPage.userName" /></td>
+ <td width="80%">
+ <input type="text" name="j_username" id="j_username" size="25" />
+ </td>
+ </tr>
+
+ <tr>
+ <td width="20%" align="right"><s:text name="loginPage.password" /></td>
+ <td width="80%">
+ <input type="password" name="j_password" id="j_password" size="20" />
+ </td>
+ </tr>
+
+ <c:if test="${rememberMeEnabled}">
+ <tr>
+ <td width="20%"></td>
+ <td width="80%">
+ <input type="checkbox" name="rememberMe" id="rememberMe" />
+ <label for="rememberMe">
+ <s:text name="loginPage.rememberMe" />
+ </label>
+ </td>
+ </tr>
+ </c:if>
+
+ <tr>
+ <td width="20%"></td>
+ <td width="80%">
+ <input type="submit" name="login" id="login" value="<s:text name="loginPage.login" />" />
+ <input type="reset" name="reset" id="reset" value="<s:text name="loginPage.reset" />"
+ onclick="$('j_username').focus()" />
+ </td>
+ </tr>
+
+ </table>
+ </form>
+</s:if>
+
<script type="text/javascript">
<!--
Modified: roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Profile.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Profile.jsp?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Profile.jsp (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Profile.jsp Sun Sep 14 19:49:10 2008
@@ -15,8 +15,12 @@
copyright in this work, please see the NOTICE file in the top level
directory of this distribution.
--%>
+<%@ page import="org.apache.roller.weblogger.config.WebloggerConfig" %>
<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+<%!
+boolean openidEnabled = WebloggerConfig.getBooleanProperty("authentication.openid.enabled");
+%>
<p class="subtitle"><s:text name="yourProfile.description" /></p>
<s:form action="profile!save">
@@ -30,20 +34,6 @@
</tr>
<tr>
- <td class="label"><label for="passwordText" /><s:text name="userSettings.password" /></label></td>
- <td class="field">
- <s:password name="bean.passwordText" size="20" maxlength="20" />
- </td>
- <td class="description"><s:text name="userRegister.tip.password" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="passwordConfirm" /><s:text name="userSettings.passwordConfirm" /></label></td>
- <td class="field"><s:password name="bean.passwordConfirm" size="20" maxlength="20" /></td>
- <td class="description"><s:text name="userRegister.tip.passwordConfirm" /></td>
- </tr>
-
- <tr>
<td class="label"><label for="screenName" /><s:text name="userSettings.screenname" /></label></td>
<td class="field"><s:textfield name="bean.screenName" size="30" maxlength="30" /></td>
<td class="description"><s:text name="userRegister.tip.screenName" /></td>
@@ -61,6 +51,34 @@
<td class="description"><s:text name="userRegister.tip.email" /></td>
</tr>
+ <s:if test="openIdConfiguration != 'only'">
+ <tr>
+ <td class="label"><label for="passwordText" /><s:text name="userSettings.password" /></label></td>
+ <td class="field">
+ <s:password name="bean.passwordText" size="20" maxlength="20" />
+ </td>
+ <td class="description"><s:text name="userRegister.tip.password" /></td>
+ </tr>
+
+ <tr>
+ <td class="label"><label for="passwordConfirm" /><s:text name="userSettings.passwordConfirm" /></label></td>
+ <td class="field"><s:password name="bean.passwordConfirm" size="20" maxlength="20" /></td>
+ <td class="description"><s:text name="userRegister.tip.passwordConfirm" /></td>
+ </tr>
+ </s:if>
+ <s:else>
+ <s:hidden name="bean.password" />
+ <s:hidden name="bean.passwordConfirm" />
+ </s:else>
+
+ <s:if test="openIdConfiguration != 'disabled'">
+ <tr>
+ <td class="label"><label for="openIdUrl" /><s:text name="userSettings.openIdUrl" /></label></td>
+ <td class="field"><s:textfield name="bean.openIdUrl" size="40" maxlength="255" id="f_openid_identifier" /></td>
+ <td class="description"><s:text name="userRegister.tip.openIdUrl" /></td>
+ </tr>
+ </s:if>
+
<tr>
<td class="label"><label for="locale" /><s:text name="userSettings.locale" /></label></td>
<td class="field">
Modified: roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Register.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Register.jsp?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Register.jsp (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/jsps/core/Register.jsp Sun Sep 14 19:49:10 2008
@@ -24,76 +24,168 @@
<s:hidden name="bean.enabled" />
<table class="formtable">
+ <tr>
+ <td colspan="3">
+ <h2><s:text name="userRegister.heading.identification" /></h2>
+ <p><s:text name="userRegister.tip.identification" /></p>
+ </td>
+ </tr>
+
+ <s:if test="fromSso">
+ <tr>
+ <td class="label"><label for="userName" /><s:text name="userSettings.username" /></label></td>
+ <td class="field"><strong><s:property value="bean.userName" /></strong></td>
+ <td class="description"><s:text name="userRegister.tip.userName" /></td>
+ </tr>
+ </s:if>
+ <s:else>
+ <tr>
+ <td class="label"><label for="userName" /><s:text name="userSettings.username" /></label></td>
+ <td class="field"><s:textfield name="bean.userName" size="30" maxlength="30" onkeyup="onChange()" /></td>
+ <td class="description"><s:text name="userRegister.tip.userName" /></td>
+ </tr>
+ </s:else>
+
+ <tr>
+ <td class="label"><label for="screenName" /><s:text name="userSettings.screenname" /></label></td>
+ <td class="field"><s:textfield name="bean.screenName" size="30" maxlength="30" onkeyup="onChange()" /></td>
+ <td class="description"><s:text name="userRegister.tip.screenName" /></td>
+ </tr>
-<s:if test="fromSso">
<tr>
- <td class="label"><label for="userName" /><s:text name="userSettings.username" /></label></td>
- <td class="field"><strong><s:property value="bean.userName" /></strong></td>
- <td class="description"><s:text name="userRegister.tip.userName" /></td>
+ <td class="label"><label for="fullName" /><s:text name="userSettings.fullname" /></label></td>
+ <td class="field"><s:textfield name="bean.fullName" size="30" maxlength="30" onkeyup="onChange()" /></td>
+ <td class="description"><s:text name="userRegister.tip.fullName" /></td>
</tr>
-</s:if>
-<s:else>
+
<tr>
- <td class="label"><label for="userName" /><s:text name="userSettings.username" /></label></td>
- <td class="field"><s:textfield name="bean.userName" size="30" maxlength="30" /></td>
- <td class="description"><s:text name="userRegister.tip.userName" /></td>
+ <td class="label"><label for="emailAddress" /><s:text name="userSettings.email" /></label></td>
+ <td class="field"><s:textfield name="bean.emailAddress" size="40" maxlength="40" onkeyup="onChange()" /></td>
+ <td class="description"><s:text name="userRegister.tip.email" /></td>
+ </tr>
+
+ <s:if test="!fromSso">
+ <tr>
+ <td colspan="3">
+ <h2><s:text name="userRegister.heading.authentication" /></h2>
+
+ <s:if test="openIdConfiguration == 'disabled'">
+ <p><s:text name="userRegister.tip.openid.disabled" /></p>
+ </s:if>
+
+ <s:if test="openIdConfiguration == 'hybrid'">
+ <p><s:text name="userRegister.tip.openid.hybrid" /></p>
+ </s:if>
+
+ <s:if test="openIdConfiguration == 'only'">
+ <p><s:text name="userRegister.tip.openid.only" /></p>
+ </s:if>
+ </td>
+ </tr>
+
+ <s:if test="openIdConfiguration != 'only'">
+ <tr>
+ <td class="label"><label for="passwordText" /><s:text name="userSettings.password" /></label></td>
+ <td class="field">
+ <s:password name="bean.passwordText" size="20" maxlength="20" onkeyup="onChange()" />
+ <s:hidden name="bean.password" />
+ </td>
+ <td class="description"><s:text name="userRegister.tip.password" /></td>
+ </tr>
+
+ <tr>
+ <td class="label"><label for="passwordConfirm" /><s:text name="userSettings.passwordConfirm" /></label></td>
+ <td class="field"><s:password name="bean.passwordConfirm" size="20" maxlength="20" onkeyup="onChange()" /></td>
+ <td class="description"><s:text name="userRegister.tip.passwordConfirm" /></td>
+ </tr>
+ </s:if>
+ <s:else>
+ <s:hidden name="bean.password" />
+ <s:hidden name="bean.passwordConfirm" />
+ </s:else>
+
+
+ <s:if test="openIdConfiguration != 'disabled'">
+ <tr>
+ <td class="label"><label for="openIdUrl" /><s:text name="userSettings.openIdUrl" /></label></td>
+ <td class="field"><s:textfield name="bean.openIdUrl" size="40" maxlength="255" id="f_openid_identifier" onkeyup="onChange()"/></td>
+ <td class="description"><s:text name="userRegister.tip.openIdUrl" /></td>
+ </tr>
+ </s:if>
+
+ </s:if>
+
+ <tr>
+ <td colspan="3">
+ <h2><s:text name="userRegister.heading.locale" /></h2>
+ <p><s:text name="userRegister.tip.localeAndTimeZone" /></p>
+ </td>
</tr>
<tr>
- <td class="label"><label for="passwordText" /><s:text name="userSettings.password" /></label></td>
+ <td class="label"><label for="locale" /><s:text name="userSettings.locale" /></label></td>
<td class="field">
- <s:password name="bean.passwordText" size="20" maxlength="20" />
- <s:hidden name="bean.password" />
- </td>
- <td class="description"><s:text name="userRegister.tip.password" /></td>
+ <s:select name="bean.locale" size="1" list="localesList" listValue="displayName" />
+ </td>
+ <td class="description"><s:text name="userRegister.tip.locale" /></td>
</tr>
<tr>
- <td class="label"><label for="passwordConfirm" /><s:text name="userSettings.passwordConfirm" /></label></td>
- <td class="field"><s:password name="bean.passwordConfirm" size="20" maxlength="20" /></td>
- <td class="description"><s:text name="userRegister.tip.passwordConfirm" /></td>
- </tr>
-</s:else>
-
-<tr>
- <td class="label"><label for="screenName" /><s:text name="userSettings.screenname" /></label></td>
- <td class="field"><s:textfield name="bean.screenName" size="30" maxlength="30" /></td>
- <td class="description"><s:text name="userRegister.tip.screenName" /></td>
-</tr>
-
-<tr>
- <td class="label"><label for="fullName" /><s:text name="userSettings.fullname" /></label></td>
- <td class="field"><s:textfield name="bean.fullName" size="30" maxlength="30" /></td>
- <td class="description"><s:text name="userRegister.tip.fullName" /></td>
-</tr>
-
-<tr>
- <td class="label"><label for="emailAddress" /><s:text name="userSettings.email" /></label></td>
- <td class="field"><s:textfield name="bean.emailAddress" size="40" maxlength="40" /></td>
- <td class="description"><s:text name="userRegister.tip.email" /></td>
-</tr>
-
-<tr>
- <td class="label"><label for="locale" /><s:text name="userSettings.locale" /></label></td>
- <td class="field">
- <s:select name="bean.locale" size="1" list="localesList" listValue="displayName" />
- </td>
- <td class="description"><s:text name="userRegister.tip.locale" /></td>
-</tr>
-
-<tr>
- <td class="label"><label for="timeZone" /><s:text name="userSettings.timeZone" /></label></td>
- <td class="field">
- <s:select name="bean.timeZone" size="1" list="timeZonesList" />
- </td>
- <td class="description"><s:text name="userRegister.tip.timeZone" /></td>
-</tr>
-
+ <td class="label"><label for="timeZone" /><s:text name="userSettings.timeZone" /></label></td>
+ <td class="field">
+ <s:select name="bean.timeZone" size="1" list="timeZonesList" />
+ </td>
+ <td class="description"><s:text name="userRegister.tip.timeZone" /></td>
+ </tr>
+
</table>
<br />
-<s:submit key="userRegister.button.save" />
-<input type="button" value="<s:text name="userSettings.button.cancel"/>" onclick="window.location='<s:url value="/"/>'" />
-
+<h2><s:text name="userRegister.heading.ready" /></h2>
+
+<p id="readytip"><s:text name="userRegister.tip.ready" /></p>
+
+<s:submit id="submit" key="userRegister.button.save" />
+<input type="button" value="<s:text name="userSettings.button.cancel"/>"
+ onclick="window.location='<s:url value="/"/>'" />
+
</s:form>
+
+<script type="text/javascript">
+function onChange() {
+ var disabled = true;
+ var openIdConfig = '<s:property value="openIdConfiguration" />';
+ var ssoEnabled = <s:property value="fromSso" />;
+ var passwordText = document.register['bean.passwordText'].value;
+ var passwordConfirm = document.register['bean.passwordConfirm'].value;
+ var userName = document.register['bean.userName'].value;
+ var emailAddress = document.register['bean.emailAddress'].value;
+ var openIdUrl = document.register['bean.openIdUrl'].value;
+
+ if (ssoEnabled) {
+ if (emailAddress) disabled = false;
+
+ } else if (openIdConfig == 'disabled') {
+ if (emailAddress && userName && passwordText && passwordConfirm && emailAddress) disabled = false;
+
+ } else if (openIdConfig == 'only') {
+ if (emailAddress && openIdUrl) disabled = false;
+
+ } else if (openIdConfig == 'hybrid') {
+ if (emailAddress && ((passwordText && passwordConfirm) || (openIdUrl)) ) disabled = false;
+ }
+ if ((passwordText || passwordConfirm) && !(passwordText == passwordConfirm)) {
+ $('readytip').innerHTML = '<s:text name="userRegister.error.mismatchedPasswords" />';
+ disabled = true;
+ } else if (disabled) {
+ $('readytip').innerHTML = '<s:text name="userRegister.tip.ready" />'
+ } else {
+ $('readytip').innerHTML = '<s:text name="userRegister.success.ready" />'
+ }
+ //$('submit').disabled = disabled;
+}
+//$('submit').disabled = true;
+</script>
+
+
Modified: roller/trunk/apps/weblogger/web/WEB-INF/security.xml
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/security.xml?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/security.xml (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/security.xml Sun Sep 14 19:49:10 2008
@@ -19,9 +19,14 @@
<beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
- http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.1.xsd">
+ http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.1-openidfix.xsd">
- <http auto-config="true" lowercase-comparisons="true" access-decision-manager-ref="accessDecisionManager">
+<!--
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
+ http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.1.xsd">
+-->
+
+ <http auto-config="false" lowercase-comparisons="true" access-decision-manager-ref="accessDecisionManager">
<intercept-url pattern="/images/**" filters="none"/>
<intercept-url pattern="/scripts/**" filters="none"/>
<intercept-url pattern="/styles/**" filters="none"/>
@@ -35,17 +40,44 @@
<!-- Uncomment the following for LDAP/SSO configuration -->
<!--intercept-url pattern="/roller-ui/user.do*" access="register"/-->
-
<form-login login-page="/roller-ui/login.rol" authentication-failure-url="/roller-ui/login.rol?error=true"
- login-processing-url="/roller_j_security_check"/>
+ login-processing-url="/roller_j_security_check"/>
<remember-me user-service-ref="rollerUserService" key="715F2448-3176-11DD-ABC6-9CD955D89593"/>
- </http>
+ </http>
+
+
+ <authentication-manager alias='authenticationManagerAlias'/>
+ <beans:bean id = "openIDAuthProvider" class="org.springframework.security.providers.openid.OpenIDAuthenticationProvider">
+ <custom-authentication-provider/>
+ <beans:property name="userDetailsService" ref="rollerUserService"/>
+ </beans:bean>
+
+ <beans:bean id="openidAuthenticationProcessingFilter" class="org.apache.roller.weblogger.ui.core.filters.CustomOpenIDAuthenticationProcessingFilter">
+ <beans:property name="defaultTargetUrl" value="/roller-ui/menu.rol"/>
+ <beans:property name="filterProcessesUrl" value="/roller_j_openid_security_check"/>
+ <beans:property name="exceptionMappings">
+ <beans:props>
+ <beans:prop key="org.springframework.security.userdetails.UsernameNotFoundException">/roller-ui/register.rol
+ </beans:prop>
+ <beans:prop key="org.springframework.security.BadCredentialsException">/roller-ui/login.rol?error=true
+ </beans:prop>
+ <beans:prop key="org.springframework.security.AuthenticationException">/roller-ui/login.rol?error=true
+ </beans:prop>
+ </beans:props>
+ </beans:property>
+ <beans:property name="authenticationFailureUrl" value="/roller-ui/login.rol?error=true"/>
+ <beans:property name="authenticationManager" ref="authenticationManagerAlias"/>
+ <custom-filter position="OPENID_PROCESSING_FILTER"/>
+ </beans:bean>
+
<authentication-provider user-service-ref="rollerUserService"/>
+
<!-- Read users from Roller API -->
<beans:bean id="rollerUserService" class="org.apache.roller.weblogger.ui.core.security.RollerUserDetailsService"/>
+
<!-- It may be possible to get rid of the following two beans in a future version of Spring Security. -->
<!-- See http://jira.springframework.org/browse/SEC-840 for more information. -->
<beans:bean id="accessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
@@ -56,11 +88,10 @@
</beans:list>
</beans:property>
</beans:bean>
-
<beans:bean id="roleVoter" class="org.springframework.security.vote.RoleVoter">
<beans:property name="rolePrefix" value=""/>
</beans:bean>
-
+
<!-- TODO MR: Modify LDAP and CAS Configuration for Spring Security 2.0.x -->
<!-- ===================== LDAP AUTHENTICATION ==================== -->
@@ -70,14 +101,14 @@
<property name="managerDn" value="LDAP_USERNAME"/>
<property name="managerPassword" value="LDAP_PASSWORD"/>
</bean>
-
+
<bean id="ldapUserSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
<constructor-arg index="0" value=""/>
<constructor-arg index="1" value="uid={0}"/>
<constructor-arg index="2" ref="initialDirContextFactory"/>
<property name="searchSubtree" value="true"/>
</bean>
-
+
<bean id="ldapAuthProvider" class="org.springframework.security.providers.ldap.LdapAuthenticationProvider">
<constructor-arg>
<bean class="org.springframework.security.providers.ldap.authenticator.BindAuthenticator">
@@ -88,13 +119,13 @@
<constructor-arg ref="jdbcAuthoritiesPopulator"/>
<property name="userCache" ref="userCache"/>
</bean>
-
+
<bean id="jdbcAuthoritiesPopulator" class="org.apache.roller.weblogger.ui.core.security.AuthoritiesPopulator">
<property name="defaultRole" value="register"/>
</bean>
- -->
+ -->
<!-- END Sample LDAP/RollerDB hybrid security configuration -->
-
+
<!-- ======================== CENTRAL AUTHENTICATION SERVICE (CAS) ======================= -->
<!-- BEGIN: Sample CAS/RollerDB hybrid security configuration
<bean id="casProcessingFilter" class="org.springframework.security.ui.cas.CasProcessingFilter">
@@ -103,7 +134,7 @@
<property name="defaultTargetUrl" value="/"/>
<property name="filterProcessesUrl" value="/roller_j_security_check"/>
</bean>
-
+
<bean id="casProcessingFilterEntryPoint" class="org.springframework.security.ui.cas.CasProcessingFilterEntryPoint">
<property name="loginUrl" value="https://localhost:8443/cas/login"/>
<property name="serviceProperties" ref="serviceProperties"/>
@@ -120,7 +151,7 @@
<property name="statelessTicketCache" ref="statelessTicketCache"/>
<property name="key" value="rollerlovesacegi"/>
</bean>
-
+
<bean id="casProxyTicketValidator" class="org.springframework.security.providers.cas.ticketvalidator.CasProxyTicketValidator">
<property name="casValidate" value="https://localhost:8443/cas/proxyValidate"/>
<property name="proxyCallbackUrl" value="http://localhost:8080/roller/casProxy/receptor"/>
Modified: roller/trunk/apps/weblogger/web/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/WEB-INF/web.xml?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/WEB-INF/web.xml (original)
+++ roller/trunk/apps/weblogger/web/WEB-INF/web.xml Sun Sep 14 19:49:10 2008
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-
+
<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
@@ -116,7 +116,7 @@
<url-pattern>/roller-ui/rendering/trackback/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
-
+
<!-- Scheme enforcement. Only here until we get Acegi scheme enforcement working -->
<filter-mapping>
<filter-name>SchemeEnforcementFilter</filter-name>
@@ -189,7 +189,7 @@
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
-
+
<!-- Context Listeners -->
<listener>
@@ -334,7 +334,7 @@
</init-param>
</servlet>
-
+
<!-- Rendering Servlets -->
<servlet-mapping>
<servlet-name>PageServlet</servlet-name>
Added: roller/trunk/apps/weblogger/web/images/openid-logo-small.gif
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/images/openid-logo-small.gif?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/apps/weblogger/web/images/openid-logo-small.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: roller/trunk/apps/weblogger/web/roller-ui/styles/roller.css
URL: http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/web/roller-ui/styles/roller.css?rev=695329&r1=695328&r2=695329&view=diff
==============================================================================
--- roller/trunk/apps/weblogger/web/roller-ui/styles/roller.css (original)
+++ roller/trunk/apps/weblogger/web/roller-ui/styles/roller.css Sun Sep 14 19:49:10 2008
@@ -261,6 +261,16 @@
padding: 8px 0px 10px 0px;
}
+input#f_openid_identifier {
+ background: url(../../images/openid-logo-small.gif) no-repeat scroll 0 50%;
+ padding-left:18px;
+}
+
+input.f_openid_identifier {
+ background: url(../../images/openid-logo-small.gif) no-repeat scroll 0 50%;
+ padding-left:18px;
+}
+
/* ----------------------------------------------------------------------
Table styles
---------------------------------------------------------------------- */
Added: roller/trunk/tools/spring-2.5/apache-xml-security.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/apache-xml-security.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/apache-xml-security.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/dom3-xercesImpl.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/dom3-xercesImpl.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/dom3-xercesImpl.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/dom3-xml-apis.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/dom3-xml-apis.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/dom3-xml-apis.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/ehcache-1.4.1.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/ehcache-1.4.1.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/ehcache-1.4.1.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/java-openid-sxip.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/java-openid-sxip.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/java-openid-sxip.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/nekohtml.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/nekohtml.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/nekohtml.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/openxri-client.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/openxri-client.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/openxri-client.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/openxri-syntax.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/openxri-syntax.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/openxri-syntax.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/spring-security-acl-2.0.3.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/spring-security-acl-2.0.3.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/spring-security-acl-2.0.3.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/spring-security-core-2.0.3.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/spring-security-core-2.0.3.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/spring-security-core-2.0.3.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/spring-security-openid-2.0.3.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/spring-security-openid-2.0.3.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/spring-security-openid-2.0.3.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: roller/trunk/tools/spring-2.5/spring-security-taglibs-2.0.3.jar
URL: http://svn.apache.org/viewvc/roller/trunk/tools/spring-2.5/spring-security-taglibs-2.0.3.jar?rev=695329&view=auto
==============================================================================
Binary file - no diff available.
Propchange: roller/trunk/tools/spring-2.5/spring-security-taglibs-2.0.3.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream