The id application generates the authorization code and then it is redirected to the client application. Where the code is used to generate access token and refresh token and other claims.
You can read more about authorization code flow here :
https://documentation.openiddict.com/guides/choosing-the-right-flow.html#authorization-code-flow-recommended-for-new-applicationson angular:
https://www.npmjs.com/package/angular-oauth2-oidchttps://github.com/abpframework/abp/blob/dev/npm/ng-packs/packages/oauth/src/lib/strategies/auth-flow-strategy.ts https://github.com/abpframework/abp/blob/dev/npm/ng-packs/packages/oauth/src/lib/strategies/auth-code-flow-strategy.ts#L35
The session details will be available on the client application after the user login. Please refer the attached screenshot where you can find the token details, after user login in my localhost. FYI,
You can read more about the abp claims in: https://docs.abp.io/en/abp/latest/Authorization#claims-principal-factory For getting the current user details on backend: https://docs.abp.io/en/abp/latest/CurrentUser The current user claims details: https://docs.abp.io/en/abp/latest/CurrentUser#icurrentprincipalaccessor
Hi,
We have update our answer with more information please do check again.
The id application generates the authorization code and then it is redirected to the client application. Where the code is used to generate access token and refresh token and other claims.
You can read more about authorization code flow here : https://documentation.openiddict.com/guides/choosing-the-right-flow.html#authorization-code-flow-recommended-for-new-applications
on angular: https://www.npmjs.com/package/angular-oauth2-oidc
https://github.com/abpframework/abp/blob/dev/npm/ng-packs/packages/oauth/src/lib/strategies/auth-flow-strategy.ts https://github.com/abpframework/abp/blob/dev/npm/ng-packs/packages/oauth/src/lib/strategies/auth-code-flow-strategy.ts#L35
The session details will be available on the client application after the user login. Please refer the attached screenshot where you can find the token details, after user login in my localhost. FYI, You can read more about the abp claims in: https://docs.abp.io/en/abp/latest/Authorization#claims-principal-factory For getting the current user details on backend: https://docs.abp.io/en/abp/latest/CurrentUser The current user claims details: https://docs.abp.io/en/abp/latest/CurrentUser#icurrentprincipalaccessor
Hello @phil@travelengine.com.au,
by default, the "TagViewComponent" widget comes with CMS Kit (namespace Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Tags) and you can use it directly within your application. And the implementation for Blazor (Server/WASM) and MVC is mostly similar.
However, if you wish to implement it, I hope the following code would be useful.
[Widget(
StyleFiles = new[]
{
"/Pages/CmsKit/Shared/Components/Tags/default.css" // or the path that you want to use
})]
public class TagViewComponent : AbpViewComponent
{
protected readonly ITagAppService TagAppService;
public TagViewComponent(ITagAppService tagAppService)
{
TagAppService = tagAppService;
}
public virtual async Task<IViewComponentResult> InvokeAsync(
string entityType,
string entityId,
string urlFormat)
{
var tagDtos = await TagAppService.GetAllRelatedTagsAsync(entityType, entityId);
var viewModel = new TagViewModel
{
EntityId = entityId,
EntityType = entityType,
Tags = tagDtos,
UrlFormat = urlFormat
};
return View("~/Pages/CmsKit/Shared/Components/Tags/Default.cshtml", viewModel);
}
public class TagViewModel
{
public List<TagDto> Tags { get; set; }
public string EntityId { get; set; }
public string EntityType { get; set; }
public string UrlFormat { get; set; }
}
}
[Serializable]
public class TagDto : ExtensibleEntityDto<Guid>, IHasConcurrencyStamp
{
public string EntityType { get; set; }
public string Name { get; set; }
public string ConcurrencyStamp { get; set; }
}
Please let me know if this is what you are looking for.
Hi,
could you please refer this https://support.abp.io/QA/Questions/245/ABP-LIC-0008---License-check-failed-for-'XXXXX' https://support.abp.io/QA/Questions/69/ These are similar kind of issues
Hi,
abp.io uses claims-based authentication and authorization. please read more here https://learn.microsoft.com/en-us/aspnet/core/security/authentication/?view=aspnetcore-7.0#authentication-concepts you can find the code which works with asp.net core https://github.com/abpframework/abp/blob/dev/framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/AuthorizationInterceptor.cs https://github.com/abpframework/abp/blob/dev/modules/account/src/Volo.Abp.Account.Web/Pages/Account/Login.cshtml.cs
Just FYI, ABP itself doesn't directly provide a "Session Management" module as a standalone feature, it's likely that it leverages the session management capabilities provided by the underlying ASP.NET Core framework.
Please check similar ticket for reference https://support.abp.io/QA/Questions/2234/How-to-maintain-session-information-in-ABP-framework
You may check this https://docs.abp.io/en/commercial/latest/modules/chat#configuration for chat module configuration.
Hi,
For time being you can add this code
export class AppComponent implements AfterViewInit{
ngAfterViewInit(): void {
const images = document.querySelectorAll('img');
images.forEach(image => {
const currentAlt = image.getAttribute('alt');
if (!currentAlt || currentAlt.trim() === '') {
image.setAttribute('alt', 'Image');
}
});
}
}
This issue will be fixed in the next release.