서비스 후크에서 그룹에 대한 보기 권한 설정
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
기본적으로 프로젝트 관리자 만 보기 또는 편집 권한이 있습니다. 이러한 권한을 다른 사용자에게 직접 부여하려면 명령줄 도구 또는 보안 REST API를 사용할 수 있습니다.
ServiceHooks
보안 네임스페이스 ID는 목록 보안 네임스페이스 아래에 다음과 같이 정의됩니다.cb594ebe-87dd-4fc9-ac2c-6a10a4c92046
필수 조건
Azure CLI를 설치하여 명령을 실행
az devops
합니다. Azure CLI를 설치하는 방법Azure DevOps 프로필에 대한 PAT(개인용 액세스 토큰) 를 만듭니다. PCA(프로젝트 컬렉션 관리자) 그룹의 구성원인지 확인합니다.
- ID(읽기)
- 그래프(읽기)
- 보안(관리)
를 사용하여 Azure DevOps에 로그인합니다
az devops login
. 확장이az devops
없는 경우 설치합니다.> 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
조직을 기본 조직으로 정의할 수 있습니다. 그렇지 않으면 각 명령에 대해 정의
--org "https://dev.azure.com/{organization}"
합니다.az devops configure --defaults organization="https://dev.azure.com/{organization}"
조직에 대한 사용 권한 목록을 볼 수 있는지 확인합니다.
az devops security permission namespace list --org "https://dev.azure.com/{organization}"
그룹 ID 및 권한 토큰 읽기
그룹 ID 설명자를 찾습니다.
> az devops security group list --project ac515e82-560c-4af8-845b-9f7f968d8e7b --output table Name Descriptor ----------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------- [TEAM FOUNDATION]\EntraServiceHooksRead aadgp.Uy0xLTktMTU1MTM3NDI0NS0xMjA0NDAwOTY5LTI0MDI5ODY0MTMtMjE3OTQwODYxNi0zLTM5NTQxNzM3ODYtMTUyMTA4MTkyNS0yNTQwNTA4MjYzLTMzNDgxNjQxNjg
그룹 이름으로 필터링하려는 경우 명령 프롬프트에 따라 명령을 사용하거나
grep
명령을 사용할findstr
수 있습니다.권한 토큰을 가져옵니다.
> 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
서비스 후크에 대한 읽기 권한 업데이트
에 대해 정의할 수 있는 사용 권한 목록입니다
--allow-bit
.- 구독 보기
- 구독 편집
- 구독 삭제
- 이벤트 게시
> 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 }
그룹에 대한 보기 액세스를 설정합니다. View ServiceHooks Subscriptions equals equals 1 for
--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" } ]
변경 내용을 볼 수 있는 권한 토큰을 가져옵니다.
> 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
다음 예제에서는 사용자가 서비스 후크 구독을 볼 수 있음을 보여 줍니다.
그룹의 모든 서비스 후크 사용 권한 다시 설정
그룹 또는 사용자의 모든 서비스 후크 권한을 다시 설정해야 하는 경우 호출
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
다음 예제에서는 사용 권한이 다시 설정되면 사용자가 서비스 후크 구독을 볼 수 없다는 것을 보여 줍니다.