Web應用防火墻(Web Application Firewall,簡稱WAF)為了完成日志服務、資產識別、透明接入的功能,需要獲取其他云服務的訪問權限。所以,在您首次登錄WAF控制臺時,必須先授予WAF訪問相關云資源的權限,授權后才能正常使用WAF提供的其他云服務的功能。本文介紹了如何進行云資源訪問授權。
服務關聯角色說明
以下是WAF服務關聯角色的介紹:
角色名稱:AliyunServiceRoleForWAF
權限策略名稱:AliyunServiceRolePolicyForWAF
說明該權限策略為系統默認提供的策略,策略名稱和策略內容都不支持修改。
權限策略:
{ "Version": "1", "Statement": [ { "Action": [ "ecs:DescribeInstances", "ecs:DescribeNetworkInterfaces", "ecs:CreateNetworkInterface", "ecs:DeleteNetworkInterface", "ecs:AttachNetworkInterface", "ecs:DetachNetworkInterface", "ecs:DescribeNetworkInterfacePermissions", "ecs:CreateNetworkInterfacePermission", "ecs:DeleteNetworkInterfacePermission", "ecs:DescribeSecurityGroups", "ecs:DescribeSecurityGroupAttribute", "ecs:CreateSecurityGroup", "ecs:DeleteSecurityGroup", "ecs:AuthorizeSecurityGroup", "ecs:RevokeSecurityGroup", "ecs:DescribeDisks" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "slb:DescribeServerCertificates", "slb:DescribeDomainExtensions", "slb:DescribeLoadBalancers", "slb:DescribeListenerAccessControlAttribute", "slb:DescribeLoadBalancerAttribute", "slb:DescribeLoadBalancerHTTPListenerAttribute", "slb:DescribeLoadBalancerHTTPSListenerAttribute", "slb:DescribeLoadBalancerTCPListenerAttribute", "slb:DescribeLoadBalancerUDPListenerAttribute", "slb:DescribeTLSCipherPolicies", "slb:ListTLSCipherPolicies", "slb:DescribeLoadBalancers" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "alb:ListLoadBalancers", "alb:GetLoadBalancerAttribute", "alb:ListListeners", "alb:GetListenerAttribute", "alb:ListListenerCertificates", "alb:DescribeRegions", "alb:ListSystemSecurityPolicies", "alb:ListSecurityPolicies" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "vpc:DescribeEipAddresses" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "cdn:DescribeUserDomains", "cdn:DescribeCdnDomainDetail", "cdn:DescribeDomainsBySource", "cdn:DescribeUserVipsByDomain" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "yundun-cert:DescribeUserCertificateList" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "log:PostLogStoreLogs", "log:GetProject", "log:ListProject", "log:GetLogStore", "log:ListLogStores", "log:CreateLogStore", "log:CreateProject", "log:GetIndex", "log:CreateIndex", "log:UpdateIndex", "log:CreateDashboard", "log:ClearLogStoreStorage", "log:UpdateLogStore", "log:UpdateDashboard", "log:DeleteProject", "log:CreateSavedSearch", "log:UpdateSavedSearch", "log:DeleteLogStore" ], "Resource": "acs:log:*:*:project/waf*", "Effect": "Allow" }, { "Action": "ram:DeleteServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": "waf.aliyuncs.com" } } } ] }
關于權限策略語法的詳細說明,請參見權限策略基本元素。
前提條件
已購買WAF實例。
- 確保使用的是阿里云賬號或擁有創建和刪除服務關聯角色權限的RAM用戶身份。
創建服務關聯角色
通過日志服務
只有當您已將網站業務接入WAF防護且開通了WAF日志服務,才可以使用該方式創建服務關聯角色。關于網站接入的具體操作,請參見添加域名;關于開通WAF日志服務的具體操作,請參見快速使用WAF日志服務。
登錄Web應用防火墻控制臺,在頂部菜單欄,選擇WAF實例的資源組和地域(中國內地、非中國內地)。
在左側導航欄,選擇 。
單擊立即授權,并在提示對話框,單擊確定。
通過開通資產識別
只有中國內地WAF實例支持資產識別功能。如果您使用非中國內地WAF實例,請選擇通過日志服務或透明接入創建服務關聯角色。
登錄Web應用防火墻控制臺,在頂部菜單欄,選擇WAF實例的資源組和地域(中國內地、非中國內地)。
在左側導航欄,選擇 。
單擊免費開通,并在提示對話框,單擊確定。
通過開通透明接入
登錄Web應用防火墻控制臺,在頂部菜單欄,選擇WAF實例的資源組和地域(中國內地、非中國內地)。
在左側導航欄,選擇 。
在域名列表頁簽,單擊網站接入。
將接入模式設置為透明接入,并單擊免費開通,在提示對話框,單擊確定。
完成后,阿里云將自動為您創建WAF服務關聯角色AliyunServiceRoleForWAF。您可以在RAM控制臺的 頁面,查看阿里云為WAF自動創建的服務關聯角色。
刪除服務關聯角色
如果不需要使用WAF,您可以刪除其關聯角色AliyunServiceRoleForWAF。具體操作,請參見刪除RAM角色。
只有當WAF實例已經過期并自動釋放后,您才可以刪除服務關聯角色。
登錄RAM控制臺。
在左側導航欄,選擇 。
使用搜索功能,定位到WAF服務關聯角色AliyunServiceRoleForWAF,單擊操作列的刪除。
單擊確定。
訪問控制RAM會先檢查WAF服務關聯角色是否仍被WAF實例使用:
如果為否,WAF服務關聯角色將被直接刪除。
如果為是,您暫不能刪除WAF服務關聯角色,但可以查看哪些WAF實例在使用該角色。您必須先釋放對應的WAF實例,才可以刪除WAF服務關聯角色。
常見問題
為什么我的RAM用戶無法自動創建WAF服務關聯角色AliyunServiceRoleForWAF?
您需要擁有指定的權限,才能自動創建或刪除服務關聯角色。因此,在RAM用戶無法自動創建AliyunServiceRoleForWAF時,您需為RAM用戶添加以下權限策略。詳細操作步驟指導,請參見為RAM角色授權。
{
"Statement": [
{
"Action": [
"ram:CreateServiceLinkedRole"
],
"Resource": "acs:ram:*:主賬號ID:role/*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"waf.aliyuncs.com"
]
}
}
}
],
"Version": "1"
}