创建自定义Azure RBAC角色以允许用户交换portal.azure.com中的插槽

时间:2019-03-05 16:04:09

标签: azure azure-web-sites azure-rbac

我正在尝试为开发人员创建自定义角色,以允许他们简单地交换我们各种WebApp上的插槽。这是我为完成此任务而创建的角色:

INSERT PS_VNDR_BANK_ACCT (SETID, VENDOR_ID, VNDR_LOC, EFFDT, BANK_ACCT_SEQ_NBR, DESCR, DEFAULT_IND, BANK_ID_QUAL, BNK_ID_NBR, BRANCH_ID, BANK_ACCT_TYPE, CHECK_DIGIT, DFI_ID_QUAL, DFI_ID_NUM,
BENEFICIARY_BANK, BENEF_BRANCH_AC, BENEF_BRANCH, BENEF_BRANCH_AC, COUNTRY, ADDRESS1, ADDRESS2, ADDRESS3, ADDRESS4, CITY, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3, COUNTY,
STATE, POSTAL, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, PHONE, EXTENSION, FAX, IBAN_CHECK_DIGIT, IBAN_ID, BANK_ACCOUNT_NUM

  SELECT 'SHARE', VENDOR_ID, '000001', '2019-03-01 00:00:00.000', '1', '', 'Y', '001', '88885', '', '03', '', '01', B.BANK_CD, 'Test Bank', '', '','',
  'USA', '','','','','','','','','','','','','','','','','','','','','','', B.ACCOUNT_NUM
  FROM PS_VENDOR A
  INNER JOIN HRDEV01_FOR_BUDGET_MODULE.HRDEV92B.dbo.PS_DIR_DEP_DISTRIB B ON B.EMPLID = A.VNDR_FIELD_C30_B
  WHERE A.VNDR_FIELD_C30_B <> ''
  AND B.EFFDT = 
        (SELECT MAX(A_ED.EFFDT) FROM HRDEV01_FOR_BUDGET_MODULE.HRDEV92B.dbo.PS_DIR_DEP_DISTRIB A_ED 
        WHERE B.EMPLID = A_ED.EMPLID 
          AND A_ED.EFFDT <= SUBSTRING(CONVERT(CHAR,GETDATE(),121), 1, 10))

  AND B.PRIORITY = 
     (SELECT MIN(AA.PRIORITY) FROM HRDEV01_FOR_BUDGET_MODULE.HRDEV92B.dbo.PS_DIR_DEP_DISTRIB AA
      WHERE B.EMPLID = AA.EMPLID)

问题在于,一旦我将此角色应用于测试用户,当我转到交换插槽时,我的测试用户会在以下位置看到错误:“您没有交换权限”,“您没有写入权限”交换面板。

是否可以允许用户交换插槽而无需授予他们对WebApp的完全写入权限?我缺少什么权限?

1 个答案:

答案 0 :(得分:0)

虽然我不知道您需要什么确切权限,但根据错误文本,我将从将其添加到您已经拥有的权限开始:

Microsoft.Web/sites/slots/Write

这是插槽rbac动作的完整列表:

Microsoft.Web/sites/applySlotConfig/Action
Microsoft.Web/sites/resetSlotConfig/Action
microsoft.web/sites/slots/analyzecustomhostname/read
Microsoft.Web/sites/slots/applySlotConfig/Action
Microsoft.Web/sites/slots/backup/Action
microsoft.web/sites/slots/backup/read
microsoft.web/sites/slots/backup/write
microsoft.web/sites/slots/backups/action
microsoft.web/sites/slots/backups/delete
microsoft.web/sites/slots/backups/list/action
Microsoft.Web/sites/slots/backups/Read
microsoft.web/sites/slots/backups/restore/action
microsoft.web/sites/slots/config/delete
Microsoft.Web/sites/slots/config/list/Action
Microsoft.Web/sites/slots/config/Read
Microsoft.Web/sites/slots/config/Write
microsoft.web/sites/slots/containerlogs/action
microsoft.web/sites/slots/containerlogs/download/action
microsoft.web/sites/slots/continuouswebjobs/delete
microsoft.web/sites/slots/continuouswebjobs/read
microsoft.web/sites/slots/continuouswebjobs/start/action
microsoft.web/sites/slots/continuouswebjobs/stop/action
Microsoft.Web/sites/slots/Delete
microsoft.web/sites/slots/deployments/delete
microsoft.web/sites/slots/deployments/log/read
microsoft.web/sites/slots/deployments/read
microsoft.web/sites/slots/deployments/write
microsoft.web/sites/slots/detectors/read
microsoft.web/sites/slots/diagnostics/analyses/execute/Action
microsoft.web/sites/slots/diagnostics/analyses/read
microsoft.web/sites/slots/diagnostics/aspnetcore/read
microsoft.web/sites/slots/diagnostics/autoheal/read
microsoft.web/sites/slots/diagnostics/deployment/read
microsoft.web/sites/slots/diagnostics/deployments/read
microsoft.web/sites/slots/diagnostics/detectors/execute/Action
microsoft.web/sites/slots/diagnostics/detectors/read
microsoft.web/sites/slots/diagnostics/frebanalysis/read
microsoft.web/sites/slots/diagnostics/loganalyzer/read
microsoft.web/sites/slots/diagnostics/read
microsoft.web/sites/slots/diagnostics/runtimeavailability/read
microsoft.web/sites/slots/diagnostics/servicehealth/read
microsoft.web/sites/slots/diagnostics/sitecpuanalysis/read
microsoft.web/sites/slots/diagnostics/sitecrashes/read
microsoft.web/sites/slots/diagnostics/sitelatency/read
microsoft.web/sites/slots/diagnostics/sitememoryanalysis/read
microsoft.web/sites/slots/diagnostics/siterestartsettingupdate/read
microsoft.web/sites/slots/diagnostics/siterestartuserinitiated/read
microsoft.web/sites/slots/diagnostics/siteswap/read
microsoft.web/sites/slots/diagnostics/threadcount/read
microsoft.web/sites/slots/diagnostics/workeravailability/read
microsoft.web/sites/slots/diagnostics/workerprocessrecycle/read
microsoft.web/sites/slots/domainownershipidentifiers/read
microsoft.web/sites/slots/functions/listsecrets/action
microsoft.web/sites/slots/functions/read
microsoft.web/sites/slots/hostnamebindings/delete
microsoft.web/sites/slots/hostnamebindings/read
microsoft.web/sites/slots/hostnamebindings/write
microsoft.web/sites/slots/hybridconnection/delete
microsoft.web/sites/slots/hybridconnection/read
microsoft.web/sites/slots/hybridconnection/write
microsoft.web/sites/slots/hybridconnectionnamespaces/relays/delete
microsoft.web/sites/slots/hybridconnectionnamespaces/relays/write
microsoft.web/sites/slots/hybridconnectionrelays/read
microsoft.web/sites/slots/instances/deployments/read
microsoft.web/sites/slots/instances/processes/delete
microsoft.web/sites/slots/instances/processes/read
microsoft.web/sites/slots/instances/read
microsoft.web/sites/slots/metricdefinitions/read
microsoft.web/sites/slots/metrics/read
microsoft.web/sites/slots/migratemysql/read
microsoft.web/sites/slots/networktrace/action
microsoft.web/sites/slots/networktraces/operationresults/read
microsoft.web/sites/slots/newpassword/action
microsoft.web/sites/slots/operationresults/read
microsoft.web/sites/slots/operations/read
microsoft.web/sites/slots/perfcounters/read
microsoft.web/sites/slots/phplogging/read
microsoft.web/sites/slots/premieraddons/delete
microsoft.web/sites/slots/premieraddons/read
microsoft.web/sites/slots/premieraddons/write
microsoft.web/sites/slots/processes/read
microsoft.web/sites/slots/publiccertificates/delete
microsoft.web/sites/slots/publiccertificates/read
microsoft.web/sites/slots/publiccertificates/write
Microsoft.Web/sites/slots/publish/Action
Microsoft.Web/sites/slots/publishxml/Action
Microsoft.Web/sites/slots/Read
microsoft.web/sites/slots/recover/action
Microsoft.Web/sites/slots/resetSlotConfig/Action
microsoft.web/sites/slots/resourcehealthmetadata/read
Microsoft.Web/sites/slots/restart/Action
microsoft.web/sites/slots/restore/read
microsoft.web/sites/slots/restore/write
microsoft.web/sites/slots/restorefrombackupblob/action
microsoft.web/sites/slots/restorefromdeletedwebapp/action
microsoft.web/sites/slots/restoresnapshot/action
microsoft.web/sites/slots/siteextensions/delete
microsoft.web/sites/slots/siteextensions/read
microsoft.web/sites/slots/siteextensions/write
Microsoft.Web/sites/slots/slotsdiffs/Action
Microsoft.Web/sites/slots/slotsswap/Action
microsoft.web/sites/slots/snapshots/read
Microsoft.Web/sites/slots/sourcecontrols/Delete
Microsoft.Web/sites/slots/sourcecontrols/Read
Microsoft.Web/sites/slots/sourcecontrols/Write
Microsoft.Web/sites/slots/start/Action
Microsoft.Web/sites/slots/stop/Action
microsoft.web/sites/slots/sync/action
microsoft.web/sites/slots/triggeredwebjobs/delete
microsoft.web/sites/slots/triggeredwebjobs/read
microsoft.web/sites/slots/triggeredwebjobs/run/action
microsoft.web/sites/slots/usages/read
microsoft.web/sites/slots/virtualnetworkconnections/delete
microsoft.web/sites/slots/virtualnetworkconnections/gateways/write
microsoft.web/sites/slots/virtualnetworkconnections/read
microsoft.web/sites/slots/virtualnetworkconnections/write
microsoft.web/sites/slots/webjobs/read
Microsoft.Web/sites/slots/Write
Microsoft.Web/sites/slotsdiffs/Action
Microsoft.Web/sites/slotsswap/Action