summaryrefslogtreecommitdiff
path: root/src/zope/security/interfaces.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/zope/security/interfaces.py')
-rw-r--r--src/zope/security/interfaces.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/zope/security/interfaces.py b/src/zope/security/interfaces.py
index 4c62bdc..1d646ee 100644
--- a/src/zope/security/interfaces.py
+++ b/src/zope/security/interfaces.py
@@ -52,7 +52,7 @@ means the name of the permission, or the special object
from zope.interface import Interface, Attribute, implementer
from zope.interface.common.interfaces import IException, IAttributeError
-from zope.schema import Text, TextLine
+from zope.schema import Text, TextLine, NativeStringLine
from zope.security.i18n import ZopeMessageFactory as _
#: The name (id) of the registered :class:`IPermission` utility that signifies
@@ -438,9 +438,14 @@ class IMemberAwareGroup(IMemberGetterGroup):
"""
class IPermission(Interface):
- """A permission object."""
+ """A permission object.
- id = TextLine(
+ Note that the ZCML ``<permission>`` directive restricts the ``id`` to
+ be an identifier (a dotted name or a URI), but this interface allows
+ any native string.
+ """
+
+ id = NativeStringLine(
title=_("Id"),
description=_("Id as which this permission will be known and used."),
readonly=True,