hi
What is your current design?
HI @agilmore
You can check this demo. https://github.com/abpframework/abp-samples/tree/master/DomainTenantResolver
https://github.com/abpframework/abp-samples/blob/master/DomainTenantResolver/MVC-TIERED/src/Acme.BookStore.IdentityServer/BookStoreIdentityServerModule.cs#L55-L61
Is it possible to retrieve the Bearer Access token? Or is it not possible due to security requirements.
Can you show a case?
Add MyHttpContextIdentityModelRemoteServiceHttpClientAuthenticator to your blazor app.
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authentication;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Http.Client.IdentityModel.Web;
using Volo.Abp.IdentityModel;
namespace BlazorServerSignalRTest.Blazor;
[Dependency(ReplaceServices = true)]
public class MyHttpContextIdentityModelRemoteServiceHttpClientAuthenticator : HttpContextIdentityModelRemoteServiceHttpClientAuthenticator
{
public MyHttpContextIdentityModelRemoteServiceHttpClientAuthenticator(IIdentityModelAuthenticationService identityModelAuthenticationService)
: base(identityModelAuthenticationService)
{
}
protected override async Task<string> GetAccessTokenFromHttpContextOrNullAsync()
{
var httpContext = HttpContextAccessor?.HttpContext;
if (httpContext == null)
{
return null;
}
var token = await httpContext.GetTokenAsync("access_token");
if (token == null)
{
var authenticateResult = await httpContext.AuthenticateAsync("Cookies");
if (authenticateResult.Succeeded)
{
token = authenticateResult.Properties.GetTokenValue("access_token");
}
}
return token;
}
}
Our Angular team will get back to you.
hi
You should be able to compile DbMigrator in CI/CD and replace the connection string etc, and finally run it.
Problem is we can't use the IFileForm in our ApplicationService
hi
Use IRemoteStreamContent in app service.
https://docs.abp.io/en/abp/latest/Application-Services#working-with-streams
Please try to override the SaveFileDescriptorAsync of Volo.FileManagement.Files.FileManager service
protected override async Task<FileDescriptor> SaveFileDescriptorAsync(string name, string mimeType, int contentLength, Guid? directoryId, Guid? tenantId, bool overrideExisting, ExtensibleObject extensibleObject = null)
{
var fileDescriptor = await FileDescriptorRepository.FindAsync(name, directoryId);
if (fileDescriptor != null)
{
if (!overrideExisting)
{
throw new FileAlreadyExistException(name);
}
fileDescriptor.Size = contentLength;
extensibleObject?.MapExtraPropertiesTo(fileDescriptor);
await FileDescriptorRepository.UpdateAsync(fileDescriptor);
}
else
{
fileDescriptor =
new FileDescriptor(GuidGenerator.Create(), name, mimeType, directoryId, contentLength, tenantId);
extensibleObject?.MapExtraPropertiesTo(fileDescriptor);
await FileDescriptorRepository.InsertAsync(fileDescriptor);
}
return fileDescriptor;
}
hi
I will check this.
You need to check the source code of Saas module.
https://docs.abp.io/en/commercial/latest/modules/saas