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 .
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
Instale la CLI de Azure para ejecutar el
az devops
comando . Instalación de la CLI de AzureCree un token de acceso personal (PAT) para el perfil de Azure DevOps. Asegúrese de que es miembro del grupo Administrador de colecciones de proyectos (PCA).
- Identidad (lectura)
- Gráfico (lectura)
- Seguridad (administrar)
Inicie sesión en Azure DevOps con
az devops login
. Si no tiene laaz devops
extensión, instálela.> az devops login The command requires the extension azure-devops. Do you want to install it now? The command will continue to run after the extension is installed. (Y/n): Y
Puede definir la 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}"
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
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
ogrep
el comando depende del símbolo del sistema.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
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 }
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" } ]
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.
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.