可視性とアクセス制御

GitLabでは、管理者が特定のコントロールを強制することができます。

可視性とアクセス制御のオプションにアクセスするには:

  1. GitLab に管理者としてログインします。
  2. 管理エリア > 設定 > 一般に移動します。
  3. 可視性とアクセス制御セクションを展開します。

デフォルトのブランチプロテクション

このグローバルオプションは、リポジトリのデフォルトブランチに適用されるブランチ保護を定義します。ブランチ保護は、どのロールがブランチにプッシュでき、どのロールがブランチを削除できるかを指定します。 この場合、_デフォルトは_リポジトリのデフォルトブランチを指し、ほとんどの場合は_master_です。

この設定は、各リポジトリのデフォルトブランチにのみ適用されます。 他のブランチを保護するには、リポジトリでブランチ保護を設定する必要があります。 詳細については、保護ブランチを参照してください。

デフォルトのブランチプロテクションを変更するには

  1. ご希望のオプションを選択してください。
  2. 変更を保存する]をクリックします。

詳しくは保護ブランチをご覧ください。

特定のグループに対してこの設定を変更するには、グループのデフォルトブランチプロテクションを参照してください。

グループオーナーがデフォルトブランチプロテクションを更新できないようにします。

GitLab 13.0から導入されました

デフォルトでは、グループオーナーはグローバルレベルで設定されたブランチ保護を上書きすることができます。

GitLab Premium以上では、GitLab管理者はグループオーナーのこの権限を無効にすることができます。

そのためには:

  1. オーナーがグループごとにデフォルトのブランチ保護を管理できるようにする]チェックボックスをオフにします。
Note:GitLab管理者はグループのデフォルトブランチプロテクションを更新することができます。

デフォルトのプロジェクト作成保護

プロジェクト作成の保護では、プロジェクトを作成できるロールを指定します。

デフォルトのプロジェクト作成保護を変更するには

  1. ご希望のオプションを選択してください。
  2. 変更を保存する]をクリックします。

詳細については、デフォルトのプロジェクト作成レベルを参照してください。

デフォルトのプロジェクト削除防止機能

デフォルトでは、オーナーロールを持つ人であれば誰でも、プロジェクトレベルでもグループレベルでも、プロジェクトを削除することができます。

管理者ユーザーだけがプロジェクトを削除できるようにします:

  1. デフォルトのプロジェクト削除保護チェックボックスをオンにします。
  2. 変更を保存する]をクリックします。

デフォルトの削除延期期間

GitLab 12.6 で導入されました

デフォルトでは、削除マークが付けられたプロジェクトやグループは、7日後に完全に削除されます。 この期間は変更することができ、この期間を0に設定すると、プロジェクトやグループを即座に削除することができます。

この期間を変更するには

  1. ご希望のオプションを選択してください。
  2. 変更を保存する]をクリックします。

デフォルトの削除休会期間を上書き

また、削除マークが付いたプロジェクトはすぐに削除することもできます。 そのためには

  1. プロジェクトを復元します。
  2. プロジェクトの管理」ページの説明に従ってプロジェクトを削除します。

デフォルトのプロジェクトの可視性

新規プロジェクトのデフォルトの可視レベルを設定します:

  1. デフォルトのプロジェクトの可視性を選択します。
  2. 変更を保存する]をクリックします。

プロジェクトの可視性の詳細については、公開をご覧ください。

デフォルトのスニペット表示

新しいスニペットのデフォルトの表示レベルを設定します:

  1. デフォルトのスニペットの可視性を選択します。
  2. 変更を保存する]をクリックします。

スニペットの可視性の詳細については、公開を参照してください。

デフォルトのグループの可視性

新しいグループのデフォルトの可視レベルを設定します:

  1. 希望するデフォルトグループの可視性を選択します。
  2. 変更を保存する]をクリックします。

グループの可視性の詳細については、公開を参照してください。

視界レベルの制限

プロジェクト、スニペット、選択したページで利用可能な表示レベルを設定します:

  1. 希望する視認性のレベルを確認してください。
  2. 変更を保存する]をクリックします。

プロジェクトの可視性の詳細については、公開をご覧ください。

インポートソース

ユーザーがプロジェクトをインポートできるホスティングサイトを指定します:

  1. 各ホスティングサイト名の横にあるチェックボックスをオンにします。
  2. 変更を保存する]をクリックします。

プロジェクトエクスポート

プロジェクトのエクスポートを有効にします:

  1. プロジェクトのエクスポートを有効にするチェックボックスをオンにします。
  2. 変更を保存する]をクリックします。

詳しくは、プロジェクトとそのデータのエクスポートをご覧ください。

有効なgitアクセスプロトコル

GitLab 8.10 で導入されました

GitLabのアクセス制限を使えば、ユーザーがGitLabと通信できるプロトコルを選択できます。

アクセスプロトコルを無効にしても、そのポート経由のサーバー自体へのアクセスはブロックされません。 プロトコルに使用されているポート、SSHやHTTP(S)、アクセスは可能です。 GitLabの制限はアプリケーションレベルで適用されます。

有効な git アクセスプロトコルを指定します:

  1. ドロップダウンから必要なgitアクセスプロトコルを選択します:
    • SSHとHTTPの両方(S)
    • SSHのみ
    • HTTPのみ(S)
  2. 変更を保存する]をクリックします。

SSH と HTTP(S) の両方が有効な場合、ユーザーはどちらかのプロトコルを選択できます。

1つのプロトコルのみが有効な場合:

  • プロジェクトページには許可されたプロトコルのURLだけが表示され、それを変更するオプションはありません。
  • SSHキーの追加やパスワードの設定など、ユーザー側のアクションが必要な場合は、URLのプロトコルにカーソルを合わせるとツールチップが表示されます。

Project URL with SSH only access

これらのUI制限に加えて、GitLabは選択されていないプロトコルに対する全てのGitアクションを拒否します。

重要:GitLab 10.7から、GitLab RunnerがCI/CDジョブから行うGitクローンやフェッチリクエストに対して、_SSHのみが_選択されていてもHTTP(S) プロトコルが許可されるようになりました。

HTTP 用のカスタム Git クローン URL(S)

GitLab 12.4で導入されました

HTTP(S)用にプロジェクトの git クローン URL をカスタマイズすることができます。 これはクローンパネルに影響します:

Clone panel

例えば

  • あなたの GitLab インスタンスはhttps://example.comにあり、プロジェクトのクローン URL はhttps://example.com/foo/bar.gitのようになります。
  • クローンURLをhttps://git.example.com/gitlab/foo/bar.git のようにしたい場合は、この設定をhttps://git.example.com/gitlab/にします。

Custom Git clone URL for HTTP

HTTPのカスタムGitクローンURLを指定するには(S):

  1. カスタムgitクローンのルートURLを入力してください。(S)。
  2. Save changesをクリックしてください。
注意:SSHクローンURLはgitlab.rbgitlab_rails['gitlab_ssh_host'] およびその他の関連設定を行うことでカスタマイズできます。

RSA、DSA、ECDSA、ED25519 SSHキー

これらのオプションは、SSH キーに許可されるタイプと長さを指定します。

キータイプごとに制限を指定するには

  1. ドロップダウンから希望のオプションを選択します。
  2. 変更を保存する]をクリックします。

詳しくはSSHキーの制限をご覧ください。

プロジェクト用にミラーを設置可能

GitLab 10.3から導入されました

このオプションはデフォルトで有効になっています。 無効にすることで、プルとプッシュの両方のミラーリングがすべてのリポジトリで機能しなくなり、プロジェクト単位で管理者によってのみ再度有効にすることができます。

Mirror settings