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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Google+

Google+とは、Googleが提供するソーシャル・ネットワーキング・サービスです。情報を共有するユーザーの範囲を設定する「サークル」、Webカメラで複数名の相手と無料でビデオチャットできる「ハングアウト」などの機能があります。

Google サイト

Google サイトは、Google社が提供する無料のホームページ作成ツールです。プログラミングやデザインなどの知識がなくても、ブラウザから容易にWebページを作成することが可能。新たなページの追加も簡単でページ数には制限がありません。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

2回答

1578閲覧

GoogleDrive上のcsvのセキュリティ

退会済みユーザー

退会済みユーザー

総合スコア0

Google+

Google+とは、Googleが提供するソーシャル・ネットワーキング・サービスです。情報を共有するユーザーの範囲を設定する「サークル」、Webカメラで複数名の相手と無料でビデオチャットできる「ハングアウト」などの機能があります。

Google サイト

Google サイトは、Google社が提供する無料のホームページ作成ツールです。プログラミングやデザインなどの知識がなくても、ブラウザから容易にWebページを作成することが可能。新たなページの追加も簡単でページ数には制限がありません。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

0クリップ

投稿2019/08/05 09:23

Googledrive上でcsvファイルの位置をカーソルで右クリックし「共有可能なリンクの取得」するとURLが得られます。

ご存知の通りこのURLは知っていれば誰れも閲覧できてしまうものなのですが

セキュリティを高めたく自分一人とメンバー1人、おきゃくさま以外はこのcsvを見せないようにしたいです。

手段として具体的にはipの制限でも鍵でも構わないのですが実際にどのように設定をすればいいのかわかりません。GoogleDriveにおいてあるcsvをメンバー限定してPythonデータとして取得するにはどのような方法が考えられますか?具体的な方法につきましてぜひ聞かせてください。

閲覧メンバー限定の定義は以下です。
自分
開発者
お客様xn名

googleサービスは便利なので多様していきたいです。宜しくお願いします。

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

pythonでgoogle driveを操作する

などを参考に認証を行うが筋だと思いますが、わたしはpythonわからないので、別の方法を。

ドライブで、google scrpitを作成します。
そして、そのCSVを開いて、内容を読み出して、文字列かjsonにて返す関数を作ります。
その関数を実行可能APIとして公開します。

実証コードをかこうとしたのですが、実行可能APIを作ろうとしたらGCPの設定が必要っぽくて、すぐにどうこうできないので、概念だけの回答です。

javascript

1function q204508() { 2 //このへんで、テキトーな認証をする。自分で実装しちゃうと穴しかないので、やっぱりgoogle認証したほうがいいとは思う。 3 4 const file = DriveApp.getFileById("csvのid"); 5 const dat = Utilities.parseCsv(file.getBlob().getDataAsString()); 6 return dat;//ここでjsonとかにして返したいところだけどちゃんと調べてない(ごめんなさい) 7} 8

投稿2019/08/08 08:40

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2019/08/08 10:21

この質問者には多分できないと思いますが、逆切れしてベストアンサーにしたみたいなのでこれで解決ですね。二度と同じことを聞かないようにして欲しいものです。
guest

0

PC からサイトにアクセスした場合、ファイルを右クリックしてメニューから「共有」を選び、閲覧できるユーザーを追加してください。ユーザーは Google アカウントが必要です。

投稿2019/08/05 09:30

Zuishin

総合スコア28660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/08/05 10:29

回答ありがとうございます。Zoisinさんの方法だと必ずグーグルアカウントが必要になってしまいます。しかもPythonデータとして取得する際にグーグルアカウントの有無ではねられてしまいます。逆のURL周知でも誰でもURLさえわかれば入れてしまうので非常に危険です。
Zuishin

2019/08/05 10:33

アカウントが無ければ認証できません。必ずどこかの段階でパスワードが必要です。顧客が持っていなければ、そちらで用意したらどうでしょう?
退会済みユーザー

退会済みユーザー

2019/08/05 10:39

Googleのアカウントは3分で取得できるので顧客でも私でも取れば済むので気にならないのですが、PythonデータとしてURLから取得する際に以下コードがZuisinさんの方法で通るのかが気になっています。 import pandas as pd csvheader = ["userId"] data = pd.read_csv("https://drive.google.com/uc?id=CCCC", names=csvheader) print(data)
Zuishin

2019/08/05 10:42

試してみたらどうですか? アカウントで共有してもできなければ他のどんな方法を使ってもできないと思いますが。
Zuishin

2019/08/06 23:17 編集

というか、もしかして認証せずそれだけのコードで通るかという質問ですか? もしそれができたとしたら、セキュリティー上問題があるとは思いませんか? 認証は当然必要です。 認証不要にしたいなら、セキュリティーは諦めてください。
退会済みユーザー

退会済みユーザー

2019/08/06 16:23 編集

というか、もしかして認証せずそれだけのコードで通るかという質問ですか? 違います。ありがとうございました。
Zuishin

2019/08/06 21:20

では、認証するコードが書けないということですか?
退会済みユーザー

退会済みユーザー

2019/08/06 23:07

そうです。ありがとうございました。
Zuishin

2019/08/06 23:13

あのね。知識が無いから聞いてるんでしょ? だったら知識が無いことを明らかにされて怒るのは筋違いってもんでしょ。 質問者がどこまで知ってるかわかんなきゃ適切な方法なんて示せないじゃないですか。 聞かれて嫌なことがあるなら、聞かれないよう最初から書いておきなさい。
退会済みユーザー

退会済みユーザー

2019/08/06 23:14

なに怒ってんですか?
Zuishin

2019/08/06 23:15

解決したなら解決済みにしてください。
Zuishin

2019/08/06 23:16

その際、自己解決にするなら、他の人が参考になるよう、ちゃんと解決方法を書いてください。
Zuishin

2019/08/06 23:19

解決していないなら、質問を編集して、自分の知識レベルと、どこに問題があるのかを明らかにしてください。 その際、すでについた回答が意味不明にならないよう、全部消して書き直すのではなく、追記する形にしてください。
退会済みユーザー

退会済みユーザー

2019/08/06 23:20

まだ解決していません。方法は2つあります。 1つは「共有可能なリンクの取得」するとURLが得られ全員が見れる状態になりますよね。 それは以下コードで閲覧できます。 import pandas as pd csvheader = ["userId"] data = pd.read_csv("https://drive.google.com/uc?id=CCCC", names=csvheader) print(data) 2つめは「共有」を選び、閲覧できるユーザーを追加する方法です。
Zuishin

2019/08/06 23:21

> PC からサイトにアクセスした場合、ファイルを右クリックしてメニューから「共有」を選び、閲覧できるユーザーを追加してください。ユーザーは Google アカウントが必要です。 この回答の全文です。
Zuishin

2019/08/06 23:22

共有可能なリンクを使えば、認証なしで誰でも取得できるので、アカウントを使って認証しなさいという回答ですが、どこかに誤解が生じる余地がありますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問