User Guide - UPLINX Phone Control Tool
User Guide - UPLINX Phone Control Tool

 

 

Home >  User Guide - UPLINX Phone Control Tool > Troubleshooting Remote Phone Control Tool > Phone Authentication Issues > 69xx Phone Authentication

  69xx Phone Authentication

 

 

 

 

The CUCM standard authentication replies are not understood by the 69xx phones for CUCM releases after 11.5.

 

Reason

The Apache web server that returns the additional X- options in HTTP header(in red in below Authentication answer from CUCM) seem to break the parsing of the CUCM standard authentication replies on 69xx phones.

 

HTTP/1.1 200

X-Frame-Options: SAMEORIGIN

Strict-Transport-Security: max-age=31536000; includeSubdomains

Content-Security-Policy: default-src *; script-src * 'unsafe-inline' 'unsafe-eval';style-src * 'unsafe-inline'; img-src * data: 'unsafe-inline';

X-Content-Type-Options: nosniff

X-XSS-Protection: 1; mode=block

Set-Cookie: JSESSIONID=F9F75B2C4B8A08663CA0F4BFF40D8239; Path=/ccmcip; Secure; HttpOnly

Content-Type: text/html

Content-Length: 10

Date: Fri, 27 May 2022 12:10:59 GMT

Connection: close

Server:

 

AUTHORIZED

 

 

Simplest Workaround

1.Upload to a web server (accessible from phone) a simple text file with text "AUTHORIZED" and change the phone's Authentication URL in device settings to access this URL.

2.To verify, access this text file from any web browser with this Authentication URL and the text "AUTHORIZED" (without quotes) should appear.

 

 Workaround with Security

Please note that the text workaround is not very safe as anyone can access the phone's web screen. To improve, you could create a web script that checks the pre-authentication HTTP header for the supplied username and password that appears in the Application User settings on the Server tab of UPLINX Phone Control Tool.

 

Sample ASPX Script

 

Below is a sample script to host on an IIS web server:
<%@ Page Language="vb" AutoEventWireup="false" %>

<%

    ' Constants for username and password

    Const AUTH_USERNAME As String = "pct_app_user"

    Const AUTH_PASSWORD As String = "cisco,123"

 

    ' Function to decode base64-encoded authorization header

    Function DecodeBase64(encoded As String) As String

        Dim bytes = Convert.FromBase64String(encoded)

        Return Encoding.UTF8.GetString(bytes)

    End Function

 

    ' Check the Authorization header

    Dim authHeader As String = Request.Headers("Authorization")

    If Not String.IsNullOrEmpty(authHeader) AndAlso authHeader.StartsWith("Basic ") Then

        ' Extract and decode the credentials from the Authorization header

        Dim encodedCredentials As String = authHeader.Substring(6)

        Dim decodedCredentials As String = DecodeBase64(encodedCredentials)

 

        ' Split the decoded credentials into username and password

        Dim credentials As String() = decodedCredentials.Split(":"c)

        If credentials.Length = 2 Then

            Dim username As String = credentials(0)

            Dim password As String = credentials(1)

 

            ' Check if the credentials match the constants

            If username = AUTH_USERNAME AndAlso password = AUTH_PASSWORD Then

                Response.ContentType = "text/html"

                Response.Write("AUTHORIZED")

                Response.End()

            End If

        End If

    End If

 

    ' If authentication fails, respond with "UN-AUTHORIZED"

    Response.ContentType = "text/html"

    Response.Write("UN-AUTHORIZED")

    Response.End()

%>

 

Here are the steps to install above script on an IIS web server:

 

1.Install IIS through Control Panel > Programs > Turn Windows features on or off > Check Internet Information Services.

2.Create and save Auth6900.aspx file with the above script to the default IIS directory (ie C:\inetpub\wwwroot)

3.To test, open a web browser and navigate to http://<ip>/Auth6900.aspx.

4.Set the 'Authentication Server' in the CUCM phone config page to http://<ip>/Auth6900.aspx. The Secure Authentication URL should be empty or set the same URL. This depends on the phone model, try first with empty Secure Authentication.

 

 

 

Copyright © 2024 UPLINX - Last updated 19 Dec 2024