OLD | NEW |
(Empty) | |
| 1 // Copyright 2015 The Swarming Authors. All rights reserved. |
| 2 // Use of this source code is governed by the Apache v2.0 license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 // Configuration schema for configs fetched via a config service. |
| 6 |
| 7 package auth_service; |
| 8 |
| 9 |
| 10 // Configuration of cron job that imports groups from external sources. |
| 11 message GroupImporterConfig { |
| 12 // Import groups stored as files in a tarball. |
| 13 message TarballEntry { |
| 14 // Where to import data from. |
| 15 optional string url = 1; |
| 16 // List of OAuth scopes to use for authentication (or empty to skip auth). |
| 17 repeated string oauth_scopes = 2; |
| 18 // Email domain to append to imported identities. |
| 19 optional string domain = 3; |
| 20 // List of group systems expected to be found in the archive. They act as |
| 21 // prefixes to group names, e.g 'ldap'. Each system corresponds to |
| 22 // a subdirectory in the tarball. Each tarball may have groups from multiple |
| 23 // external systems, but groups from some external system must not be split |
| 24 // between multiple tarballs. When importer sees <group system name>/* in |
| 25 // a tarball, it modifies group list from that system on the auth_service to |
| 26 // match group list in the tarball _exactly_. For example it removes groups |
| 27 // that are on the server, but no longer present in the tarball. |
| 28 repeated string systems = 4; |
| 29 // List of groups to import from the tarball (as filenames relative to |
| 30 // tarball root, e.g. 'ldap/some-group'). If empty, imports all groups in |
| 31 // the tarball. |
| 32 repeated string groups = 5; |
| 33 } |
| 34 |
| 35 // Import a single group stored as a plain list of identities. |
| 36 message PlainlistEntry { |
| 37 // Where to import data from. |
| 38 optional string url = 1; |
| 39 // List of OAuth scopes to use for authentication (or empty to skip auth). |
| 40 repeated string oauth_scopes = 2; |
| 41 // Email domain to append to imported identities. |
| 42 optional string domain = 3; |
| 43 // For PLAINLIST imports, a name of imported group. The full group name will |
| 44 // be 'external/<group>'. |
| 45 optional string group = 4; |
| 46 } |
| 47 |
| 48 repeated TarballEntry tarball = 1; |
| 49 repeated PlainlistEntry plainlist = 2; |
| 50 } |
OLD | NEW |