Twitter OAuth 1.0a OmniAuth プロバイダ (非推奨)

caution
この機能はGitLab 16.3で非推奨となり、17.0では削除される予定です。代わりに他のOmniAuthプロバイダを使用してください。この変更はブレークチェンジです。
note
Twitter OAuth 2.0はサポートされません。

Twitter OmniAuthプロバイダを有効にするには、Twitterにアプリケーションを登録する必要があります。TwitterがクライアントIDとシークレットキーを生成します。

Twitterアプリケーションを新規作成します。

  1. Twitterアプリケーション管理にサインインします。

  2. 新しいアプリを作成]を選択します。

  3. アプリケーションの詳細を入力します。
    • 名前これは何でもかまいません。<Organization>'s GitLab<Your Name>'s GitLab など、わかりやすいものを考えてください。
    • 説明説明文を作成します。
    • ウェブサイトGitLabインストールのURL。例えばhttps://gitlab.example.com
    • コールバックURLhttps://gitlab.example.com/users/auth/twitter/callback
    • 開発者同意書はい、同意します」を選択してください。

    Twitter App Details

  4. Twitterアプリケーションを作成]を選択します。

アプリケーションの設定を行います。

  1. 設定タブを選択します。

  2. コールバックURL]の下にある[Twitterでのサインインにこのアプリケーションを使用することを許可する]チェックボックスを選択します。

  3. 設定を更新]を選択して変更を保存します。

  4. キーとアクセストークン]タブを選択します。

  5. APIキーと APIシークレットを探します。このタブを開いたまま設定を続けます。

    Twitter app

GitLab サーバー上でアプリケーションを設定します。

  1. GitLab サーバーで設定ファイルを開きます。

    Linuxパッケージ・インストールの場合:

      sudo editor /etc/gitlab/gitlab.rb
    

    セルフコンパイルによるインストールの場合:

      cd /home/git/gitlab
       
      sudo -u git -H editor config/gitlab.yml
    
  2. 共通設定を構成して、シングルサインオンプロバイダとしてtwitter 。これにより、既存のGitLabアカウントを持っていないユーザーのためのJust-In-Timeアカウントプロビジョニングが可能になります。

  3. プロバイダー設定を追加します。

    Linuxパッケージ・インストールの場合:

      gitlab_rails['omniauth_providers'] = [
        {
          name: "twitter",
          # label: "Provider name", # optional label for login button, defaults to "Twitter"
          app_id: "<your_api_key>",
          app_secret: "<your_api_secret>"
        }
      ]
    

    セルフコンパイルによるインストールの場合:

    - { name: 'twitter',
        # label: 'Provider name', # optional label for login button, defaults to "Twitter"
        app_id: '<your_api_key>',
        app_secret: '<your_api_secret>' }
    
  4. TwitterKeys and Access Tokensタブから、<your_api_key> をAPIキーに変更します。

  5. TwitterKeys and Access Tokensタブから、<your_api_secret> をAPIシークレットに変更します。

  6. 設定ファイルを保存します。

  7. 変更を有効にするには

サインインページで、通常のサインインフォームの下に Twitter オプションがあります。オプションを選択して認証プロセスを開始します。TwitterがサインインとGitLabアプリケーションの作成者を尋ねます。認証後、GitLabに戻り、サインインします。