调用AuthorizeSecurityGroup增加一条或多条入方向安全组规则。指定安全组入方向的访问权限,允许或者拒绝其他设备发送入方向流量到安全组里的实例。

接口说明

安全组的API文档中,流量的发起端为源端(Source),数据传输的接收端为目的端(Dest)。

调用该接口时,您需要了解:

  • 出方向和入方向安全组规则数量不能超过200条。具体限制请参见安全组使用限制
  • 安全组规则优先级(Priority)可选范围为1~100。数字越小,代表优先级越高。
  • 优先级相同的安全组规则,以拒绝访问(drop)的规则优先。
  • 源端设备可以是指定的IP地址范围(SourceCidrIp、Ipv6SourceCidrIp、SourcePrefixListId),也可以是其他安全组(SourceGroupId)中的ECS实例。
  • 企业安全组不支持授权其他安全组访问。
  • 普通安全组支持授权的安全组数量最多为20个。
  • 如果指定的安全组规则已存在,此次调用成功,但不会增加规则。
  • Permissions.N前缀的字段和对应不带前缀的字段不能同时指定,建议您使用Permissions.N前缀的字段。
  • 以下任意一组参数可以确定一条安全组规则,只指定一个参数无法确定一条安全组规则。
    • 设置指定IP地址段的访问权限。此时,VPC类型安全组的网卡类型(NicType)应设置为内网(intranet)。经典网络类型安全组的网卡类型(NicType)可设置为公网(internet)或内网(intranet)。如以下请求示例:IpProtocol、PortRange、(可选)SourcePortRange、NicType、Policy和SourceCidrIp。
      
              http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
              &SecurityGroupId=sg-bp67acfmxazb4p****
              &Permissions.1.SourceCidrIp=10.0.0.0/8
              &Permissions.1.IpProtocol=TCP
              &Permissions.1.PortRange=22/22
              &Permissions.1.NicType=intranet
              &Permissions.1.Policy=Accept
              &<公共请求参数>
              
    • 设置其他安全组的访问权限。此时,网卡类型(NicType)只能为内网(intranet)。经典网络类型安全组之间互访时,可以设置同一地域中其他安全组对您的安全组的访问权限。这个安全组可以是您的也可以是其他阿里云账户(SourceGroupOwnerAccount)的。VPC类型安全组之间互访时,可以设置同一VPC内其他安全组访问该安全组的访问权限。如以下请求示例:IpProtocol、PortRange、(可选)SourcePortRange、NicType、Policy、SourceGroupOwnerAccount和SourceGroupId。
      
              http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
              &SecurityGroupId=sg-bp67acfmxazb4p****
              &Permissions.1.SourceGroupId=sg-1651FBB**
              &Permissions.1.SourceGroupOwnerAccount=test@aliyun.com
              &Permissions.1.IpProtocol=TCP
              &Permissions.1.PortRange=22/22
              &Permissions.1.NicType=intranet
              &Permissions.1.Policy=Drop
              &<公共请求参数>
              
    • 在安全组规则中设置前缀列表的访问权限。此时,前缀列表仅支持网络类型为VPC的安全组,网卡类型(NicType)只可设置为内网(intranet)。如以下请求示例:IpProtocol、PortRange、(可选)SourcePortRange、NicType、Policy和SourcePrefixListId。
      
              http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
              &SecurityGroupId=sg-bp67acfmxazb4p****
              &Permissions.1.SourcePrefixListId=pl-x1j1k5ykzqlixdcy****
              &Permissions.1.SourceGroupOwnerAccount=test@aliyun.com
              &Permissions.1.IpProtocol=TCP
              &Permissions.1.PortRange=22/22
              &Permissions.1.NicType=intranet
              &Permissions.1.Policy=Drop
              &<公共请求参数>
             
  • 更多关于安全组规则的设置示例,请参见应用案例安全组五元组规则介绍

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String AuthorizeSecurityGroup

系统规定参数。取值:AuthorizeSecurityGroup

RegionId String cn-hangzhou

安全组所属地域ID。您可以调用DescribeRegions查看最新的阿里云地域列表。

ClientToken String 123e4567-e89b-12d3-a456-426655440000

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见如何保证幂等性

SecurityGroupId String sg-bp67acfmxazb4p****

安全组ID。

Permissions.N.Policy String accept

