SAFE データガイド

SAFE データガイド

SAFE データとは何か?

データチームは SAFE データに関して GitLab SAFE フレームワークに従っています。SAFE データおよび SAFE フレームワークとの関連で、MNPI および RESTRICTED_SAFE も使用される場合があります。

SAFE データへのアクセス

Tableau

Tableau ダッシュボードへのアクセスは、ライセンスタイプに基づいています(Tableau ハンドブックページの Tableau ライセンスを参照してください)。これはジョブの役割によって優先順位が付けられ、SAFE データアクセスフレームワークによって管理されます。Tableau では、ユーザーグループを使用して SAFE セキュリティフレームワークを適用しています。ダッシュボードが存在できる4つの主要なプロジェクト/フォルダーがあります - Development、Production、Ad-hoc、Resources。Development、Production、Ad-hoc の各フォルダーには、Finance や Sales など GitLab のさまざまなチーム向けのサブフォルダーがあります。各チームのフォルダー内には、コンテンツを公開できる2つの主要なフォルダー(General と SAFE)があります。

  • General フォルダーには GitLab の誰でも閲覧できるデータが含まれています。
  • SAFE フォルダーには、重要な非公開情報(MNPI)を含むダッシュボードが含まれており、General SAFE アクセスユーザーグループに属するユーザーのみアクセスできます。

GitLab の SAFE 基準を満たすデータを扱う Tableau クリエーターの開発ワークフローは、部門の Development プロジェクト内の SAFE フォルダーに公開することです。クリエーターが Development プロジェクト内の SAFE フォルダー以外にワークブックを公開したい場合は、Tableau プロジェクトの All Requests テンプレートを使用して Issue を開き、BI Platform チームによるコンテンツのレビューをリクエストしてください。BI Platform チームは、Development プロジェクトの SAFE フォルダー以外にコンテンツを公開することが安全かどうかについて yes/no の決定を提供します。

GitLab 一般アクセスダッシュボードへのアクセス

一般アクセスダッシュボードはすべての GitLab チームメンバーが利用できます。Tableau へのアクセスリクエスト(チームメンバーがまだアクセスを持っていない場合)は必要ですが、これらの一般アクセスダッシュボードを閲覧するためにこれ以上のアクセスリクエストは必要ありません。権限とアクセスの詳細については、ハンドブックの Tableau セクションを参照してください。

SAFE ダッシュボードへのアクセス

すべての SAFE ダッシュボードはさまざまなチームの SAFE フォルダー内に保存されており、権限はユーザーのアクセスグループメンバーシップによって管理されます。1つの SAFE ダッシュボードへのアクセスは、すべての SAFE ダッシュボードへのアクセスを提供します。SAFE プロジェクト/フォルダーへのアクセスにより、チームメンバーはインサイダー取引ポリシーの対象となる指定インサイダーになります。General SAFE アクセスユーザーグループへのメンバーシップを通じて SAFE ダッシュボード(とスペース)へのアクセスを得るには以下が必要です:

  1. 直属マネージャーの承認

SAFE ダッシュボードへのアクセスを得るには:

  1. Tableau - SAFE アクセス - [申請者名] の アクセスリクエスト を作成する。
  2. 直属マネージャーに承認をリクエストする。新しいアクセスリクエスト(/issue)の場合は承認が必要です。
  3. 処理が完了すると、Tableau にログインして、リクエストした SAFE ダッシュボードと SAFE アクセスが必要な他のすべてのダッシュボードにアクセスできるようになります。

SAFE データへのアクセス Snowflake 内の SAFE データへのアクセス方法については、こちらを参照してください。

Google スプレッドシートの SAFE データは、SAFE ダッシュボードへのアクセスの手順を使用してアクセスできます。Google スプレッドシートの SAFE データへのアクセスを得るには、これらの手順に従ってください。

SAFE ダッシュボードアクセスのプロビジョニング解除

データチームは 90 日ごとにデータヘルスとセキュリティ監査を実施します。この監査では、データチームが非アクティブな使用状況も確認します。GitLab チームメンバーが 90 日以上 SAFE ダッシュボードスペースを使用していない場合、アクセスはプロビジョニング解除されます。SAFE ダッシュボードスペースへのアクセスを再度取得するには、新しいアクセスリクエストを作成し、すべての承認を得る必要があります。

さまざまな限定アクセスユーザーグループへのアクセス

内部監査関連データや営業開発 SAFE データなど、アクセスしたい限定アクセスユーザーグループにはいくつかの変形があります。これらのグループの説明と、アクセスをリクエストする方法についてはこちらを参照してください。

Snowflake

すべての SAFE データは Snowflake の別個のデータベーススキーマ内のテーブルとビューに保存されています。1つのテーブルへのアクセスはすべての SAFE テーブルへのアクセスを提供します。SAFE データへのアクセスには以下が必要です:

  1. 直属マネージャーの承認。

SAFE データへのアクセスを得るには:

  1. アクセスリクエストを作成し、ニーズと目的を提供する。
  2. 直属マネージャーに承認をリクエストする。新しいアクセスリクエスト(/issue)の場合は承認が必要です。
  3. リクエストが承認されたら、Snowflake プロビジョナーにタグ付けすると、リクエストが処理されます。
  4. 処理が完了すると、Snowflake の SAFE データ(スキーマ)にアクセスできるようになります。

データ開発

Snowflake の SAFE データは別個のスキーマに保存されています。SAFE データを含むスキーマには RESTRICTED_SAFE_* というプレフィックスが付いています。MNPI データを含むすべてのモデルは、これらのスキーマに保存する必要があります。このプロセスを保護する CI パイプラインsafe_model_script)があります。作成または変更されたすべてのモデルは CI パイプラインによってチェックされます。開発者として、以下のガバナンスを考慮する必要があります:

  • MNPI データを含むテーブル/モデルから読み取り、MNPI がモデルで使用される場合は mnpi タグを適用する。その後、データは RESTRICTED_SAFE_* スキーマに保存する必要があります。
  • MNPI データを含むテーブル/モデルから読み取るが、MNPI がモデルで使用されない場合は mnpi_exception タグを適用する。つまり、MNPI モデルから NON-MNPI フィールドのみが使用される場合です。
  • どのタグを適用するかを決定するのはエンジニアの責任です。GitLab SAFE フレームワークに対してモデルで公開されているデータを確認してください。疑問がある場合は、Slack の #SAFE チャンネルに連絡してください。
  • CI パイプラインはファクトベースで助けてチェックするためにあります(アップストリームモデルタグと現在のモデルタグ)。

このビデオは Snowflake 上での SAFE データプログラム実装の概要を提供します。

以下の図は SAFE データを扱う際や参照する際のプロセスを詳細に説明しています。

MR プロセス