silverhack / monkey365

Monkey365 provides a tool for security consultants to easily conduct not only Microsoft 365, but also Azure subscriptions and Microsoft Entra ID security configuration reviews.
https://silverhack.github.io/monkey365/
Apache License 2.0
852 stars 93 forks source link

Multi language Report #120

Open HoussemMak opened 3 weeks ago

HoussemMak commented 3 weeks ago

Is your feature request related to a problem? Please describe. I'm always frustrated when I generate reports in Monkey365 that are only available in a single language. This limitation makes it difficult for our diverse team, which speaks multiple languages, to fully understand and utilize the insights provided in these reports. We often need to share findings with stakeholders who are non-native speakers, leading to miscommunication and reduced efficiency.

Describe the solution you'd like I would like to see a feature that allows users to select their preferred language for exported reports. This would involve implementing a language selection option in the report generation settings, enabling users to choose from a list of supported languages before exporting the report. The content of the report should then be automatically translated based on the selected language, ensuring all stakeholders can comprehend the information presented. Describe alternatives you've considered As an alternative, I've considered manually translating reports after export, but this is time-consuming and prone to errors. Another option could be to use third-party translation tools; however, relying on external services may compromise the accuracy and consistency of the reports. Ideally, having integrated multi-language support within Monkey365 would streamline the process and maintain the integrity of the data presented.

Additional context Enabling multi-language support in exported reports would not only enhance user experience but also broaden the accessibility of the platform across various teams and stakeholders. This feature could significantly improve collaboration and communication, particularly in organizations with a multicultural workforce.

I will really appreciate if this will be integrated with the solution or maybe some guidance how to achieve it.

HoussemMak commented 2 weeks ago

I wanted to follow up on my previous request regarding adding multi-language to the reports generated in Monkey365 do you have any update

silverhack commented 2 weeks ago

Hi @HoussemMak,

I don't currently support custom translations in Monkey365 for several reasons, but this is certainly something you can work on if it's still valuable to you or your team. I'm not a native English speaker too and the first issue is finding the community support. A team of community members doing the translation and maintain it is a continuous work. Secondly, I don't have any knowledge on other languages, so I cannot measure the quality of translations. Please, note that this is an small project with an only one developer (me! :D). For every translation I would have to trust and to approve contributions without any idea.

Finally, the configuration baselines and best practices are written in English language. I'm not a translator so I can't really help much with the translation feature.

If you want to translate all rules and rulesets feel free to create a new repository with all rules and rulesets. Once translation is done, you can force Monkey365 to use the new rules using the following command:


$param = @{
    Instance = Microsoft365;
    Analysis = @("ExchangeOnline","MicrosoftTeams","SharePointOnline");
    IncludeEntraID = $true;
    ExportTo = @("CSV","JSON");
    RuleSet = "/home/user/newrules/rulesets/translatedCIS.json";
    RulesPath = "/home/user/newrules/";
}

Invoke-Monkey365 @param -Verbose -Debug -InformationAction Continue

Hope that helps. Cheers,