设置访问权限。取值范围:

  • accept:接受访问。
  • drop:拒绝访问,不返回拒绝信息,表现为发起端请求超时或者无法建立连接的类似信息。

默认值:accept。

N的取值范围:1~100。

Permissions.N.Priority String 1

安全组规则优先级,数字越小,代表优先级越高。取值范围:1~100。

默认值:1。

N的取值范围:1~100。

Permissions.N.IpProtocol String ALL

传输层协议。取值不区分大小写。取值范围:

  • TCP。
  • UDP。
  • ICMP。
  • ICMPv6。
  • GRE。
  • ALL:支持所有协议。

N的取值范围:1~100。

Permissions.N.SourceCidrIp String 10.0.0.0/8

需要设置访问权限的源端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。

N的取值范围:1~100。

Permissions.N.Ipv6SourceCidrIp String 2001:250:6000::***

需要设置访问权限的源端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。

N的取值范围:1~100。

说明 仅在支持IPv6的VPC类型ECS实例上有效,且该参数与SourceCidrIp参数不可同时设置。
Permissions.N.SourceGroupId String sg-bp67acfmxazb4p****

需要设置访问权限的源端安全组ID。

  • 至少设置SourceGroupIdSourceCidrIpIpv6SourceCidrIpSourcePrefixListId参数中的一项。
  • 如果指定了SourceGroupId,没有指定参数SourceCidrIpIpv6SourceCidrIp,则参数NicType取值只能为intranet
  • 如果同时指定了SourceGroupIdSourceCidrIp,则默认以SourceCidrIp为准。

N的取值范围:1~100。

您需要注意:

  • 企业安全组不支持授权安全组访问。
  • 普通安全组支持授权的安全组数量最多为20个。
Permissions.N.SourcePrefixListId String pl-x1j1k5ykzqlixdcy****

需要设置访问权限的源端前缀列表ID。您可以调用DescribePrefixLists查询可以使用的前缀列表ID。

N的取值范围:1~100。

注意事项:

  • 安全组的网络类型为经典网络时,不支持设置前缀列表。关于安全组以及前缀列表使用限制的更多信息,请参见安全组使用限制
  • 当您指定了SourceCidrIpIpv6SourceCidrIpSourceGroupId参数中的一个时,将忽略该参数。
Permissions.N.PortRange String 80/80

安全组开放的传输层协议相关的目的端口范围。取值范围:

  • TCP/UDP:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200。
  • ICMP:-1/-1。
  • GRE:-1/-1。
  • IpProtocol取值为ALL:-1/-1。

了解端口的应用场景,请参见典型应用的常用端口

N的取值范围:1~100。

Permissions.N.DestCidrIp String 10.0.0.0/8

目的端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。

用于支持五元组规则,请参见安全组五元组规则

N的取值范围:1~100。

Permissions.N.Ipv6DestCidrIp String 2001:250:6000::***

目的端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。

用于支持五元组规则,请参见安全组五元组规则

N的取值范围:1~100。

说明 仅在支持IPv6的VPC类型ECS实例上有效,且该参数与DestCidrIp参数不可同时设置。
Permissions.N.SourcePortRange String 7000/8000

安全组开放的传输层协议相关的源端端口范围。取值范围:

  • TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200。
  • ICMP协议:-1/-1。
  • GRE协议:-1/-1。
  • IpProtocol取值为ALL:-1/-1。

用于支持五元组规则,请参见安全组五元组规则

N的取值范围:1~100。

Permissions.N.SourceGroupOwnerAccount String test@aliyun.com

跨账户设置安全组规则时,源端安全组所属的阿里云账户。

  • 如果SourceGroupOwnerAccountSourceGroupOwnerId均未设置,则认为是设置您其他安全组的访问权限。
  • 如果已经设置参数SourceCidrIp,则参数SourceGroupOwnerAccount无效。

N的取值范围:1~100。

Permissions.N.SourceGroupOwnerId Long 1234567890

跨账户设置安全组规则时,源端安全组所属的阿里云账户ID。

  • 如果SourceGroupOwnerAccountSourceGroupOwnerId均未设置,则认为是设置您其他安全组的访问权限。
  • 如果已经设置参数SourceCidrIp,则参数SourceGroupOwnerAccount无效。

N的取值范围:1~100。

Permissions.N.NicType String intranet

经典网络类型安全组规则的网卡类型。取值范围:

  • internet:公网网卡。
  • intranet:内网网卡。

