Hi @vincent.goh, after you've created the microservice startup template you can delete the example product service (and related parts with that) and add a new service by following this document.
Hi @jtalion, there is not any preview version that you can use for that feature for now. As @Albert mentioned, it will be added with next version(v5.0-preview). And the planned release date is November 18 for v5.0.
Hi, Thanks for your reply. However, this approach is not feasible for our requirement. What we need is -
A report with list of users present in the system with last login date and time. The management needs such kind of report on a need basis. Is there a way query this information and provide it for all the users in the system.
When I try to filter security logs by action as Logout, I don't see any results. Looks like the Logout action is not captured in Audit logs.
Hi @Repunjay,
1-) There is not any build-in way to get list of users with last login date and time. You need to implement it by yourself. You can use IIdentitySecurityLogRepository
. (You need to query AbpSecurityLogs
table of your database by your needs.)
2-) Actually Logout action is captured. You can view it from Security Logs page. By the way, Audit logs and Security logs are two different things.
You're welcome @Marten, thanks for your clear explanation.
Can you check, you've defined the middleware after the authentication and authorization middlewares?
Important:
UseHangfireDashboard
should be called after the authentication middleware in yourStartup
class (probably at the last line). Otherwise, authorization will always fail! => https://github.com/abpframework/abp/pull/9704/files#diff-6d147525b770cf239abbea8f3f835e87ddc637c8b8ec045b8ec85361be3662fd
Hi @Marten, with v5.0 Hangfire dashboard permission will be added to the framework. In meantime, you can examine the pull request to implement this feature.
Hi @Shoba24, you can simply use window.location.href
or window.location.replace("your-url")
and if you want to pass a parameter to that page, use data parameter of the action function.
action: function(data) {
//...
window.location.href = "/product/ + data.record.product.id;
}
P/S : I have actually submitted a similar support ticket for this issue, however I hit an error when submitting. The ticket was still created but not accessible due to error. https://support.abp.io/QA/Questions/1763/The-property-%27AppUserExtraProperties%27-could-not-be-mapped-because-it-is-of-type-%27ExtraPropertyDictionary%27-which-is-not-a-supported-primitive-type-or-a-valid-entity-type-Either-explicitly-map-this-property-or-ignore-it-using-the-%27NotMapped%27-attribute
Hi @riz1992, thanks for reporting the problem in the page. The question is removed and your credit has been refunded for that question.
You're welcome. You should not use the IMarkdownToHtmlRenderer
interface from web layer because it's defined in public-web and it's registration in there. But if you want to use it anyway, you need to add [DependsOn(typeof(YourWebPublicModule))]
above of your web module class.
[DependsOn(
...
typeof(CmsKitProAdminWebModule),
typeof(AbpSwashbuckleModule),
typeof(AbpAspNetCoreSerilogModule),
typeof(YourWebPublicModule) //add this line
)]
public class YourWebModule : AbpModule
{
...
}
Hi @repunjay, you can find the users login date and time by checking the Action (LoginSucceded) field of the Security Logs page.
You can use
IIdentitySecurityLogRepository
to list it in your application service.
Also you can use the IIdentitySecurityLogRepository
to get your inactive (dormant) users in specified time-range. (Maybe you can get the logged out users (by specifying the action as Logout) and check the user logged in 'x' days)