增加一條安全性群組出方向規則。指定安全性群組出方向的存取權限,允許或者拒絕安全性群組裡的執行個體發送出方向流量到其他裝置。

描述

我們定義出方向流量的發起端為源端(Source),資料轉送的接收端為目的端(Destination),如下圖所示。

調用該介面時,您需要瞭解:

  • 一個安全性群組的安全性群組規則最多為 100 條。

  • 安全性群組規則分為接受訪問(accept)和拒絕訪問(drop)兩類。

  • 安全性群組規則優先順序(Priority)可選範圍為 [1, 100]。數字越小,代表優先順序越高。

  • 優先順序相同的安全性群組規則,優先以拒絕訪問(drop)的規則為準。

  • 目的端裝置可以是指定 IP 位址範圍(DestCidrIp),也可以是其他安全性群組(DestGroupId)。

  • 以下任意一組參數可以確定一條安全性群組規則。如果匹配的安全性群組規則已存在,此次 AuthorizeSecurityGroupEgress調用失敗。

    • 設定指定 IP 位址段的存取權限,如 請求樣本一IpProtocolPortRange、(可選)SourcePortRangeNicTypePolicyDestCiderIp 和 (可選)SourceCidrIp

    • 設定其他安全性群組的存取權限,如 請求樣本二IpProtocolPortRange、(可選)SourcePortRangeNicTypePolicy、(可選)DestCiderIpDestGroupOwnerAccountDestGroupId

請求參數

名稱 類型 是否必需 描述
Action String 系統規定參數。取值:AuthorizeSecurityGroupEgress
RegionId String 源端安全性群組所屬地域 ID。您可以調用 DescribeRegions 查看最新的阿里雲地域列表。
SecurityGroupId String 源端安全性群組 ID。
IpProtocol String 傳輸層協議。不區分大小寫。取值範圍:
  • icmp
  • gre
  • tcp
  • udp
  • all:支援所有協議
PortRange String 目的端安全性群組開放的傳輸層協議相關的通信埠範圍。取值範圍:
  • TCP/UDP 協議:[1, 65535] 。使用斜線(/)隔開開始端點口和終止通信埠。正確示範:1/200;錯誤示範:200/1
  • ICMP 協議:-1/-1。
  • GRE 協議:-1/-1。
  • all:-1/-1。
SourcePortRange String 源端安全性群組開放的傳輸層協議相關的通信埠範圍。取值範圍:
  • TCP/UDP 協議:[1, 65535] 。使用斜線(/)隔開開始端點口和終止通信埠。正確示範:1/200;錯誤示範:200/1
  • ICMP 協議:-1/-1。
  • GRE 協議:-1/-1。
  • all:-1/-1。
NicType String 網卡類型。取值範圍:
  • internet:公網網卡。
  • intranet:內網網卡。
當設定安全性群組之間互相訪問時,即指定了 DestGroupId 且沒有指定 DestCidrIp 時,參數 NicType 取值只能為 intranet。 預設值:internet
Policy String 設定存取權限。取值範圍:
  • accept:接受訪問。
  • drop:拒絕訪問,不發回拒絕資訊。
預設值:accept
DestCidrIp String 目的端 IP 位址範圍。支援 CIDR 格式和 IPv4 格式的 IP 位址範圍。預設值:0.0.0.0/0
SourceCidrIp String 源端 IP 位址範圍。支援 CIDR 格式和 IPv4 格式的 IP 位址範圍。預設值:0.0.0.0/0
DestGroupId String 需要設定存取權限的目的端安全性群組 ID。至少設定一項 DestGroupId 或者 DestCidrIp 參數。如果指定了 DestGroupId 沒有指定參數 DestCidrIp,則參數 NicType 取值只能為 intranet。如果同時指定了 DestGroupIdDestCidrIp,則預設以 DestCidrIp 為準。
DestGroupOwnerAccount String 跨賬戶設定安全性群組規則時,目的端安全性群組所屬的阿里雲賬戶。
  • 如果 DestGroupOwnerAccountDestGroupOwnerId 均未設定,則認為是設定您其他安全性群組的存取權限。
  • 如果已經設定參數 DestCidrIp,則參數 DestGroupOwnerAccount 無效。
DestGroupOwnerId String 跨賬戶設定安全性群組規則時,目的端安全性群組所屬的阿里雲賬戶 ID。
  • 如果 DestGroupOwnerIdDestGroupOwnerAccount 均未設定,則認為是設定您其他安全性群組的存取權限。
  • 如果您已經設定參數 DestCidrIp,則參數 DestGroupOwnerId 無效。
Priority String 安全性群組規則優先順序。取值範圍:[1, 100]

預設值:1

Description String 安全性群組規則的描述資訊。長度為 [1, 512] 個字元。

返回參數

全是公共返回參數。參閱 公共參數

樣本

請求樣本一

