Difference between revisions of "NATS4 MySQL Auth"

From TMM Wiki
Jump to navigationJump to search
Line 2: Line 2:
 
| show_members_admin_section = true
 
| show_members_admin_section = true
 
}}
 
}}
 +
 +
MySQL Auth is a feature supported by [[NATS]] that allows you to authenticate [[Ct#Member|members]] against an external MySQL database. This is useful for clients who use an external member database to store information.
  
 
== Setting up MySQL Auth ==
 
== Setting up MySQL Auth ==
Line 7: Line 9:
 
''This article applies to mod_auth_mysql 3.0''
 
''This article applies to mod_auth_mysql 3.0''
 
=== Biller Member Management ===
 
=== Biller Member Management ===
Tell the biller to turn off user management on their end.
+
 
 +
In order to use the MySQL Auth feature, you must first tell the biller to turn off user management on their end.
  
 
=== .htaccess ===
 
=== .htaccess ===
For NATS password management you'll have to use a mysql auth method, like Apache's mod_auth_mysql. Below are specific configuration settings for mod_auth_mysql:
+
For NATS password management, you will have to use a MySQL auth method, such as Apache's ''mod_auth_mysql''. The following code consists of specific configuration settings for ''mod_auth_mysql'':
  
 
<pre>
 
<pre>
Line 29: Line 32:
 
</pre>
 
</pre>
  
Replace X in "siteid=X" to the ID number of one of your sites. To use a
+
Replace X in "siteid=X" with the [[ID Numbers|ID number]] of the site you would like to affect. If you would like to use a single member's area for all of your sites, simply remove "AND siteid=X" from the line. For more options and information, please see our [[NATS4 Multisite Access|Multisite Access]] article. The ''NOT'' condition will prevent anyone from logging in without a username or password.
single member's area for all of your sites, remove "AND siteid=X" from
 
the line. See the [[NATS4 Multisite Access|Multisite Access]] article for more options.
 
The ''NOT'' condition prevents anyone from logging in without a username or password.
 
  
To use your old password files in combination with mod_auth_mysql,
+
If you would like to use your old password files in combination with the ''mod_auth_mysql'' feature, simply add the following line to your configuration file on top of the auth ''mod_auth_mysql'' lines:
add the following line to the configuration file on top of the auth
 
mod_auth_mysql lines:
 
  
 
<pre>
 
<pre>
Line 53: Line 51:
  
 
=== Alternate Server Member Management ===
 
=== Alternate Server Member Management ===
If your NATS database is not on the same server as your member's
+
If your [[NATS]] database is on a different server from your site member's area, use the following instructions to use MySQL Auth:
area, use the following instructions.
+
 
 +
Use the GRANT command to give appropriate permissions to the [[NATS]] database username at the IP address of each member's area server. When this is done, change the value of the AuthMySQLHost directive to the IP address of the [[NATS]] server.
  
Use the GRANT command to grant the appropriate permissions to the NATS
+
If you do not know how to do this, please request that your Host or Server admin allows the NATS database user to access the database from your member's area servers.
database username at the IP address of each member's area server and
 
change the value of the AuthMySQLHost directive to the IP address of
 
the NATS server. If you don't know how to do this, please request your
 
Host or Server admin to allow the NATS database user to access the
 
database from your members area servers.
 
  
 
== See Also ==
 
== See Also ==

Revision as of 14:58, 3 August 2010

NATS 4
Members Admin
The Members Admin
View Member Details
Add Member
MySQL Auth
Mod Authn DB
Multisite Access
Member Logging
Member Password Retrieval
OpenID Connect
Mod Auth OpenIDC
ID Numbers

MySQL Auth is a feature supported by NATS that allows you to authenticate members against an external MySQL database. This is useful for clients who use an external member database to store information.

Setting up MySQL Auth

This article applies to mod_auth_mysql 3.0

Biller Member Management

In order to use the MySQL Auth feature, you must first tell the biller to turn off user management on their end.

.htaccess

For NATS password management, you will have to use a MySQL auth method, such as Apache's mod_auth_mysql. The following code consists of specific configuration settings for mod_auth_mysql:

AuthMYSQLEnable on
AuthName "Members Only"
AuthType Basic
AuthGroupFile /dev/null
AuthMySQLHost localhost
AuthMySQLDB <name of the nats datatbase>
AuthMySQLUser <user for the nats database>
AuthMySQLPassword <password for the user for the nats database>
AuthMySQLUserTable member_auth
AuthMySQLNameField username
AuthMySQLPasswordField password
AuthMySQLPwEncryption none
AuthMySQLUserCondition "siteid=X AND username != '' AND password != ''"
require valid-user

Replace X in "siteid=X" with the ID number of the site you would like to affect. If you would like to use a single member's area for all of your sites, simply remove "AND siteid=X" from the line. For more options and information, please see our Multisite Access article. The NOT condition will prevent anyone from logging in without a username or password.

If you would like to use your old password files in combination with the mod_auth_mysql feature, simply add the following line to your configuration file on top of the auth mod_auth_mysql lines:

AuthMySQLAuthoritative Off

Notes

If other sites on the server use htaccess for authentication, but aren't using mod_auth_mysql, add the following options to the top of their htaccess files:

AuthMySQLEnable Off
AuthMySQLAuthoritative Off

Alternate Server Member Management

If your NATS database is on a different server from your site member's area, use the following instructions to use MySQL Auth:

Use the GRANT command to give appropriate permissions to the NATS database username at the IP address of each member's area server. When this is done, change the value of the AuthMySQLHost directive to the IP address of the NATS server.

If you do not know how to do this, please request that your Host or Server admin allows the NATS database user to access the database from your member's area servers.

See Also