PHPackages                             notakey/simplesamlphp-module-notakey - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. notakey/simplesamlphp-module-notakey

ActiveSimplesamlphp-module[Authentication &amp; Authorization](/categories/authentication)

notakey/simplesamlphp-module-notakey
====================================

A SimpleSAMLphp module adding support for Notakey multi factor authentication with free mobile app.

2.20.1(5y ago)0150MITPHPPHP &gt;=5.5.9

Since Oct 22Pushed 5y agoCompare

[ Source](https://github.com/notakey/simplesamlphp-module-notakey)[ Packagist](https://packagist.org/packages/notakey/simplesamlphp-module-notakey)[ RSS](/packages/notakey-simplesamlphp-module-notakey/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (4)Versions (35)Used By (0)

Notakey module for SimpleSAMLphp
================================

[](#notakey-module-for-simplesamlphp)

Configuration
-------------

[](#configuration)

### Authsource

[](#authsource)

Needs configuration in authsources listing all allowed backends

```
'notakey-auth' => array(
    'notakey:Process',
    // if username remember me is enabled
    // remove domain from username when remembering
    "attrs.stripdomain" =>  false,
    // the attribute to populate username
    "user_id.attr" =>  "uid",
    // enable additional logging
    "debug" =>  true,
    // multiple endpints are possible (Notakey services)
    // user will have option to select one during authentication
    'endpoints' => array(
        array(
            'name' => 'Notakey service 1',
            'url' => 'https://api.mydomain.com/',
            'service_id' => '8c0b4f63-c1e9-4d1c-990e-12312312312',
            'client_id' => 'api-client-id',
            'client_secret' => 'client-secret',
            'service_logo' => '/userlogos/8c0b4f63-c1e9-4d1c-990e-8fc72740791c.png',
            // if using authentication profile, specify it here
            "profile_id" => "1231231-c1e9-4d1c-990e-12312312312",
            // Source name from authsources
            "stepup-source" =>  "ntk-radius",
            // Valid for 1 year
            "stepup-duration" => "P1Y"
        ),
        array(
            'name' => 'Notakey service 2',
            'url' => 'https://api.mydomain.com/',
            'service_id' => '8c0b4f63-c1e9-4d1c-990e-892746367623',
            'client_id' => 'api-client-id',
            'client_secret' => 'client-secret',
            'service_logo' => '/userlogos/8c0b4f63-c1e9-4d1c-990e-8fc72740791c.png'
        )
    )
)
```

### Filter mode

[](#filter-mode)

Filter configuration is possible as well, in this case user will pass primary authentication once (e.g. use password) and then prompted for authentication with mobile. In sequential logins on other SPs only mobile authentication will be verified.

In base config:

```
"authproc.idp" => array(
    "90" => array(
        "class" => "notakey:Filter",
        "user_id.attr" => "uid",
        "debug" => true,
        "endpoints" => [
            array(
                'name' => 'Notakey service 1',
                'url' => 'https://api.mydomain.com/',
                'service_id' => '8c0b4f63-c1e9-4d1c-990e-12312312312',
                'client_id' => 'api-client-id',
                'client_secret' => 'client-secret',
                'service_logo' => '/userlogos/8c0b4f63-c1e9-4d1c-990e-8fc72740791c.png'
            )
        ]
    )
)
```

### Customizing authentication requests

[](#customizing-authentication-requests)

To customize authentication requests you can use authentication profiles. These are configured in Notakey Authentication Appliance administration dashboard for specific service. This will allow use of localized authentication request messages according to user's language and to adjust authentication request timeout values and security requirements.

Notakey Authentication Appliance
--------------------------------

[](#notakey-authentication-appliance)

If running in NAA environment, configure using cli.

- As primary authentication source:

```
    ntk cfg :sso.auth.\"notakey-nopass\" '{
        "module": "notakey:Process",
        "endpoints": [
            {
                "name": "Notakey",
                "url": "https://mfa.mydomain.com/",
                "service_id": "bcd05d09-40cb-4965-8d94-3142546576",
                "client_id": "api-client-id",
                "client_secret": "client-secret",
                "service_logo": "/userlogos/somelogo.png",
                "profile_id": "bcd05d09-40cb-4965-8d94-3142546576" // if using authentication profile, specify it here
            },
            // define multiple if needed (e.g. using multiple services, one for internal users, another for external)
        ]
    }' --json-input
```

- As additional factor to primary authentication:

```
    ntk cfg :sso.base.\"authproc.idp\".\"90\" '{
        "class": "notakey:Filter",
        -- this defines which attribute stores users username as it will be sent to Notakey API, defaults to sAMAccountName
        "user_id.attr": "uid",
        -- disables domain showing to user, if it is present in Notakey API response
        "attrs.stripdomain": false,
        "debug": true,
        "endpoints": [
            {
                "name": "Notakey",
                "url": "https://mfa.mydomain.com/",
                "service_id": "bcd05d09-40cb-4965-8d94-3142546576",
                "client_id": "api-client-id",
                "client_secret": "client-secret",
                "service_logo": "/userlogos/somelogo.png"
            },
            -- define multiple if needed (e.g. using multiple services, one for internal users, another for external)
        ]
    }' --json-input
```

- Enables this module

```
    ntk cfg :sso.modules '[..., "notakey"]' --json-input
```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~30 days

Recently: every ~85 days

Total

31

Last Release

1859d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1211bd3d65e3ee8fcabe2cf8b499c2a94ab977b113a42e4ba1c1441d363d267d?d=identicon)[iasmanis](/maintainers/iasmanis)

---

Top Contributors

[![iasmanis](https://avatars.githubusercontent.com/u/28524181?v=4)](https://github.com/iasmanis "iasmanis (123 commits)")

---

Tags

2fanotakey

### Embed Badge

![Health badge](/badges/notakey-simplesamlphp-module-notakey/health.svg)

```
[![Health](https://phpackages.com/badges/notakey-simplesamlphp-module-notakey/health.svg)](https://phpackages.com/packages/notakey-simplesamlphp-module-notakey)
```

###  Alternatives

[pragmarx/google2fa

A One Time Password Authentication package, compatible with Google Authenticator.

2.0k82.4M164](/packages/pragmarx-google2fa)[pragmarx/google2fa-qrcode

QR Code package for Google2FA

12024.6M37](/packages/pragmarx-google2fa-qrcode)[markshust/magento2-module-disabletwofactorauth

The DisableTwoFactorAuth module provides the ability to disable two-factor authentication.

2282.7M6](/packages/markshust-magento2-module-disabletwofactorauth)[laragear/two-factor

On-premises 2FA Authentication for out-of-the-box.

339785.3k8](/packages/laragear-two-factor)[scheb/2fa-bundle

A generic interface to implement two-factor authentication in Symfony applications

6914.0M62](/packages/scheb-2fa-bundle)[pragmarx/recovery

Create recovery codes for two factor auth

893.4M19](/packages/pragmarx-recovery)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
