diff --git a/openstack/identity/v2/requests.go b/openstack/identity/v2/requests.go
index afb92d5..4edbfef 100644
--- a/openstack/identity/v2/requests.go
+++ b/openstack/identity/v2/requests.go
@@ -15,14 +15,14 @@
 // Authenticate passes the supplied credentials to the OpenStack provider for authentication.
 // If successful, the caller may use Token() to retrieve the authentication token,
 // and ServiceCatalog() to retrieve the set of services available to the API user.
-func Authenticate(options gophercloud.AuthOptions) (AuthResults, error) {
+func Authenticate(c *gophercloud.ServiceClient, options gophercloud.AuthOptions) (AuthResults, error) {
 	type AuthContainer struct {
 		Auth auth `json:"auth"`
 	}
 
 	var ar AuthResults
 
-	if options.IdentityEndpoint == "" {
+	if c.Endpoint == "" {
 		return nil, ErrEndpoint
 	}
 
@@ -30,7 +30,7 @@
 		return nil, ErrCredentials
 	}
 
-	url := options.IdentityEndpoint + "/tokens"
+	url := c.Endpoint + "/tokens"
 	err := perigee.Post(url, perigee.Options{
 		ReqBody: &AuthContainer{
 			Auth: getAuthCredentials(options),
@@ -75,10 +75,10 @@
 }
 
 // GetExtensions returns the OpenStack extensions available from this service.
-func GetExtensions(options gophercloud.AuthOptions) (ExtensionsResult, error) {
+func GetExtensions(c *gophercloud.ServiceClient, options gophercloud.AuthOptions) (ExtensionsResult, error) {
 	var exts ExtensionsResult
 
-	url := options.IdentityEndpoint + "/extensions"
+	url := c.Endpoint + "/extensions"
 	err := perigee.Get(url, perigee.Options{
 		Results: &exts,
 	})
diff --git a/openstack/utils/client.go b/openstack/utils/client.go
index 6dda38f..7e3aa12 100644
--- a/openstack/utils/client.go
+++ b/openstack/utils/client.go
@@ -47,7 +47,8 @@
 		Options: ao,
 	}
 
-	ar, err := identity.Authenticate(ao)
+	c := &gophercloud.ServiceClient{Endpoint: ao.IdentityEndpoint}
+	ar, err := identity.Authenticate(c, ao)
 	if err != nil {
 		return client, err
 	}
