diff --git a/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java b/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java
index 911c792b9f3aca14f96b74f57758e96f28a9fae1..ade3b060882cc3f38a0d7cee4180cf79c807fdda 100644
--- a/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java
+++ b/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java
@@ -460,7 +460,7 @@ public class LTIRunController extends BasicController {
 		container.contextPut("width", width);
 		LTIContext context = new LTICourseNodeContext(courseEnv, courseNode, ltiRoles,
 				sourcedId, backMapperUri, outcomeMapperUri, custom, target, width, height);
-		Map<String,String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, sendname, sendmail);
+		Map<String,String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, sendname, sendmail, true);
 		Mapper contentMapper = new PostDataMapper(unsignedProps, url, oauth_consumer_key, oauth_secret, "true".equals(debug));
 
 		String mapperUri = registerMapper(ureq, contentMapper);
diff --git a/src/main/java/org/olat/course/nodes/card2brain/Card2BrainRunController.java b/src/main/java/org/olat/course/nodes/card2brain/Card2BrainRunController.java
index 8ec4ae1a004f9cc51f7ef01dec93371dea7be1da..cca982f6f9fdc2dab5344aec51f4c276e3bc16a0 100644
--- a/src/main/java/org/olat/course/nodes/card2brain/Card2BrainRunController.java
+++ b/src/main/java/org/olat/course/nodes/card2brain/Card2BrainRunController.java
@@ -84,7 +84,7 @@ public class Card2BrainRunController extends BasicController {
 
 		LTIContext context = new Card2BrainContext();
 		Map<String, String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, true,
-				true);
+				true, false);
 
 		Mapper contentMapper = new PostDataMapper(unsignedProps, url, oauth_consumer_key, oauth_secret, false);
 
diff --git a/src/main/java/org/olat/course/nodes/edubase/EdubaseViewerController.java b/src/main/java/org/olat/course/nodes/edubase/EdubaseViewerController.java
index 7a0ffe8f9b9300ae392a4ac0f321e5e828481f97..3ed615e1c24f9a898b5bbdb298df33d52cf81e84 100644
--- a/src/main/java/org/olat/course/nodes/edubase/EdubaseViewerController.java
+++ b/src/main/java/org/olat/course/nodes/edubase/EdubaseViewerController.java
@@ -90,7 +90,7 @@ public class EdubaseViewerController extends BasicController {
 
 		LTIContext context = new EdubaseContext(ureq.getUserSession().getIdentityEnvironment(), bookSection.getPageTo());
 		Map<String, String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, true,
-				true);
+				true, false);
 
 		Mapper contentMapper = new PostDataMapper(unsignedProps, launchUrl, baseUrl, oauthConsumerKey, oauthSecret, false);
 		String mapperUri = registerMapper(ureq, contentMapper);
diff --git a/src/main/java/org/olat/ims/lti/LTIManager.java b/src/main/java/org/olat/ims/lti/LTIManager.java
index e176cd307fcdb735158ac3822d1b978c7096a050..346bf3a0a4a989028daee09e0e037b807b132bce 100644
--- a/src/main/java/org/olat/ims/lti/LTIManager.java
+++ b/src/main/java/org/olat/ims/lti/LTIManager.java
@@ -38,7 +38,7 @@ public interface LTIManager {
 	public static final int EXPIRATION_TIME = 3600 * 24 * 30 * 6;//6 months
 
 	public Map<String,String> forgeLTIProperties(Identity identity, Locale locale,
-			LTIContext context, boolean sendName, boolean sendEmail);
+			LTIContext context, boolean sendName, boolean sendEmail, boolean ensureEmail);
 
 	public Map<String,String> sign(Map<String,String> props, String url, String oauthKey, String oauthSecret);
 
diff --git a/src/main/java/org/olat/ims/lti/manager/LTIManagerImpl.java b/src/main/java/org/olat/ims/lti/manager/LTIManagerImpl.java
index 052982905072c219ff7dc887bf9b1b60dd59722e..dc8263a0022487c8bea1699f40c4ca06de3ef478 100644
--- a/src/main/java/org/olat/ims/lti/manager/LTIManagerImpl.java
+++ b/src/main/java/org/olat/ims/lti/manager/LTIManagerImpl.java
@@ -163,13 +163,18 @@ public class LTIManagerImpl implements LTIManager {
 
 	@Override
 	public Map<String,String> forgeLTIProperties(Identity identity, Locale locale, LTIContext context,
-			boolean sendName, boolean sendEmail) {
+			boolean sendName, boolean sendEmail, boolean ensureEmail) {
 		final Locale loc = locale;
 		final Identity ident = identity;
 		final User u = ident.getUser();
 		final String lastName = u.getProperty(UserConstants.LASTNAME, loc);
 		final String firstName = u.getProperty(UserConstants.FIRSTNAME, loc);
-		final String email = userManager.getEnsuredEmail(u);
+		String email;
+		if (ensureEmail) {
+			email = userManager.getEnsuredEmail(u);
+		} else {
+			email = u.getProperty(UserConstants.EMAIL, loc);
+		}
 
 		Map<String,String> props = new HashMap<>();
 		setProperty(props, "resource_link_id", context.getResourceId());