Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FEATURE: Decode Active Directory server GUIDs #33

Closed
gwythan opened this issue Feb 2, 2023 · 5 comments · Fixed by #60
Closed

FEATURE: Decode Active Directory server GUIDs #33

gwythan opened this issue Feb 2, 2023 · 5 comments · Fixed by #60

Comments

@gwythan
Copy link

gwythan commented Feb 2, 2023

Hi,
Great to find this extension.

One feature request I have is to translate Active Directory GUIDs and ObjectSIDs from their native binary to their UUID4 text equivalent. This would make working with the information much more useful.

Thank you!
Screenshot 2023-02-02 at 11 54 54

@fengtan
Copy link
Owner

fengtan commented Feb 8, 2023

Thanks for the suggestion @gwythan ! That certainly sounds worthy.

I had a look at what other tools do:

  • jXplorer displays binary values
  • ldapsearch displays human-readable values, with a double colon that follows the LDIF format
  • Apache Directory Studio displays human-readable values, with (afaict) no indication that the value was originally a binary

It might be good to show an indicator that the value was sent in binary format, that being said that may be tricky to implement as VS Code's grid component does not seem to support things like tooltips or alternative colours.

@fengtan
Copy link
Owner

fengtan commented Sep 30, 2023

microsoft/vscode-webview-ui-toolkit#484 will bring the option to show an indicator.

@petarov
Copy link
Contributor

petarov commented Nov 18, 2024

Hi, I'm also in favor of this feature.

It's common for objectGUID and objectSid to be converted to human-readable values. objectGUID is also shown as string instead of binary value on Microsoft Entra.

Converting objectGUID is relatively straightforward, it's an UUID value. The objectSid is a bit more challenging, i.e. https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-identifiers

Just an idea: Perhaps this could be a settings flag (convert objectGUID/objectSid to string: true/false)?

@fengtan fengtan linked a pull request Nov 29, 2024 that will close this issue
@fengtan
Copy link
Owner

fengtan commented Nov 29, 2024

Thanks for bringing this up!

I gave it a try in #60 based on ldapjs/node-ldapjs#481 (comment) however the decoded values generated by this implementation are slightly different from what Apache Directory Studio shows so I am guessing the algorithm needs some refinement...

I also tried implementations from ldapjs/node-ldapjs#297 (comment) and ldapjs/node-ldapjs#850 (comment) with no luck.

@fengtan
Copy link
Owner

fengtan commented Jan 5, 2025

Merged #60, released as part of 1.4.0, and published to Marketplace.

This will decode objectGUID as a UUID, and render the following other binary attributes as base64 strings:

  • caCertificate
  • jpegPhoto
  • krbExtraData
  • msExchArchiveGUID
  • msExchBlockedSendersHash
  • msExchMailboxGuid
  • msExchSafeSendersHash
  • networkAddress
  • objectSid
  • userCertificate
  • userSMIMECertificate

Let's open separate issues if there is a need to decode the above attributes as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants