Class RoomServerAcl


  • public class RoomServerAcl
    extends StateEvent<RoomServerAclContent>
    An event to indicate which servers are permitted to participate in the room. Server ACLs may allow or deny groups of hosts. All servers participating in the room, including those that are denied, are expected to uphold the server ACL. Servers that do not uphold the ACLs MUST be added to the denied hosts list in order for the ACLs to remain effective.
    The allow and deny lists are lists of globs supporting ? and * as wildcards. When comparing against the server ACLs, the suspect server's port number must not be considered. Therefore evil.com, evil.com:8448, and evil.com:1234 would all match rules that apply to evil.com, for example.
    The ACLs are applied to servers when they make requests, and are applied in the following order:
    1. If there is no m.room.server_acl event in the room state, allow.
    2. If the server name is an IP address (v4 or v6) literal, and allow_ip_literals is present and false, deny.
    3. If the server name matches an entry in the deny list, deny.
    4. If the server name matches an entry in the allow list, allow.
    5. Otherwise, deny.
    • Field Detail

      • TYPE

        public static final String TYPE
        An event to indicate which servers are permitted to participate in the room. Server ACLs may allow or deny groups of hosts. All servers participating in the room, including those that are denied, are expected to uphold the server ACL. Servers that do not uphold the ACLs MUST be added to the denied hosts list in order for the ACLs to remain effective.
        The allow and deny lists are lists of globs supporting ? and * as wildcards. When comparing against the server ACLs, the suspect server's port number must not be considered. Therefore evil.com, evil.com:8448, and evil.com:1234 would all match rules that apply to evil.com, for example.
        The ACLs are applied to servers when they make requests, and are applied in the following order:
        1. If there is no m.room.server_acl event in the room state, allow.
        2. If the server name is an IP address (v4 or v6) literal, and allow_ip_literals is present and false, deny.
        3. If the server name matches an entry in the deny list, deny.
        4. If the server name matches an entry in the allow list, allow.
        5. Otherwise, deny.
        See Also:
        Constant Field Values
    • Constructor Detail

      • RoomServerAcl

        public RoomServerAcl()
    • Method Detail

      • getType

        public String getType()
        Description copied from class: Event
        Required. The type of event. This SHOULD be namespaced similar to Java package naming conventions e.g. 'com.example.subdomain.event.type'.
        Specified by:
        getType in class Event<RoomServerAclContent>
        Returns:
        The type of the event.