diff --git a/app/models/project_services/gitlab_ci_service.rb b/app/models/project_services/gitlab_ci_service.rb
index df92c6158e771c77b9445b81bd64c6648bb5c25e..23ab206efbacd0611328dca71ab5478093259bf9 100644
--- a/app/models/project_services/gitlab_ci_service.rb
+++ b/app/models/project_services/gitlab_ci_service.rb
@@ -21,8 +21,6 @@
 class GitlabCiService < CiService
   include Gitlab::Application.routes.url_helpers
 
-  prop_accessor :token
-
   after_save :compose_service_hook, if: :activated?
 
   def compose_service_hook
@@ -53,6 +51,12 @@ class GitlabCiService < CiService
     end
   end
 
+  def token
+    if project.gitlab_ci_project.present?
+      project.gitlab_ci_project.token
+    end
+  end
+
   def get_ci_commit(sha, ref)
     Ci::Project.find(project.gitlab_ci_project).commits.find_by_sha_and_ref!(sha, ref)
   end
diff --git a/app/services/ci/create_project_service.rb b/app/services/ci/create_project_service.rb
index 839d3f6b444b8261b8fe4c2bb055ad898a5608e8..f42babd238827bb86aca9fbc84bf334e8d3270e4 100644
--- a/app/services/ci/create_project_service.rb
+++ b/app/services/ci/create_project_service.rb
@@ -10,7 +10,7 @@ module Ci
 
         gl_project = ::Project.find(@project.gitlab_id)
         gl_project.build_missing_services
-        gl_project.gitlab_ci_service.update_attributes(active: true, token: @project.token)
+        gl_project.gitlab_ci_service.update_attributes(active: true)
       end
 
       if forked_project
diff --git a/spec/lib/gitlab/backend/grack_auth_spec.rb b/spec/lib/gitlab/backend/grack_auth_spec.rb
index 9bed8f8ee5c43a4c547244d4a3a66a04a7812573..829a9c197ef84c23523d6eea20a427eeb3794f5b 100644
--- a/spec/lib/gitlab/backend/grack_auth_spec.rb
+++ b/spec/lib/gitlab/backend/grack_auth_spec.rb
@@ -175,11 +175,14 @@ describe Grack::Auth do
 
         context "when a gitlab ci token is provided" do
           let(:token) { "123" }
+          let(:gitlab_ci_project) { FactoryGirl.create :ci_project, token: token }
 
           before do
+            project.gitlab_ci_project = gitlab_ci_project
+            project.save
+
             gitlab_ci_service = project.build_gitlab_ci_service
             gitlab_ci_service.active = true
-            gitlab_ci_service.token = token
             gitlab_ci_service.save
 
             env["HTTP_AUTHORIZATION"] = ActionController::HttpAuthentication::Basic.encode_credentials("gitlab-ci-token", token)
diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb
index 3007a15b0b1bec5ffd3b734b3385d70a165a8ff7..580bbec77d18b93faed215a926a2b92c19723c8e 100644
--- a/spec/requests/api/projects_spec.rb
+++ b/spec/requests/api/projects_spec.rb
@@ -89,7 +89,7 @@ describe API::API, api: true  do
 
         it 'returns projects in the correct order when ci_enabled_first parameter is passed' do
           [project, project2, project3].each{ |project| project.build_missing_services }
-          project2.gitlab_ci_service.update(active: true, token: "token")
+          project2.gitlab_ci_service.update(active: true)
           get api('/projects', user), { ci_enabled_first: 'true' }
           expect(response.status).to eq(200)
           expect(json_response).to be_an Array