专有网络VPC类型安全组规则无需设置网卡类型,默认为intranet,只能为intranet。

设置安全组之间互相访问时,即仅指定了DestGroupId参数时,只能为intranet。

默认值:internet。

N的取值范围:1~100。

Permissions.N.Description String This is description.

安全组规则的描述信息。长度为1~512个字符。

N的取值范围:1~100。

Policy String accept

已废弃。请使用Permissions.N.Policy来设置访问权限。

Priority String 1

已废弃。请使用Permissions.N.Priority来指定安全组规则优先级。

IpProtocol String ALL

已废弃。请使用Permissions.N.IpProtocol来指定传输层协议。

SourceCidrIp String 10.0.0.0/8

已废弃。请使用Permissions.N.SourceCidrIp来指定源端IPv4 CIDR地址块。

Ipv6SourceCidrIp String 2001:250:6000::***

已废弃。请使用Permissions.N.Ipv6SourceCidrIp来指定源端IPv6 CIDR地址块。

SourceGroupId String sg-bp67acfmxazb4p****

已废弃。请使用Permissions.N.SourceGroupId来指定源端安全组ID。

SourcePrefixListId String pl-x1j1k5ykzqlixdcy****

已废弃。请使用Permissions.N.SourcePrefixListId来指定源端前缀列表ID。

PortRange String 22/22

已废弃。请使用Permissions.N.PortRange来指定端口范围。

DestCidrIp String 10.0.0.0/8

已废弃。请使用Permissions.N.DestCidrIp来指定目的端IPv4 CIDR地址段。

Ipv6DestCidrIp String 2001:250:6000::***

已废弃。请使用Permissions.N.Ipv6SourceCidrIp来指定源端IPv6 CIDR地址块。

SourcePortRange String 22/22

已废弃。请使用Permissions.N.SourcePortRange来指定源端端口范围。

SourceGroupOwnerAccount String test@aliyun.com

已废弃。请使用Permissions.N.SourceGroupOwnerAccount来指定源端安全组所属的阿里云账户。

SourceGroupOwnerId Long 1234567890

已废弃。请使用Permissions.N.SourceGroupOwnerId来指定源端安全组所属的阿里云账户ID。

NicType String intranet

已废弃。请使用Permissions.N.NicType来指定网卡类型。

Description String This is description.

已废弃。请使用Permissions.N.Description来指定安全组规则的描述。

返回数据

名称 类型 示例值 描述
RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

请求ID。

示例

请求示例

http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
&RegionId=cn-hangzhou
&ClientToken=123e4567-e89b-12d3-a456-426655440000
&SecurityGroupId=sg-bp67acfmxazb4p****
&Permissions.1.SourceCidrIp=10.0.0.0/8
&Permissions.1.IpProtocol=TCP
&Permissions.1.PortRange=22/22
&Permissions.1.NicType=intranet
&Permissions.1.Policy=accept
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<AuthorizeSecurityGroupResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</AuthorizeSecurityGroupResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

错误码

