Citrix ADC

Configure per-directory client authentication

If you create an action specifying client-side authentication on a per-directory basis, a client identified by a policy associated with the action is not authenticated as part of the initial SSL handshake. Instead, authentication is carried out every time the client wants to access a specific directory on the web server.

For example, if you have multiple divisions in the company, where each division has a folder in which all its files are stored, and you want to know the identity of each client that tries to access files from a particular directory, such as the finance directory, you can enable per-directory client authentication for that directory.

To enable per-directory client authentication, first configure client authentication as an SSL action, and then create a policy that identifies the directory that you want to monitor. When you create the policy, specify your client-authentication action as the action associated with the policy. Then, bind the policy to the SSL virtual server that will receive the SSL traffic.

Create an SSL action and a policy to enable client authentication by using the command line interface

At the command prompt, type the following commands to create an SSL action to enable to client authentication and verify the configuration:

add ssl action <name> [-clientAuth ( DOCLIENTAUTH | NOCLIENTAUTH )]  

show ssl action [<name>]  

add ssl policy <name> -rule <expression> [-action <string>] [-undefAction <string>] [-comment <string>]

show ssl policy [<name>]  


add ssl action ssl-action-1 -clientAuth DOCLIENTAUTH

show ssl action ssl-action-1
1)      Name: ssl-action-1
        Client Authentication Action: DOCLIENTAUTH
                                Hits: 0
                            Undef Hits: 0
                                Action Reference Count: 1

add ssl policy ssl-pol-1 -rule 'REQ.HTTP.METHOD==GET' -reqaction ssl-action-1

sh ssl policy ssl-pol-1
                                Name: ssl-pol-1
                                Rule: REQ.HTTP.METHOD == GET
                                Action: ssl-action-1
                                UndefAction: Use Global
                             Hits: 0
                             Undef Hits: 0

Create an SSL action to enable client authentication by using the GUI

  1. Navigate to Traffic Management > SSL > Policies and, on the Actions tab, click Add.
  2. In the Client Authentication list, select Enabled.

Create and bind an SSL policy to enable client authentication by using the GUI

  1. Navigate to Traffic Management > SSL and, on the Polices tab, click Add.

  2. Navigate to Traffic Management > Load Balancing > Virtual Servers and open an SSL virtual server.

  3. In Advanced Settings, select SSL Policy, and bind the policy to the virtual server.

Configure per-directory client authentication