設定指定 IP 地址段的存取權限。經典網路型別安全組的網卡類型(NicType)可設定公網(internet)和 內網intranet)。VPC 型別安全組的網卡類型(NicType)只可設定內網(intranet)。

https://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroupEgress
&SecurityGroupId=sg-94n63e80l
&IpProtocol=icmp
&DestCidrIp=10.0.0.0/8
&PortRange=-1/-1
&NicType=intranet
&Policy=Allow
&<公共請求參數>

請求樣本二

設定其他安全性群組的存取權限。網卡類型(NicType)只能為內網(intranet)。經典網路型別安全組之間互訪時,可以設定同一地域中其他安全性群組對您的安全性群組的存取權限。這個安全性群組可以是您的也可以是其他阿里雲賬戶(DestGroupOwnerAccount)的。VPC 型別安全組之間互訪時,可以設定同一 VPC 內其他安全性群組對該安全性群組的存取權限。

https://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroupEgress
&SecurityGroupId=sg-F876FF7BA
&DestGroupId=sg-1651FBB64
&DestGroupOwnerAccount=test@aliyun.com
&IpProtocol=tcp
&PortRange=22/22
&NicType=intranet
&Policy=Drop
&<公共請求參數>
返回樣本

XML 格式

<AuthorizeSecurityGroupEgressResponse>
    <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>
</AuthorizeSecurityGroupEgressResponse>
JSON 格式
{
    "RequestId":"CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}

錯誤碼

以下為本介面特有的錯誤碼。更多錯誤碼,請訪問 API 錯誤中心

錯誤碼 錯誤資訊 HTTP 狀態碼 說明
InvalidDestCidrIp.Malformed The specified parameter “DestCidrIp” is not valid. 400 指定的 DestCidrIp不合法。
InvalidDestCidrIp.Malformed The specified parameter DestCidrIp is not valid. 400 指定的 DestCidrIp不合法。
InvalidDestGroup.NotFound Specified destination security group does not exist. 400 指定的 DestGroupId不存在。
InvalidDestGroupId.Mismatch Specified security group and destination group are not in the same VPC. 400 指定安全性群組的網路類型是 VPC,目的端安全性群組必須在同一個 VPC 裡。
InvalidNicType.Mismatch Specified nic type conflicts with the authorization record. 400 指定網卡類型 NicType 與安全性群組規則不符合。
InvalidNicType.ValueNotSupported The specified NicType does not exist. 400 指定的 NicType 不存在。
InvalidPolicy.Malformed The specified parameter “Policy” is not valid. 400 指定的 Policy 不合法。
InvalidPortRange.Malformed The specified parameter “PortRange” is not valid. 400 指定的 PortRange不合法。
InvalidPriority.Malformed The specified parameter “Priority” is not valid. 400 指定的 riority 不合法。
InvalidPriority.ValueNotSupported The specified Priority is invalid. 400 指定的 Priority 不合法。
InvalidSecurityGroupDiscription.Malformed The specified security group rule description is not valid. 400 安全性群組規則的描述 Description 不合法。
InvalidSourceCidrIp.Malformed The specified parameter “SourceCidrIp” is not valid. 400 指定的 SourceCidrIp 不合法。
InvalidSourcePortRange.Malformed The specified parameter “SourcePortRange” is not valid. 400 指定的 SourcePortRange不合法。
OperationDenied The specified IpProtocol does not exist or IpProtocol and PortRange, SourcePortRange do not match. 400 指定的參數 IpProtocol 不存在。或者指定的傳輸層協議和通信埠範圍不匹配。
AuthorizationLimitExceed The maximum number of authorization rules in the security group is exceeded. 403 單個安全性群組的安全性群組規則最多為 100 條。
InvalidDestGroupId.Mismatch NicType is required or NicType expects intranet. 403 需要明確 NicType 參數。或者 NicType 必須為 intranet
InvalidNetworkType.Conflict The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic). 403 安全性群組規則中的兩個安全性群組網路類型必須相同,即必須同時為經典網路或者 VPC。
InvalidParamter.Conflict The specified SecurityGroupId should be different from the DestGroupId. 403 參數 SecurityGroupIdDestGroupId 不能相同。
InvalidSecurityGroup.IsSame The authorized SecurityGroupId should be different from the DestGroupId. 403 參數 SecurityGroupIdDestGroupId 不能相同。
MissingParameter The input parameter “DestGroupId” or “DestCidrIp” cannot be both blank. 403 需要指定參數 DestGroupId 或者 DestCidrIp
InvalidDestGroupId.NotFound The DestGroupId provided does not exist in our records. 404 指定的 DestGroupId不存在。
InvalidRegionId.NotFound The specified RegionId does not exist. 404 指定的 RegionId 不存在。
InvalidSecurityGroupId.NotFound The specified SecurityGroupId does not exist. 404 指定的 SecurityGroupId不存在。