Download the PHP package rafa-carmo/ldap-connector without Composer

On this page you can find all versions of the php package rafa-carmo/ldap-connector. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package ldap-connector

��# LDAP Connect

<p align="center">

<img alt="License" src="https://img.shields.io/badge/License-MIT-blue">

</p>

<br>

Fa�a bind e busque usuarios de forma simples.

## Depend�ncias:

- �& PHP 7.4

## Como usar?

### Laravel >= 8

1 - Instale a biblioteca

`bash

composer require rafa-carmo/ldap-connector

`

2 - Publique os arquivos de configura��o:

`bash

php artisan vendor:publish --tag=ldap-config --tag=ldap-service

`

3 - Preencha as configura��os em seu .env:

`env

LDAP_HOST="localhost" # Obrigat�rio

LDAP_USERNAME="Usu�rio para buscas" # Opcional

LDAP_PASSWORD="Senha do usu�rio acima" # Opcional

LDAP_PORT="Porta do Servi�o" # Opcional - Padr�o: 389

LDAP_TIMEOUT=5 # Opcional - Timeout padr�o.

LDAPBASEDN="dc=example,dc=com" # Opcional - Dominio Base

LDAPMAILDOMAIN=example.com # Opcional - Dominio para login com email

LDAP_AUTO_CREATE=false # Opcional - Para implementar l�gica de criar usu�rio autom�tico no primeiro acesso

`

4 - Instancie uma classe na sua area de login para fazer sua l�gica:

`php

# Exemplo ( Este � um exemplo para entender a l�gica, aplique de acordo com seu projeto )

$ldap = new LdapConnectService();

# bind - Faz a verifica��o do usu�rio no servidor LDAP

# Retorna True ou o erro.

$bindAttempt = $ldap->bind($request->email, $request->password);

# Caso tenha sucesso na valida��o do usu�rio faz o login

if($bindAttempt === true) {

# A fun��o createOrUpdateLogin faz a valida��o no banco se o usu�rio ja existe

# os parametros que devem ser passados s�o:

# 1� - Classe de usuarios e autentica��o

# 2� - Caso v� atualizar ou criar o usuario, devem ser passados os dados que ser�o salvos no banco. (Aten��o: A cria��o somente ser� efetuada caso a vari�vel LDAPAUTOCREATE esteja true)

# 3� - Um array com o nome do campo a ser validado no banco

# caso o login seja efetuado com sucesso ir� retornar true, caso n�o ir� retornar a mensagem de erro de usu�rio n�o cadastrado.

$login = $ldap->createOrUpdateLogin(User::class, [], ["username" => $ldap->getUsername($request->email)]);

# Caso tenha efetuado o login redireciona para a rota home

if($login === true) {

return redirect(route('home'));

}

# Sobreescreve a mensagem de erro para retornar ao usu�rio.

$bindAttempt = $login;

}

# retorna a rota anterior com as mensagens de erro

return redirect()->back()->withErrors([

"error" => $bindAttempt

]);

`

## Personalizando o servi�o:

Para manipular o funcionamento do servi�o basta alterar o arquivo localizado em App\Http\Services\LdapConnectService.php

### Fun��es da classe:

#### Fun��o privada - createConnection:

Cria a conex�o inicial com o servidor ldap

#### Fun��o privada - sanitize:

Limpa a string de busca para evitar LDAP injection

#### Fun��o p�blica - getUsername:

Limpa e padroniza o username

#### Fun��o p�blica - genLoginString:

Fun��o para gerar o login que ser� feito no servidor LDAP,

Caso seu login deva ser de uma forma diferente favor personalizar esta fun��o no arquivo.

exemplo 1:

Caso seja login com email

login: usuario.nome

a fun��o far� o login fazendo a concatena��o com o dominio: usuario.nome@dominio.com

exemplo 2:

Caso seja login com uid.

usu�rio: usuario.nome

a fun��o far� o login fazendo a concatena��o com o base_dn: ud=usuario.nome,dc=example,dc=com

#### Fun��o p�blica - bind:

Far� o bind com o servidor LDAP para validar o usu�rio.

Retornos: True para validado / Mensagem de Error.

#### Fun��o p�blica - findUser:

Esta fun��o somente ir� ser utilizada caso estejam configuradas as vari�veis LDAP_USERNAME e LDAP_PASSWORD

Ela far� a busca de usu�rios no servidor LDAP.

Recebe 2 par�metros:

- Login de busca ( caso tenha @ o tipo de busca ser� mail por padr�o )

- Tipo de busca ( caso seja deixado em branco ira buscar por uid )

#### Fun��o p�blica - createOrUpdateLogin:

Far� a cria��o ou atualiza��o de um cadastro no banco de dados do sistema.

Obs: A cria��o somente ser� efetuada caso a vari�vel LDAP_AUTO_CREATE seja true.

Parametros da fun��o:

- 1� - Model do usu�rio.

- 2� - Array com os dados para cria��o ou atualiza��o do usu�rio.

- 3� - Array com os dados de busca do usu�rio.

Retornos da fun��o:

- True - Caso o login seja efetuado com sucess.

- Mensagem de Erro.

## Como Contrubuir?

- Fa�a um Fork do Projeto.

- Clone o projeto no seu reposit�rio

- Crie uma nova branch com a funcionalidade git branch -b nova-funcionalidade

- commit a nova funcionalidade `git commit -m "feat: funcionalidade"

- Fa�a um push no seu fork git push origin main

- No seu reposit�rio clique em Contribute e abra uma pull request

Obrigado, Qualquer sujest�o fique a vontade para criar uma issue.


All versions of ldap-connector with dependencies

PHP Build Version
Package Version
Requires php Version >=7.4
ext-ldap Version *
laravel/framework Version >=8
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package rafa-carmo/ldap-connector contains the following files

Loading the files please wait ....