Skip to content

Commit c4288d9

Browse files
Fix validated write check docs
1 parent 569e597 commit c4288d9

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

keycredential.go

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -291,15 +291,18 @@ func (kcl *KeyCredentialLink) validate(strict bool) error {
291291
return joinErrorsWithComma(validationErrors...)
292292
}
293293

294-
// CheckValidatedWriteCompatible checks whether the KeyCredentialLink conforms
295-
// to the rules defined in section 3.1.1.5.3.1.1.6 of the Active Directory
296-
// Technical Specification (MS-ADTS) that have to be followed when modifying the
297-
// msDS-KeyCredentialLink attribute with RIGHT_DS_WRITE_PROPERTY_EXTENDED
298-
// permissions instead of RIGHT_DS_WRITE_PROPERTY as is the case for computer
299-
// accounts modifying their own KeyCredentialLinks
294+
// CheckValidatedWriteCompatible checks whether the KeyCredentialLink is
295+
// configured to be written to msDS-KeyCredentialLink attribute with
296+
// RIGHT_DS_WRITE_PROPERTY_EXTENDED permissions instead of
297+
// RIGHT_DS_WRITE_PROPERTY as is the case for computer accounts modifying their
298+
// own KeyCredentialLinks.
299+
//
300+
// In theory, it has to conform to the rules defined in section 3.1.1.5.3.1.1.6
301+
// of the Active Directory Technical Specification (MS-ADTS)
300302
// (https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/f70afbcc-780e-4d91-850c-cfadce5bb15c).
301-
// Note that Microsoft currently does not actually enforce most of these rules
302-
// (as of 2024).
303+
// However, the rules of Microsoft's actual implementation are in direct
304+
// violation of the specs. This method returns true if the actual implementation
305+
// would accept the KeyCredentialLink.
303306
func (kcl *KeyCredentialLink) CheckValidatedWriteCompatible() error {
304307
err := kcl.Validate()
305308
if err != nil {

0 commit comments

Comments
 (0)