Compartir a través de


Establecer el permiso Ver para un grupo en Enlaces de servicio

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

De forma predeterminada, solo los administradores de proyectos tienen permisos de vista o edición . Para conceder estos permisos a otros usuarios directamente, puede usar la herramienta de línea de comandos o la API rest de seguridad .

Captura de pantalla que muestra la página ServiceHooks sin permisos.

El identificador del ServiceHooks espacio de nombres de seguridad se define en List Security Namespaces as (Enumerar espacios de nombres de seguridad) como cb594ebe-87dd-4fc9-ac2c-6a10a4c92046

Requisitos previos

Categoría Requisitos
Acceso al proyecto Miembro del proyecto.
Permisos - Miembro del grupo de Administradores de la colección de proyectos. Los propietarios de la organización son miembros automáticamente de este grupo.
- Token de acceso personal (PAT) para el perfil de Azure DevOps.
Herramientas CLI de Azure
1. Inicie sesión con az devops login.
2. Puede definir su organización como organización predeterminada. De lo contrario, defina --org "https://dev.azure.com/{organization}" para cada comando. az devops configure --defaults organization="https://dev.azure.com/{organization}"
3. Compruebe si puede ver la lista de permisos de su organización: az devops security permission namespace list --org "https://dev.azure.com/{organization}".

Leer la identidad del grupo y el token de permiso

  1. Busque el descriptor de identidad del grupo.

    > az devops security group list --project ac515e82-560c-4af8-845b-9f7f968d8e7b --output table
    
    Name                                             Descriptor
    -----------------------------------------------  --------------------------------------------------------------------------------------------------------------------------------------------------
    [TEAM FOUNDATION]\EntraServiceHooksRead          aadgp.Uy0xLTktMTU1MTM3NDI0NS0xMjA0NDAwOTY5LTI0MDI5ODY0MTMtMjE3OTQwODYxNi0zLTM5NTQxNzM3ODYtMTUyMTA4MTkyNS0yNTQwNTA4MjYzLTMzNDgxNjQxNjg
    

    Si desea filtrar por nombre de grupo, puede usar findstr o grep el comando depende del símbolo del sistema.

  2. Obtener el token de permiso.

    > az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table
    
    Token                                                   Effective Allow    Effective Deny
    ------------------------------------------------------  -----------------  ----------------
    PublisherSecurity                                       0                  0
    PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b  0                  0
    

Actualización del permiso de lectura para enlaces de servicio

  1. Lista de posibles permisos que puede definir para --allow-bit.

    • Ver suscripciones
    • Editar suscripción
    • Eliminación de suscripciones
    • Publicar eventos
    > az devops security permission namespace show --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046
    
    [
      {
        "actions": [
          {
            "bit": 1,
            "displayName": "View Subscriptions",
            "name": "ViewSubscriptions",
            "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046"
          },
          {
            "bit": 2,
            "displayName": "Edit Subscription",
            "name": "EditSubscriptions",
            "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046"
          },
          {
            "bit": 4,
            "displayName": "Delete Subscriptions",
            "name": "DeleteSubscriptions",
            "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046"
          },
          {
            "bit": 8,
            "displayName": "Publish Events",
            "name": "PublishEvents",
            "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046"
          }
        ],
        "dataspaceCategory": "Default",
        "displayName": "ServiceHooks",
        "elementLength": -1,
        "extensionType": null,
        "isRemotable": true,
        "name": "ServiceHooks",
        "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046",
        "readPermission": 1,
        "separatorValue": "/",
        "structureValue": 1,
        "systemBitMask": 0,
        "useTokenTranslator": true,
        "writePermission": 7
      }
    
  2. Establezca Ver acceso para el grupo. Ver suscripciones de ServiceHooks es igual a 1 para --allow-bit.

    > az devops security permission update --namespace-id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --token PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b --allow-bit 1
    
    [
      {
        "acesDictionary": {
          "Microsoft.TeamFoundation.Identity;S-1-9-1551374245-1204400969-2402986413-2179408616-3-3954173786-1521081925-2540508263-3348164168": {
            "allow": 1,
            "deny": 0,
            "descriptor": "Microsoft.TeamFoundation.Identity;S-1-9-1551374245-1204400969-2402986413-2179408616-3-3954173786-1521081925-2540508263-3348164168",
            "extendedInfo": {
              "effectiveAllow": 1
            },
            "resolvedPermissions": [
              {
                "bit": 1,
                "displayName": "View Subscriptions",
                "effectivePermission": "Allow",
                "name": "ViewSubscriptions"
              }
            ]
          }
        },
        "includeExtendedInfo": true,
        "inheritPermissions": true,
        "token": "PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b"
      }
    ]
    
  3. Obtenga el token de permiso para ver los cambios.

    > az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table
    
    Token                                                   Effective Allow    Effective Deny
    ------------------------------------------------------  -----------------  ----------------
    PublisherSecurity                                       0                  0
    PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b  1                  0
    

En el ejemplo siguiente se muestra que el usuario puede ver las suscripciones de enlaces de servicio.

Captura de pantalla que muestra la página ServiceHooks con permiso.

Restablecer todos los permisos de enlaces de servicio de un grupo

  • Si necesita restablecer todos los permisos de Service Hooks de un grupo o usuario, puede llamar a reset-all.

    > az devops security permission reset-all --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --token PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b
    
    Are you sure you want to reset all explicit permissions for this user/group and token? (y/n): Y
    true
    
    > az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table
    Token                                                   Effective Allow    Effective Deny
    ------------------------------------------------------  -----------------  ----------------
    PublisherSecurity                                       0                  0
    PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b  0                  0
    
  • En el ejemplo siguiente se muestra que el usuario no puede ver las suscripciones de enlaces de servicio después de que se restablezca el permiso.

    Captura de pantalla que muestra la página ServiceHooks sin permiso.