Fixes #20476: Prohibit changing a token's owner (#20576)

This commit is contained in:
Jeremy Stretch
2025-10-14 14:12:15 -04:00
committed by GitHub
parent 37a9d03348
commit b7cc4c418b
3 changed files with 42 additions and 3 deletions

View File

@@ -37,6 +37,15 @@ class TokenSerializer(ValidatedModelSerializer):
read_only_fields = ('key',)
brief_fields = ('id', 'url', 'display', 'version', 'key', 'write_enabled', 'description')
def get_fields(self):
fields = super().get_fields()
# Make user field read-only if updating an existing Token.
if self.instance is not None:
fields['user'].read_only = True
return fields
def validate(self, data):
# If the Token is being created on behalf of another user, enforce the grant_token permission.