| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | <?php | 
					
						
							| 
									
										
										
										
											2021-09-16 14:21:35 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | /* | 
					
						
							|  |  |  |  * ldap.php | 
					
						
							|  |  |  |  * Copyright (c) 2021 james@firefly-iii.org | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This file is part of Firefly III (https://github.com/firefly-iii). | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This program is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU Affero General Public License as | 
					
						
							|  |  |  |  * published by the Free Software Foundation, either version 3 of the | 
					
						
							|  |  |  |  * License, or (at your option) any later version. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This program is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  |  * GNU Affero General Public License for more details. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * You should have received a copy of the GNU Affero General Public License | 
					
						
							|  |  |  |  * along with this program.  If not, see <https://www.gnu.org/licenses/>. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-03 12:32:02 +02:00
										 |  |  | declare(strict_types=1); | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  | return [ | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     /* | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | Default LDAP Connection Name | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     | Here you may specify which of the LDAP connections below you wish | 
					
						
							|  |  |  |     | to use as your default connection for all LDAP operations. Of | 
					
						
							|  |  |  |     | course you may add as many connections you'd like below. | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     */ | 
					
						
							| 
									
										
										
										
											2020-05-23 23:16:48 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     'default' => env('LDAP_CONNECTION', 'default'), | 
					
						
							| 
									
										
										
										
											2021-10-30 06:53:21 +02:00
										 |  |  |     'extra_filter' => env('LDAP_EXTRA_FILTER'), | 
					
						
							|  |  |  |     'dialect' => env('LDAP_DIALECT'), | 
					
						
							| 
									
										
										
										
											2021-10-02 14:33:14 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  |     /* | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     | LDAP Connections | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     | Below you may configure each LDAP connection your application requires | 
					
						
							|  |  |  |     | access to. Be sure to include a valid base DN - otherwise you may | 
					
						
							|  |  |  |     | not receive any results when performing LDAP search operations. | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  |     | | 
					
						
							|  |  |  |     */ | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  |     'connections' => [ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'default' => [ | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |             'hosts' => [env('LDAP_HOST', '127.0.0.1')], | 
					
						
							|  |  |  |             'username' => env('LDAP_USERNAME', 'cn=user,dc=local,dc=com'), | 
					
						
							|  |  |  |             'password' => env('LDAP_PASSWORD', 'secret'), | 
					
						
							|  |  |  |             'port' => env('LDAP_PORT', 389), | 
					
						
							|  |  |  |             'base_dn' => env('LDAP_BASE_DN', 'dc=local,dc=com'), | 
					
						
							|  |  |  |             'timeout' => env('LDAP_TIMEOUT', 5), | 
					
						
							|  |  |  |             'use_ssl' => env('LDAP_SSL', false), | 
					
						
							|  |  |  |             'use_tls' => env('LDAP_TLS', false), | 
					
						
							|  |  |  |         ], | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     ], | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     /* | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | LDAP Logging | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     | When LDAP logging is enabled, all LDAP search and authentication | 
					
						
							|  |  |  |     | operations are logged using the default application logging | 
					
						
							|  |  |  |     | driver. This can assist in debugging issues and more. | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     */ | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     'logging' => env('LDAP_LOGGING', true), | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     /* | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | LDAP Cache | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     | LDAP caching enables the ability of caching search results using the | 
					
						
							|  |  |  |     | query builder. This is great for running expensive operations that | 
					
						
							|  |  |  |     | may take many seconds to complete, such as a pagination request. | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     */ | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-06-12 06:35:19 +02:00
										 |  |  |     'cache' => [ | 
					
						
							|  |  |  |         'enabled' => env('LDAP_CACHE', false), | 
					
						
							|  |  |  |         'driver' => env('CACHE_DRIVER', 'file'), | 
					
						
							| 
									
										
										
										
											2018-10-13 15:06:56 +02:00
										 |  |  |     ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ]; |