HttpCode 错误码 错误信息 描述
400 OperationDenied The specified IpProtocol does not exist or IpProtocol and PortRange do not match. 指定的 IP 协议不存在,或与端口范围不匹配。
400 InvalidIpProtocol.Malformed The specified parameter PortRange is not valid. IP 协议参数格式不正确,PortRange 参数不正确。
400 InvalidSourceCidrIp.Malformed The specified parameter SourceCidrIp is not valid. 源IP地址范围参数格式不正确。
400 InvalidPolicy.Malformed The specified parameter Policy is not valid. 指定的参数无效,请您检查该参数是否正确。
400 InvalidNicType.ValueNotSupported The specified NicType does not exist. 指定的网络类型不存在,请您检查网络类型是否正确。
400 InvalidNicType.Mismatch Specified nic type conflicts with the authorization record. 指定的NIC类型与规则信息冲突。
400 InvalidSourceGroupId.Mismatch Specified security group and source group are not in the same VPC. 指定的安全组和源安全组不在一个 VPC 内。
400 InvalidSourceGroup.NotFound Specified source security group does not exist. 指定的安全组入方向规则不存在,或相关参数缺失。
400 VPCDisabled Can't use the SecurityGroup in VPC. VPC 不支持安全组。
400 InvalidPriority.Malformed The parameter Priority is invalid. 指定的参数 Priority 无效。
400 InvalidSecurityGroup.InvalidNetworkType The specified security group network type is not support this operation, please check the security group network types. For VPC security groups, ClassicLink must be enabled. 指定的安全组网络类型不支持此操作,请检查安全组网络类型。对于 VPC 安全组,必须启用 ClassicLink。
400 InvalidSecurityGroupId.Malformed The specified parameter SecurityGroupId is not valid. 指定的参数 SecurityGroupId 无效。
400 InvalidParamter.Conflict The specified SourceCidrIp should be different from the DestCidrIp. 参数 SourceCidrIp 和 DestCidrIp 不能相同。
400 InvalidSourcePortRange.Malformed The specified parameter SourcePortRange is not valid. 指定的参数 SourcePortRange 无效。
400 InvalidParam.SourceIp %s 指定的参数 SourceIp 无效。
400 InvalidParam.DestIp %s 指定的参数 DestIp 无效。
400 InvalidParam.Ipv6DestCidrIp %s 您输入的参数无效。
400 InvalidParam.Ipv6SourceCidrIp %s 您输入的参数无效。
400 InvalidParam.Ipv4ProtocolConflictWithIpv6Address %s 您输入的参数无效,请检查 IPv4 协议下是否填写了 IPv6 地址。
400 InvalidParam.Ipv6ProtocolConflictWithIpv4Address %s 您输入的参数无效,请检查IPv6协议下是否填写了 IPv4 地址。
400 ILLEGAL_IPV6_CIDR %s 指定的IPv6地址无效。
400 InvalidDestCidrIp.Malformed The specified parameter DestCidrIp is not valid. 指定的DestCidrIp无效,请您检查该参数是否正确。
400 InvalidParameter.Conflict IPv6 and IPv4 addresses cannot exist at the same time. IPv6地址和IPv4地址不能同时指定。
400 InvalidParam.PrefixListAddressFamilyMismatch The address family of the specified prefix list does not match the specified CidrIp. 指定前缀列表的地址族,与指定的CidrIP的地址族不匹配。
400 NotSupported.ClassicNetworkPrefixList The prefix list is not supported when the network type of security group is classic. 安全组的网络类型为经典网络,不支持前缀列表。
400 InvalidParam.SourceCidrIp The specified param SourceCidrIp is not valid. 参数SourceCidrIp不合法。
400 InvalidParam.DestCidrIp The specified param DestCidrIp is not valid. 您指定的参数DestCidrIp不合法。
400 MissingParameter %s 缺失参数,请检查参数是否完整。
400 InvalidParam.Permissions The specified parameter Permissions cannot coexist with other parameters. 指定的参数Permissions不能与其他参数同时存在。
400 InvalidParam.DuplicatePermissions There are duplicate permissions in the specified parameter Permissions. 指定的参数Permissions中存在重复的规则。
403 InvalidSourceGroupId.Mismatch NicType is required or NicType expects intranet. 需要提供 NicType,NicType 仅在内网中使用。
403 AuthorizationLimitExceed The limit of authorization records in the security group reaches. 安全组授权规则数达到上限,请您检查授权规则是否合理。
403 InvalidParamter.Conflict The specified SecurityGroupId should be different from the SourceGroupId. 授权与被授权安全组必须不同。
403 InvalidNetworkType.Mismatch The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic). 指定的 SecurityGroup 的网络类型必须与 SouceGroup 的网络类型一致。
403 InvalidNetworkType.Conflict The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic). 指定的SecurityGroup的网络类型必须与SouceGroup的网络类型一致。
403 InvalidOperation.ResourceManagedByCloudProduct %s 云产品托管的安全组不支持修改操作。
403 LimitExceed.PrefixListAssociationResource The number of resources associated with the prefix list exceeds the limit. 与前缀列表关联的资源数量超出限制。
404 InvalidSecurityGroupId.NotFound The specified SecurityGroupId does not exist. 指定的安全组在该用户账号下不存在,请您检查安全组ID是否正确。
404 InvalidSourceGroupId.NotFound The SourceGroupId provided does not exist in our records. 指定的入方向安全组不存在。
404 InvalidPrefixListId.NotFound The specified prefix list was not found. 前缀列表不存在。
404 InvalidSecurityGroupId.NotFound %s 指定的安全组 ID 不存在。
500 InternalError The request processing has failed due to some unknown error. 内部错误,请重试。如果多次尝试失败,请提交工单。

访问错误中心查看更多错误码。