azure-devops-cli-extension icon indicating copy to clipboard operation
azure-devops-cli-extension copied to clipboard

Errors when working with DevOps permissions

Open jelleholtkamp opened this issue 2 years ago • 0 comments

When working with az devops security permissions, multiple commands generate the below error output. This happens with:

az devops security permission list --id $namespaceId --subject $subject az devops security permission reset-all --id $namespaceId --subject $subject --token $token

This happens when using a group descriptor (i'm using the group ID that starts with vssgp.) and a UPN. The token, subject and namespace ID seem to be correct because az devops security permission update does work with the same values.

This is autogenerated. Please review and update as needed.

Describe the bug

Command Name az devops security permission list Extension Name: azure-devops. Version: 0.25.0.

Errors:

The command failed with an unexpected error. Here is the traceback:
'NoneType' object has no attribute 'descriptor'
Traceback (most recent call last):
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 231, in invoke
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 658, in execute
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 721, in _run_jobs_serially
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 713, in _run_job
  File "C:\Users\jholtkamp\.azure\cliextensions\azure-devops\azext_devops\dev\common\exception_handler.py", line 31, in azure_devops_exception_handler
    reraise(*sys.exc_info())
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\six.py", line 703, in reraise
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 692, in _run_job
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 328, in __call__
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 121, in handler
  File "C:\Users\jholtkamp\.azure\cliextensions\azure-devops\azext_devops\dev\team\security_permission.py", line 45, in list_tokens
    subject = _resolve_subject_as_identity_descriptor(subject, organization)
  File "C:\Users\jholtkamp\.azure\cliextensions\azure-devops\azext_devops\dev\team\security_permission.py", line 198, in _resolve_subject_as_identity_descriptor
    subject = get_identity_descriptor_from_subject_descriptor(subject_descriptor=subject, organization=organization)
  File "C:\Users\jholtkamp\.azure\cliextensions\azure-devops\azext_devops\dev\common\identities.py", line 136, in get_identity_descriptor_from_subject_descriptor
    return identities[0].descriptor
AttributeError: 'NoneType' object has no attribute 'descriptor'

To Reproduce:

Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

  • Put any pre-requisite steps here...
  • az devops security permission list --id {namespaceId} --subject {subjectDescriptor}

Expected Behavior

Environment Summary

Windows-10-10.0.19041-SP0
Python 3.8.9
Installer: MSI

azure-cli 2.34.1 *

Extensions:
account 0.2.2
azure-devops 0.25.0

Dependencies:
msal 1.16.0
azure-mgmt-resource 20.0.0

Additional Context

jelleholtkamp avatar May 11 '22 13:05 jelleholtkamp