Index: plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseAction.java
===================================================================
--- plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseAction.java	(revision 23383)
+++ plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseAction.java	(working copy)
@@ -135,6 +135,9 @@
 		final boolean appendHudsonBuildNumber = httpParams.containsKey("appendHudsonBuildNumber"); //$NON-NLS-1$
 		final boolean closeNexusStage = httpParams.containsKey("closeNexusStage"); //$NON-NLS-1$
 		final String repoDescription = closeNexusStage ? ((String[])httpParams.get("repoDescription"))[0] : ""; //$NON-NLS-1$
+		final boolean specifyScmCredentials = httpParams.containsKey("specifyScmCredentials"); //$NON-NLS-1$
+		final String scmUsername = specifyScmCredentials ? ((String[])httpParams.get("scmUsername"))[0] : ""; //$NON-NLS-1$
+		final String scmPassword = specifyScmCredentials ? ((String[])httpParams.get("scmPassword"))[0] : ""; //$NON-NLS-1$
 		
 		if (httpParams.containsKey("specifyVersions")) {
 			versions = new HashMap<String,String>();
@@ -154,6 +157,8 @@
 				m2Wrapper.setAppendHudsonBuildNumber(appendHudsonBuildNumber);
 				m2Wrapper.setCloseNexusStage(closeNexusStage);
 				m2Wrapper.setRepoDescription(repoDescription);
+				m2Wrapper.setScmUsername(scmUsername);
+				m2Wrapper.setScmPassword(scmPassword);
 			}
 		}
 		// redirect to status page
Index: plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseBuildWrapper.java
===================================================================
--- plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseBuildWrapper.java	(revision 23383)
+++ plugin/src/main/java/org/jvnet/hudson/plugins/m2release/M2ReleaseBuildWrapper.java	(working copy)
@@ -79,6 +79,8 @@
 	private transient Map<String, String> versions;
 	private transient boolean             appendHudsonBuildNumber;
 	private transient String              repoDescription;
+	private transient String              scmUsername;
+	private transient String              scmPassword;
 	
 	public String                         releaseGoals        = DescriptorImpl.DEFAULT_RELEASE_GOALS;
 	
@@ -111,20 +113,29 @@
 			mmSet = getModuleSet(build);
 			if (mmSet != null) {
 				originalGoals = mmSet.getGoals();
-				mmSet.setGoals(releaseGoals);
+				
+				String thisBuildGoals = releaseGoals;
 
 				if (versions != null) {
-					mmSet.setGoals(generateVersionString(build.getNumber()) + releaseGoals);
+					thisBuildGoals = generateVersionString(build.getNumber()) + thisBuildGoals;
 				}
-				else {
-					mmSet.setGoals(releaseGoals);
+				
+				if (!scmUsername.equals("") ) {
+					thisBuildGoals = "-Dusername=" + scmUsername + " " + thisBuildGoals;
 				}
+				
+				if (!scmPassword.equals("") ) {
+					thisBuildGoals = "-Dpassword=" + scmPassword + " " + thisBuildGoals;
+				}
+				
+				mmSet.setGoals(thisBuildGoals);
 			}
 			else {
 				// can this be so?
 				originalGoals = null;
 			}
 			mavenOpts = mmSet.getMavenOpts();
+			
 		}
 		
 		return new Environment() {
@@ -212,8 +223,15 @@
 	public void setRepoDescription(String repoDescription) {
 		this.repoDescription = repoDescription;
 	}
+	
+	public void setScmUsername(String scmUsername) {
+		this.scmUsername = scmUsername;
+	}
+	
+	public void setScmPassword(String scmPassword) {
+		this.scmPassword = scmPassword;
+	}
 
-
 	private String generateVersionString(int buildNumber) {
 		// -Dproject.rel.org.mycompany.group.project=version ....
 		StringBuilder sb = new StringBuilder();
Index: plugin/src/main/resources/org/jvnet/hudson/plugins/m2release/M2ReleaseAction/index.jelly
===================================================================
--- plugin/src/main/resources/org/jvnet/hudson/plugins/m2release/M2ReleaseAction/index.jelly	(revision 23383)
+++ plugin/src/main/resources/org/jvnet/hudson/plugins/m2release/M2ReleaseAction/index.jelly	(working copy)
@@ -23,6 +23,14 @@
 								<f:checkbox name="appendHudsonBuildNumber" checked="false"/>
 							</f:entry>
 					</f:optionalBlock>
+					<f:optionalBlock name="specifyScmCredentials" title="Specify SCM login/password" checked="false">
+						<f:entry title="Username">
+							<f:textbox name="scmUsername" value="" />
+						</f:entry>
+						<f:entry title="Password">
+							<f:password name="scmPassword" value="" />
+						</f:entry>
+					</f:optionalBlock>
 					<j:if test="${it.nexusSupportEnabled}">
 						<f:section title="Nexus Pro Support">
 							<f:optionalBlock name="closeNexusStage" title="Close Nexus Staging Repository" checked="true">
@@ -41,6 +49,7 @@
 					<f:submit value="${%Schedule Maven Release Build}"/>
 					</td></tr>
 				</f:section>
+				
 			</f:form>