Discussion
Loading...

Post

Log in
  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Hacker News
Hacker News
@h4ckernews@mastodon.social  ·  activity timestamp 3 months ago

Normalize Identifying Corporate Devices in Your Software

https://lgug2z.com/articles/normalize-identifying-corporate-devices-in-your-software/

#HackerNews #NormalizeIdentifyingCorporateDevices #CorporateSoftware #TechSecurity #DeviceManagement #SoftwareDevelopment

LGUG2Z

Normalize Identifying Corporate Devices in Your Software

If you dual-license your software in such a way that it requires a paid license for commercial use, here are two code blobs for you. macOS pub fn mdm_enrollment() -> eyre::Result<(bool, Option)> { let mut command = Command::new("/usr/bin/profiles"); command.args(["status", "-type", "enrollment"]); let stdout = command.output()?.stdout; let output = std::str::from_utf8(&stdout)?; if output.contains("MDM enrollment: No") { return Ok((false, None)); } let mut server = None; for line in output.lines() { if line.starts_with("MDM server") { server = Some(line.trim_start_matches("MDM server: ").to_string()) } } Ok((true, server)) } Windows pub fn mdm_enrollment() -> eyre::Result<(bool, Option)> { let mut command = Command::new("dsregcmd"); command.args(["/status"]); let stdout = command.output()?.stdout; let output = std::str::from_utf8(&stdout)?; if !output.contains("MdmUrl") { return Ok((false, None)); } let mut server = None; for line in output.lines() { if line.contains("MdmUrl") { let line = line.trim().to_string(); server = Some(line.trim_start_matches("MdmUrl : ").to_string()) } } Ok((true, server)) } Looking at mobile device management (MDM) enrollment is not a silver bullet for identifying corporate devices running your software, but it is a good start.
⁂
More from
Jeezy
  • Copy link
  • Flag this post
  • Block

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.2-alpha.7 no JS en
Automatic federation enabled
Log in
  • Explore
  • About
  • Members
  • Code of Conduct