Activities of "dshapiro"

Gotcha! Thanks for your help on this!

Thank you. The example you provided got me what I needed. I removed the tenancy check (since we're not using multi-tenancy in our application) and ended up with this revised version (below).

A couple things I need:

  1. The shared file and screenshot contain client-identifying information (namespaces in code, name in screenshot) and I ask you to please edit your post and remove those.
  2. Can you help me understand why this edit is necessary? Since this is an override, I would expect the base class to already handle this.
protected override async Task TrySetEmailAsync()
    {
        if (IsExternalLogin)
        {
            var externalLoginInfo = await SignInManager.GetExternalLoginInfoAsync();
            if (externalLoginInfo == null)
            {
                return;
            }

            if (!externalLoginInfo.Principal.Identities.Any())
            {
                return;
            }

            var identity = externalLoginInfo.Principal.Identities.First();
            var emailClaim = identity.FindFirst(AbpClaimTypes.Email) ?? identity.FindFirst(ClaimTypes.Email);
            var givenNameClaim = identity.FindFirst(AbpClaimTypes.Name) ?? identity.FindFirst(ClaimTypes.GivenName);
            var surnameClaim = identity.FindFirst(AbpClaimTypes.SurName) ?? identity.FindFirst(ClaimTypes.Surname);

            if (emailClaim == null)
            {
                return;
            }

            var userName = await UserManager.GetUserNameFromEmailAsync(emailClaim.Value);
            Input = new PostInput
            {
                EmailAddress = emailClaim.Value,
                FirstName = givenNameClaim?.Value ?? "",
                LastName = surnameClaim?.Value ?? "",
            };
        }
    }

The access token and claims are present, but I see you have commented out mappings (MapJsonKey) which aren't present in my code. Is that what I'm missing? I don't see it mentioned in the documentation.

Could not find details on what is the expected behaviour for ABP.IO out of the box.

We have setup Google as an external provider. In our Google Cloud we've created an OAuth Consent Screen service & client with available scopes:

/auth/userinfo.email /auth/userinfo.profile openid

During our testing of this feature, when we click the "Google" button on the registration/login screen, the user experiences:

  1. Redirect to Google consent screen
  2. After approval, redirect back to ABP application's registration page
  3. Name fields and email address are blank

Should these fields be pre-populated from the external provider or is this not implemented by ABP?

For authentication we should define a new OpenID application within ABP and configure Elsa Studio to authenticate via OIDC? Or perhaps there's a simpler way to accomplish this as Elsa Server is hosted within the ABP project, so should have direct access to the Identity provider.

Thanks, I did find this but I wasn't sure if it was completely compatible with my solution as I use the Angular frontend and a *.HttpApi.Host project instead of an MVC Web project. This article also doesn't cover how to expose Elsa Studio (other than to use docker which seems unnecessary for this) and to use ABP's users and permissions within Elsa Studio.

I've followed the instructions for creating an Elsa 3 server and added this to a new Domain-level project (*.Domain.Workflows) within my ABP Solution. I've got *.Domain.Workflows referencing *.Domain (project reference and module added to DependsOn) and *.Application references *.Domain.Workflows (project reference and module added to DependsOn). While debugging I can see that the initialization logic is being executed in my new module, however the endpoint where the Elsa API should be exposed is not responding (404). It's not clear to me if ABP's configuration is somehow interfering or not.

Hoping I can get some guidance on this?

That's really strange. To the best of my awareness I didn't delete any upgrades (except for empty ones), but you're right: I don't see a way for this situation to happen otherwise.

Thanks for your help on figuring this one out!

I've resent it.

Already sent on Friday. Please confirm receipt or provide update on findings.

Showing 1 to 10 of 26 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.1.0-preview. Updated on October 13, 2025, 08:48