ODBCドライバを介したデータソース接続時の認証

Tachibana 0 評価のポイント
2024-03-28T09:48:53.4566667+00:00

お世話になっております。

掲題件に関して、質問をさせてください。

■ 問題の概要

ODBCドライバを介してExcelから外部のデータソース(Snowflake)に接続すると、ODBC Administrator上の設定とは異なる認証情報を使って接続されてしまう。

■ 問題の詳細

  • ODBC Administrator上のユーザーDSNに、Snowflakeとの接続情報を保存している。 この状態でExcelからSnowflakeに接続すると、設定している認証情報(ユーザー名/パスワード)を使ってSnowflakeに接続される。 この時、Excel上ではユーザー名/パスワードの入力は求められない。 レジストリ "コンピューター\HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI<接続名>" にも認証情報が反映されている。
  • 既存の接続情報の認証情報(ユーザー名/パスワード)を変更して保存した後、再度ExcelからSnowflakeに接続すると、変更後の認証情報ではなく変更前の認証情報を使ってSnowflakeに接続されてしまう。 この時も、Excel上ではユーザー名/パスワードの入力は求められない。 レジストリ "コンピューター\HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI<接続名>" には認証情報の変更が反映されている。

■ 補足

Accessを使って同様の検証を実施したところ、認証情報変更後にはAccess上でユーザー名/パスワードの再入力が求められた。

■ 質問事項

  • ODBC Administrator上の認証情報変更後も、Excel → Snowflakeの接続で古い認証情報が使われてしまうのはなぜか?
  • Excel内 or 外部に古い認証情報を保持してしまっており、それが接続に使われている場合、その情報をクリアすることはできるか?
  • Excel内 or 外部に古い認証情報を保持している場合、そもそも認証情報を保持させないようにすることはできるか?

ご回答の程、よろしくお願いいたします。

Office
Office
ワープロ、電子メール、プレゼンテーション、データ管理と分析など、一般的なビジネス タスクをサポートする一連の Microsoft 生産性ソフトウェア。
38 件の質問
{count} 件の投票

1 件の回答

並べ替え方法: 最も役に立つ
  1. Tachibana 0 評価のポイント
    2024-03-29T02:10:29.41+00:00

    本件、自己解決しましたので、クローズいたします。

    ■ 認証情報が変わらなかった理由

    • Excelは認証情報を「データソースの設定」という項目内に保持していた。
    • ODBC側の設定を変更しても、「データソースの設定」には反映されていなかった。 これが古い認証情報でSnowflakeに接続してしまっていた原因

    ■ 回避策

    • 「データソースの設定」を手動でクリアする。 設定クリア後に再度Snowflakeに接続すると、ユーザー名/パスワードの入力を求められるようになる。 

    ■ Excelで認証情報を切り替えて使いたい場合の対処方法

    1. 利用する認証情報毎にODBCの設定を作成し、使用するODBC設定を切り替えて作業する
    2. 既存のODBC設定を書き換えた後、「データソースの設定」の情報をクリアしてから作業する

    ※クリア忘れ防止の観点から、1. の方法を推奨

    0 件のコメント コメントはありません