質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.62%

  • VBA

    1714questions

    VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

  • Windows

    1395questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

  • Access

    407questions

    Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

  • Authentication

    84questions

    Authentication(認証)は正当性を認証する為の工程です。ログイン処理等で使われます。

  • WSH

    33questions

    WSH(Windows Script Host)とは、Windows上でテキストファイルに記述したJavaScriptやVBScriptなどのスクリプトを実行するホスト環境のことです。COMを通じたレジストリ操作やWMIへのアクセスが可能で、複雑な処理も行うことができます。

Windows Login Username と Password の取得について

解決済

回答 2

投稿

  • 評価
  • クリップ 1
  • VIEW 2,461

aquillito

score 2

MS Access の FormよりVBAを使い、現在LoginしているWindows Login UsernameとPassword情報を自動的に取り込み、Windows Authentication で認証されているODBCに接続することは、可能でしょうか?
「情報を自動的に取り込む」とは、FormのTextbox等で新たにUsernameとPasswordを入力するのではなく、新たにAccess上で入力せずにWindowsから拝借してくる事を意図します。
Usernameを取ることは出来ましたが、Passwordを取る方法が可能なのかどうかも分かりません。
恐れ入りますが、どなたかご教示頂けますでしょうか。

尚、既にこのODBCには、「ODBC Datasource Administrator」にてWindowsのAuthenticationで接続していますが、そもそもFormのボタンなどでODBCからテーブルをインポートする際、これらUsernameとPaswwordが必要なのかも、あいまいです(私の存じ上げている、Docmd.TransferDatabaseでは、UsernameとPasswordなしでつながりませんでしたが…)。
ちなみに、ODBCに接続されているデータは日々刻々と変化して行きますが、月ごとのレポートを作成する必要があり、毎月ある決まった日時の状態でのテーブルの情報が必要です。従いまして、ODBCのテーブルとLinkすることは出来なく、必ずImportが必要になります。
Accessで、Linkしたテーブルを決まった日時で自動的にコピーして、新しくテーブルを作成する方法や、WSHでも可能かと思いますが、乗りかかった船ですので、後学の為にも、VBAでPasswordを取ることが可能なのか不可能なのかだけでも、もしどなたかお分かりでしたら是非ともご教示頂ければと思います。

よろしくお願いします。
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+2

Usernameを取ることは出来ましたが、Passwordを取る方法が可能なのかどうかも分かりません。
パスワードは取れないような気がします、セキュリティ的に。
(私が知らないだけで方法があるのかもしれませんが)

Windows Authentication で認証されているODBC
このODBCの接続先DBMSは何でしょうか?
もしSQL Serverであれば、接続文字列に
Trusted_Connection=yes
と追加すると、UIDとPWDを指定しなくても、現在ログオン中のユーザーのユーザー名&パスワードを使用して接続できます。
SQL Server Native Client での接続文字列キーワードの使用

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/06/04 22:30

    alg さん
    お返事、ありがとうございます。このODBC接続先はSQL Serverでしたので、ご教示頂きました通りTrusted_Connection=yes で、問題なくつながりました。
    またこちらもおっしゃる通り、Passwordを拾うことは、出来ないようですね。

    大変、助かりました。

    キャンセル

0

同じようなお悩みをお持ちの方の為にも、インポートの仕方と変更箇所を以下に記載しておきます。

Docmd.TransferDatabase acImport, "ODBC", ここを変える, acTable, "Export Table Name", "Import Table Name", False

< Username & Password 利用 の際 >
ここを変える = "ODBC; DSN=ServerName: UID=LoginUsername; PWD=LoginPassword"

< Trusted_Connection=yes 利用 の際 >
ここを変える = ”ODBC; DSN=ServerName; Trusted_COnnection=yes"

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.62%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    VBAで環境設定せずにDB接続したい

    VBAでDBを参照、更新するツールを作って配布しようと思っています。 VBAでDB接続する際にODBCを使うとコントロールパネルから接続情報を指定する必要がありますが、そのような設

  • 解決済

    VBA

    お尋ねします。ACCESSのformのテキストBOXで クリックやファイルを開いたときに PCのコンピュウター名を自動取得したいです ①Sub Sample()     D

  • 解決済

    Access VBA  Access内のテーブルに格納した文字列を変数として使用し、SQLサーバのデ...

    よろしくお願いいたします。   フォーム画面にボタンとテキストボックスを用意して、   hogeFrom とhogeToとしたテキストボックスに検索条件を入力し、   ボタン

  • 解決済

    エクセルVBA   

    Sub ie_test() 'IEテストする。 'IEの起動 Dim objIE As InternetExplorer Dim htdoc As HTMLDocument

  • 解決済

    VB6によるテーブルのデータ型変更

    VB6でSQL2014とMDBファイルに接続するアプリを修正中です。 SQLサーバーとMDBファイルとは基本的にはほぼ同じ構造で 接続はADOによる接続です。 今回、あるテーブ

  • 解決済

    Access2010 インポートさせない方法を教えてください

    Access2010で作成したデータベースのテーブルをインポートすることが出来ないようにする方法を教えてください。 DB1.accdb にテーブルを作りデータを入力し、アプリを

  • 解決済

    ExcelVBAからInternetExplolarのサイトに自動ログインしたい

    前提・実現したいこと ExcelVBAでIEのあるサイトから自動的にログインできるようなシステムを作っています。 自動ログイン機能作成時に以下のエラーメッセージが発生しました。

  • 解決済

    ACCESS VBA

     前提・実現したいこと やりたいことは ACCESSのVBAでメインフォームからサブフォームの新規レコードに移動したい。  発生している問題・エラーメッセージ 実行時エラー '

同じタグがついた質問を見る

  • VBA

    1714questions

    VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

  • Windows

    1395questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

  • Access

    407questions

    Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

  • Authentication

    84questions

    Authentication(認証)は正当性を認証する為の工程です。ログイン処理等で使われます。

  • WSH

    33questions

    WSH(Windows Script Host)とは、Windows上でテキストファイルに記述したJavaScriptやVBScriptなどのスクリプトを実行するホスト環境のことです。COMを通じたレジストリ操作やWMIへのアクセスが可能で、複雑な処理も行うことができます。