Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Scout Laravel Package

directorytree/scout

Scout is an LDAP auditing web app that periodically scans your directory to detect and log changes to objects and attributes, with customizable notifications, password change/expiry alerts, and password resets via a web UI. (Rebuilt as Watchdog)

View on GitHub
Deep Wiki
Context7

DirectoryTree Scout is a Laravel-based web app that audits your LDAP directory by periodically scanning for changes to objects and attributes, then logging and notifying your team. It’s designed to reduce manual directory monitoring and improve visibility into security-relevant events.

Note: This repository has been rebuilt and moved to DirectoryTree/Watchdog.

Key features:

  • Domain-wide change notifications for LDAP updates
  • Customizable notifiers with condition-based rules
  • Password change alerts to catch unexpected resets
  • Password expiry notifications for proactive reminders
  • Web UI password resets with temporary password delivery
Frequently asked questions about Scout
Is DirectoryTree Scout still maintained, or should I use Watchdog instead?
Scout is deprecated and moved to Watchdog. The official recommendation is to evaluate Watchdog, which is the actively developed version with the same core features. Scout is marked as 'heavy development' and not production-ready, so Watchdog is the safer choice for new projects.
What Laravel versions does Scout support, and can it work with Laravel 10+?
Scout is built for Laravel 6.x and relies on outdated dependencies like `laravel/framework` v6.x. Upgrading to Laravel 10+ would require significant refactoring, including dependency updates and API changes. For compatibility, consider running Scout in a separate Laravel 6.x environment or Docker container.
How do I install Scout via Composer instead of Git clone?
Scout isn’t officially published to Packagist, so installation requires cloning the repo (`git clone https://github.com/DirectoryTree/Scout`) and running `composer install`. If you need a Composer-friendly solution, Watchdog may offer better packaging options once fully released.
Can Scout integrate with existing LDAP directories like Active Directory or OpenLDAP?
Yes, Scout supports standard LDAP protocols and can connect to most LDAP servers, including Active Directory and OpenLDAP. Configuration requires LDAP server credentials and proper base DN settings. However, performance may degrade with large directories (e.g., 100K+ entries) without optimization.
What notification systems does Scout support, and can I customize them?
Scout includes customizable notifiers for email, Slack, and other channels, triggered by condition-based rules (e.g., password changes or attribute updates). You can extend notifiers via Laravel’s service providers or replace them entirely. For advanced use cases, integrate with existing tools like PagerDuty via webhooks.
Does Scout handle password reset requests securely, and how does the web UI work?
Scout’s web UI allows temporary password resets with notifications sent to users. Security relies on Laravel’s built-in features (e.g., encrypted tokens) and LDAP server policies. If your system already has an admin panel, you may need to hide or adapt Scout’s UI to avoid duplication.
Are there alternatives to Scout/Watchdog for LDAP auditing in Laravel?
For open-source options, consider LDAP Account Manager or custom solutions using PHP-LDAP libraries. Commercial tools like ManageEngine or SolarWinds offer enterprise-grade LDAP monitoring. If you need a Laravel-specific solution, Watchdog is the closest alternative, but evaluate its stability before adoption.
How do I test Scout’s LDAP change detection accuracy in a staging environment?
Simulate LDAP changes in a test environment by modifying entries via `ldapmodify` or a script, then verify Scout’s logs and notifications. Check for false positives/negatives by comparing Scout’s detected changes against manual audits. Use Laravel’s testing tools (e.g., `phpunit`) to automate validation.
What PHP extensions are required, and how do I enable them?
Scout mandates `ext-ldap` (enable via `sudo apt-get install php-ldap` on Ubuntu or `pecl install ldap` on Windows). Optional extensions like `ext-json` are typically pre-installed. Verify with `php -m | grep ldap`; if missing, restart your web server after installation.
Can I extract Scout’s LDAP scanning logic to use in my existing Laravel app?
Scout’s monolithic design makes extraction challenging, but you could refactor its core LDAP scanning classes (e.g., those in `src/Scout/Scanners`) into a standalone package. Start by isolating dependencies like `directorytree/ldaprecord` and adapting them to your Laravel version. Document the process thoroughly for maintenance.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport