Skip to content

SASL support #27

@kazeno

Description

@kazeno

Is your feature request related to a problem?

Currently it's not possible to connect to a SASL enabled server.

Describe the solution you'd like

Being able to set SASL user and password, preferably per server or cluster, but could be globally.

Describe alternatives you've considered

I actually built an image on top of this that adds the following code to Library_Command_Memcached::__construct():

$user = getenv('MEMCACHED_SASL_USER');
$pass = getenv('MEMCACHED_SASL_PASS');
if ($user && $pass) {
    self::$_memcache->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
    self::$_memcache->setSaslAuthData($user, $pass);
}

and runs the following inside its Dockerfile:

RUN apt-get update && apt-get install --no-install-recommends -y \
    libmemcached-dev \
    libsasl2-modules \
    libzip-dev \
    zip \
    && pecl install memcached \
    && docker-php-ext-enable memcached.so \
    && docker-php-ext-install zip \
    && rm -rf /var/lib/apt/lists/*

and setting the env variables MEMCACHED_SASL_USER and MEMCACHED_SASL_PASS, and configuring the GUI to use PECL Memcached for each function did get me connected to the SASL authenticated server. However all the stat graphs are broken, showing instead Warning: A non-numeric value encountered in /var/www/html/Library/Data/Analysis.php on line 56

However, the table near the bottom with the NAME, SIZE, %MEM (etc.) columns does work, so there's probably some incompatibility in the PECL Memcached code pathway.

Additional context

Screenshot of my hack in action, just for reference
image

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingenhancementNew feature or requesthelp wantedExtra attention is needed

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions