# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: grr/proto/acls.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from grr.proto import semantic_pb2 as grr_dot_proto_dot_semantic__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='grr/proto/acls.proto',
  package='',
  syntax='proto2',
  serialized_pb=_b('\n\x14grr/proto/acls.proto\x1a\x18grr/proto/semantic.proto\"\xc5\x04\n\x1b\x43lientApprovalAuthorization\x12\x41\n\x05label\x18\x01 \x01(\tB2\xe2\xfc\xe3\xc4\x01,\x12*Client label this approval ACL applies to.\x12\xc6\x01\n\x1crequester_must_be_authorized\x18\x02 \x01(\x08:\x05\x66\x61lseB\x98\x01\xe2\xfc\xe3\xc4\x01\x91\x01\x12\x8e\x01If true, approval requester must also be listed in the ACL. This allows you to specify machines that can only be accessed by the listed users.\x12x\n\x16num_approvers_required\x18\x03 \x01(\x04:\x01\x31\x42U\xe2\xfc\xe3\xc4\x01O\x12MNumber of people from this ACL that need to approve before access is granted.\x12N\n\x05users\x18\x04 \x03(\tB?\xe2\xfc\xe3\xc4\x01\x39\x12\x37List of users that can approve clients with this label.\x12P\n\x06groups\x18\x05 \x03(\tB@\xe2\xfc\xe3\xc4\x01:\x12\x38List of groups that can approve clients with this label.')
  ,
  dependencies=[grr_dot_proto_dot_semantic__pb2.DESCRIPTOR,])




_CLIENTAPPROVALAUTHORIZATION = _descriptor.Descriptor(
  name='ClientApprovalAuthorization',
  full_name='ClientApprovalAuthorization',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='label', full_name='ClientApprovalAuthorization.label', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001,\022*Client label this approval ACL applies to.'))),
    _descriptor.FieldDescriptor(
      name='requester_must_be_authorized', full_name='ClientApprovalAuthorization.requester_must_be_authorized', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\221\001\022\216\001If true, approval requester must also be listed in the ACL. This allows you to specify machines that can only be accessed by the listed users.'))),
    _descriptor.FieldDescriptor(
      name='num_approvers_required', full_name='ClientApprovalAuthorization.num_approvers_required', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=True, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001O\022MNumber of people from this ACL that need to approve before access is granted.'))),
    _descriptor.FieldDescriptor(
      name='users', full_name='ClientApprovalAuthorization.users', index=3,
      number=4, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0019\0227List of users that can approve clients with this label.'))),
    _descriptor.FieldDescriptor(
      name='groups', full_name='ClientApprovalAuthorization.groups', index=4,
      number=5, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001:\0228List of groups that can approve clients with this label.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=51,
  serialized_end=632,
)

DESCRIPTOR.message_types_by_name['ClientApprovalAuthorization'] = _CLIENTAPPROVALAUTHORIZATION
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ClientApprovalAuthorization = _reflection.GeneratedProtocolMessageType('ClientApprovalAuthorization', (_message.Message,), dict(
  DESCRIPTOR = _CLIENTAPPROVALAUTHORIZATION,
  __module__ = 'grr.proto.acls_pb2'
  # @@protoc_insertion_point(class_scope:ClientApprovalAuthorization)
  ))
_sym_db.RegisterMessage(ClientApprovalAuthorization)


_CLIENTAPPROVALAUTHORIZATION.fields_by_name['label'].has_options = True
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['label']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001,\022*Client label this approval ACL applies to.'))
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['requester_must_be_authorized'].has_options = True
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['requester_must_be_authorized']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\221\001\022\216\001If true, approval requester must also be listed in the ACL. This allows you to specify machines that can only be accessed by the listed users.'))
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['num_approvers_required'].has_options = True
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['num_approvers_required']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001O\022MNumber of people from this ACL that need to approve before access is granted.'))
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['users'].has_options = True
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['users']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0019\0227List of users that can approve clients with this label.'))
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['groups'].has_options = True
_CLIENTAPPROVALAUTHORIZATION.fields_by_name['groups']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001:\0228List of groups that can approve clients with this label.'))
# @@protoc_insertion_point(module_scope)
