mirror of
https://github.com/RobThree/TwoFactorAuth.git
synced 2026-08-21 14:52:14 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 85408c4e77 | |||
| 3516aae5a3 | |||
| a2fa4c11a9 | |||
| 57970d3d5f | |||
| 83918a7658 | |||
| 9b2d795acc | |||
| 24f6d2fd10 | |||
| 6d70f9ca8e |
@@ -10,11 +10,16 @@ jobs:
|
|||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version: ['8.2', '8.3']
|
php-version: [8.2, 8.3, 8.4, 8.5]
|
||||||
bacon-version: ['^2', '^3']
|
bacon-version: ["^2", "^3"]
|
||||||
|
exclude:
|
||||||
|
- php-version: 8.4
|
||||||
|
bacon-version: "^2"
|
||||||
|
- php-version: 8.5
|
||||||
|
bacon-version: "^2"
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- uses: shivammathur/setup-php@v2
|
- uses: shivammathur/setup-php@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -10,11 +10,24 @@ jobs:
|
|||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version: ['8.2', '8.3']
|
php-version: [8.2, 8.3, 8.4, 8.5]
|
||||||
endroid-version: ["^3","^4","^5","^6"]
|
endroid-version: ["^3", "^4", "^5", "^6"]
|
||||||
|
exclude:
|
||||||
|
- php-version: 8.4
|
||||||
|
endroid-version: "^3"
|
||||||
|
- php-version: 8.4
|
||||||
|
endroid-version: "^4"
|
||||||
|
- php-version: 8.4
|
||||||
|
endroid-version: "^5"
|
||||||
|
- php-version: 8.5
|
||||||
|
endroid-version: "^3"
|
||||||
|
- php-version: 8.5
|
||||||
|
endroid-version: "^4"
|
||||||
|
- php-version: 8.5
|
||||||
|
endroid-version: "^5"
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- uses: shivammathur/setup-php@v2
|
- uses: shivammathur/setup-php@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -10,10 +10,10 @@ jobs:
|
|||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version: ['8.2', '8.3']
|
php-version: [8.2, 8.3, 8.4, 8.5]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- uses: shivammathur/setup-php@v2
|
- uses: shivammathur/setup-php@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ If you need more in-depth information about the configuration available then you
|
|||||||
|
|
||||||
## Integrations
|
## Integrations
|
||||||
|
|
||||||
- [CakePHP 3](https://github.com/andrej-griniuk/cakephp-two-factor-auth)
|
- [CakePHP plugin](https://github.com/andrej-griniuk/cakephp-two-factor-auth)
|
||||||
- [CI4-Auth: a user, group, role and permission management library for Codeigniter 4](https://github.com/glewe/ci4-auth)
|
- [CI4-Auth: a user, group, role and permission management library for Codeigniter 4](https://github.com/glewe/ci4-auth)
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|||||||
+4
-2
@@ -11,8 +11,10 @@
|
|||||||
include_once str_replace(array('RobThree\\Auth', '\\'), array(__DIR__.'/../lib', '/'), $className) . '.php';
|
include_once str_replace(array('RobThree\\Auth', '\\'), array(__DIR__.'/../lib', '/'), $className) . '.php';
|
||||||
});
|
});
|
||||||
|
|
||||||
// substitute your company or app name here
|
$tfa = new RobThree\Auth\TwoFactorAuth(
|
||||||
$tfa = new RobThree\Auth\TwoFactorAuth(new RobThree\Auth\Providers\Qr\QRServerProvider());
|
new RobThree\Auth\Providers\Qr\QRServerProvider(),
|
||||||
|
"Acme Corp" // substitute your company or app name here
|
||||||
|
);
|
||||||
?>
|
?>
|
||||||
<li>First create a secret and associate it with a user</li>
|
<li>First create a secret and associate it with a user</li>
|
||||||
<?php
|
<?php
|
||||||
|
|||||||
@@ -21,17 +21,20 @@ Example code:
|
|||||||
|
|
||||||
```php
|
```php
|
||||||
use RobThree\Auth\TwoFactorAuth;
|
use RobThree\Auth\TwoFactorAuth;
|
||||||
|
use RobThree\Auth\Providers\Qr\QRServerProvider; // if using library's provider
|
||||||
use RobThree\Auth\Providers\Qr\BaconQrCodeProvider; // if using Bacon
|
use RobThree\Auth\Providers\Qr\BaconQrCodeProvider; // if using Bacon
|
||||||
use RobThree\Auth\Providers\Qr\EndroidQrCodeProvider; // if using Endroid
|
use RobThree\Auth\Providers\Qr\EndroidQrCodeProvider; // if using Endroid
|
||||||
|
|
||||||
|
// using the default Qr Code provider from the library
|
||||||
|
$tfa = new TwoFactorAuth(new QRServerProvider(), "Your app name");
|
||||||
// using Bacon
|
// using Bacon
|
||||||
$tfa = new TwoFactorAuth(new BaconQrCodeProvider());
|
$tfa = new TwoFactorAuth(new BaconQrCodeProvider(), "Your app name");
|
||||||
// using Endroid
|
// using Endroid
|
||||||
$tfa = new TwoFactorAuth(new EndroidQrCodeProvider());
|
$tfa = new TwoFactorAuth(new EndroidQrCodeProvider(), "Your app name");
|
||||||
// using a custom object implementing IQRCodeProvider interface
|
// using a custom object implementing IQRCodeProvider interface
|
||||||
$tfa = new TwoFactorAuth(new MyQrCodeProvider());
|
$tfa = new TwoFactorAuth(new MyQrCodeProvider(), "Your app name");
|
||||||
// using named argument and a variable
|
// using named argument and a variable
|
||||||
$tfa = new TwoFactorAuth(qrcodeprovider: $qrGenerator);
|
$tfa = new TwoFactorAuth(qrcodeprovider: $qrGenerator, issuer: "Your app name");
|
||||||
```
|
```
|
||||||
|
|
||||||
## 3. Shared secrets
|
## 3. Shared secrets
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ abstract class BaseHTTPQRCodeProvider implements IQRCodeProvider
|
|||||||
throw new QRException(curl_error($curlhandle));
|
throw new QRException(curl_error($curlhandle));
|
||||||
}
|
}
|
||||||
|
|
||||||
curl_close($curlhandle);
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,11 +33,15 @@ class EndroidQrCodeWithLogoProvider extends EndroidQrCodeProvider
|
|||||||
|
|
||||||
$logo = null;
|
$logo = null;
|
||||||
if ($this->logoPath) {
|
if ($this->logoPath) {
|
||||||
$logo = Logo::create($this->logoPath);
|
if ($this->endroid6) {
|
||||||
if ($this->logoSize) {
|
$logo = new Logo($this->logoPath, ...$this->logoSize);
|
||||||
$logo->setResizeToWidth($this->logoSize[0]);
|
} else {
|
||||||
if (isset($this->logoSize[1])) {
|
$logo = Logo::create($this->logoPath);
|
||||||
$logo->setResizeToHeight($this->logoSize[1]);
|
if ($this->logoSize) {
|
||||||
|
$logo->setResizeToWidth($this->logoSize[0]);
|
||||||
|
if (isset($this->logoSize[1])) {
|
||||||
|
$logo->setResizeToHeight($this->logoSize[1]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user