Snowflake MFAとSSO設定入門|認証を強化する2つの仕組み

Snowflake MFAとSSO設定入門|認証を強化する2つの仕組み Snowflake

はじめに:なぜMFAとSSOを学ぶの?

こんにちは!今回はSnowflakeのセキュリティを一段階レベルアップさせる多要素認証(MFA)シングルサインオン(SSO)の設定方法を、初心者向けにやさしく解説します。

パスワードだけの認証は、漏れてしまったらアウト。データウェアハウスには会社の重要データがどっさり入っているので、「パスワード+α」で守るMFAや、IdP(IDプロバイダー)経由でログインを一元化するSSOは、もはや必須の知識です。Snowflakeネットワークポリシーと組み合わせれば、さらに強固なセキュリティ対策ができますよ!

Snowflake MFAとSSOで多要素認証とシングルサインオンを実装しセキュリティを強化する仕組みを示す概念図

MFAとSSOってそもそも何?

MFA(多要素認証)

MFAは、ログイン時にパスワードに加えてもう一つの「要素」を要求する仕組みです。SnowflakeではDuo Securityが標準で組み込まれており、ユーザーがスマホアプリで「承認」をタップしないとログインできなくなります。追加コストもかかりません。

SSO(シングルサインオン)

SSOは、Okta、Azure AD(Microsoft Entra ID)、Google WorkspaceなどのIdP(Identity Provider)に一度ログインすれば、Snowflakeを含む複数サービスにパスワード再入力なしで入れる仕組み。SnowflakeはSAML 2.0に対応しています。

MFAを有効にする方法

Snowflake のMFAは、ユーザー単位で「自分で登録」するスタイルです。管理者が強制することもできます。

ユーザー側の登録手順(Snowsight)

  1. 右下のユーザー名 → My profile を開く
  2. Multi-factor authentication」の Enroll をクリック
  3. スマホにDuo Mobileアプリをインストールし、QRコードを読み取って完了

管理者からMFAを必須にする

-- 特定ユーザーにMFAを強制する
ALTER USER taro_yamada SET 
  MINS_TO_BYPASS_MFA = 0,
  DISABLE_MFA = FALSE;

-- ログイン時のMFAキャッシング(再要求の間隔)
ALTER ACCOUNT SET ALLOW_CLIENT_MFA_CACHING = TRUE;

ALLOW_CLIENT_MFA_CACHING を有効にすると、4時間以内の再ログインではMFA確認をスキップできて、ストレスが減ります。

SSOを設定する方法

SSOは少し手順が多いですが、流れさえつかめば怖くありません。ここではSAML SSOの基本を紹介します。

SnowflakeでDuo Mobileを使ったMFA設定とSAML SSO連携によりログイン認証を強化する流れを示す構成図

SAML統合の作成

IdP側で「Snowflake用アプリ」を作成し、メタデータ(発行者URLや証明書)を取得したら、Snowflake側で次のSQLを実行します。

CREATE SECURITY INTEGRATION my_okta_sso
  TYPE = SAML2
  ENABLED = TRUE
  SAML2_ISSUER = 'http://www.okta.com/xxxxxxx'
  SAML2_SSO_URL = 'https://your-company.okta.com/app/xxx/sso/saml'
  SAML2_PROVIDER = 'OKTA'
  SAML2_X509_CERT = 'MIIDpDCCAoy...'
  SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = 'Okta';

ユーザーをSSO対応にする

-- LOGIN_NAMEをIdPのメールアドレスに合わせる
ALTER USER taro_yamada SET 
  LOGIN_NAME = 'taro@example.com'
  DISABLED = FALSE;

運用時のポイントと注意点

  • ACCOUNTADMINだけはSSOに頼り切らない:IdP障害時の緊急ログイン用に、パスワード+MFAでアクセスできる管理者を最低1人残しましょう。
  • MFAデバイス紛失への備え:管理者は ALTER USER ... SET DISABLE_MFA = TRUE で一時的に無効化できます。
  • 権限管理と組み合わせる:認証を強化したら、RBACカスタムロールで「誰が何をできるか」も整えるとセキュリティは万全です。

まとめ

MFAは個人の鍵を二重ロックする仕組み、SSOは会社全体の鍵を一本化する仕組み。両方とも、Snowflakeを安全に使うための強力な味方です。まずは自分のアカウントでMFAを有効化することから始めてみてください!

参考リンク

関連記事