社内ポータルサイトとしても非常に簡単に運用ができるGoogleサイト。
特に既存のデータ活用をGoogleドキュメントやスプレッドシートで行っていたり、データ共有をGoogleドライブ上で行っている場合には、Googleサイトでの社内ポータル構築は非常に便利な方法となります。
ご相談を受けた事例の詳細と、なぜGoogleサイトが社内ポータルに適しているのかの説明はgoogleサイトでの社内ポータル構築が小企業にピッタリだった|事例より の記事をご覧ください。
さて、今回よくご相談をいただく内容として「Googleサイトにパスワード保護をつけることができるのか」と言うご質問をいただくことが多いので、本記事にて詳細を説明いたします。
結論から言うと、Googleサイトではパスワード設定を行う事はできません。
これはたとえ有料の「G Suite」に加入したとしても、Googleサイトにパスワード認証設定を行う事は構造上不可のようでした。
2020/11/07追記: HTMLブロックを追加し、スクリプトを埋め込むことで簡易的なパスワード機能をつけることは可能とするnote記事: Google Sitesで、パスワード認証|nico|note がありますが、2020年11月現在では上手くいかないようです。
(note記事のコメント欄参照。うまくいかない理由は本文で後述します)
以下より、googleサイトでの社内ポータル構築が小企業にピッタリだった|事例より | 逆転のスモールビジネス の記事コメント欄にてお寄せ頂いた質問と、回答を転載して詳細をご説明いたします。
目次
Googleアカウントを持たない社員でも社内ポータルにアクセス可能とするため、サイトにパスワードをつけることはできるか
こんにちは。
Googleサイトを使って社内のポータルサイトの作成を考えています。
その際、すべての社員がグーグルアカウントを持っているわけではないので、サイトへのアクセス時にpassword認証ができないのかと考えております。無料の段階ではそのような機能はないと思いますが、有料にすると上記のような設定は可能でしょうか。
上記のご質問をいただきました。対する回答は以下の通りです。
Googleサイトではパスワード認証設定は不可。フォルダの公開範囲による制限で対応するしかない
有料(G Suite利用)か無料かを問わず、そもそもGoogle サイト…というよりその母体となるGoogle Drive上ではパスワードによる認証設定をすることは出来ないようです。
代わりに、以下の4パターンにて、フォルダの公開範囲による制限を利用はできるとのこと。
- ウェブ上で一般公開
- リンクを知っている全員
- 限定公開(個別にGoogleアカウントを指定して許可 : Gmailが必要)
- 非公開
この中の 3.「限定公開」がパスワード認証に近い方法ですが、Gmailによる指定が必要なようで、結局は閲覧者全員にGoogleアカウントをもたせる必要がありそうですね。
HTML埋め込みブロックで簡易的なパスワード認証機能をつけることは可能…?
冒頭で追記した通り、Googleサイトのページ内にHTMLブロックを埋め込んでスクリプトタグ記述により、簡易的なパスワード認証機能をつける事は可能かもしれません…!
しかし、少なくとも参考note記事の方法では2020年11月現在は上手くいかないようです。
参考note記事: Google Sitesで、パスワード認証|nico|note
参考note記事の方法では動作しない(2020年11月)
参考noteで公開されていたスクリプトは下記のとおり。
<form name="myform" onsubmit="return checkText()"> <input type="password" name="PW"> <input type="submit" value="ログイン" /> </form> <script> function checkText() { //*****に、サイトのページ名を入れてください document.myform.action = "https://sites.google.com/view/*****/"+ document.myform.password.value;; } </script>
HTML埋め込みブロックを活用し、フォームタグとJavaScriptを記述。
フォーム欄に入力した内容をURL末尾に追加した形で、ジャンプするように制御しています。
たとえば、限定公開にしたいページURLが
…/view/home/secretpageだった場合、(TOPページ直下にsecretpageというページ名のページ)
フォームに、secretpage
と入力することで、今いるページURLに”secretpage”と追加する形でジャンプさせます。
この挙動で限定公開機能を実現させようとしているようです。
しかし、実際にはそのままフォームに埋め込んだURLが出力されるのではなく
” embed=….. /secretpage ” という余計な属性がついて出力されてしまいます。
(実際にGoogleサイトを作って試してみました)
そのため、限定公開したいページにジャンプすることができず、動作しないという結果になっています。
実現できたとしても、セキュリティとしては甘い
また、仮に実現できたとしてもこの方法はあくまで簡易的なものとして受け止めましょう。
具体的には
- セキュリティ的に弱い
(ジャンプ先URL名さえ分かれば閲覧可能。またジャンプ先URLからURL一致の方法でパスワード設定していることがバレる) - サイト全体ではなく、ジャンプ先ページ個別にパスワードの仕組みがかかるだけ。
という内容になっています。
セキュリティについては以下の記事もおすすめ。
webセキュリティやわらか「超入門」 | まほウェブ
新しいGoogleサイトでHTML埋め込みブロックを記述しても動作しない、消える
このように新しいGoogleサイトでHTMLを埋め込む場合、埋め込みブロック→HTML と選択して埋め込みます。
埋め込みブロックを選択したあと、「コード埋め込み」のタブを選択してコードを入力していきます。
(下画像では” Embed code “となっていますが、日本語環境では「コード埋め込み」だと思います)
しかし今回、埋め込みブロックでコード入力完了した後、「次へ」をクリックしたらウインドウが消失。
埋め込みブロックがGoogleサイトに反映されない現象となっていました。
これは恐らくGoogleサイト側のバグで、ブラウザをSafariに切り替えて実装してみると、無事にHTMLコードブロックを追加することができました。
参考: Googleサイトでページごとにアクセス制限をかけたい場合
ややトリッキーな方法でありパスワード認証とは話は変わりますが、「Googleサイトでページごとにアクセス制御を行いたい」( = URLを知る特定のメンバーにだけ、Googleサイトの一部を公開したい)という方法を説明した記事がありました。
新しいGoogle SitesでPageごとのアクセス制御を可能にする – Qiita
こちらもURLによってアクセス制限を実現する方法です。
ご参考にしてみてください。
パスワード設定が可能で、Googleサイトに使用感の近いWebサイトビルダー
Googleサイトではパスワード認証を実現するのは難しいそうだ、とお話をしてきました。
代替手段として、Googleサイト以外のサイトCMSを社内ポータルとして活用するか
パスワード設定ができるWebサイトビルダーを利用するのも1つの手かと思います。
Googleアカウントを噛ませずに限定公開を実現しようと思うと、現状はこの方法しかありません。
パスワード設定可能なWebサイトビルダー
たとえばWebサイトビルダーとして
などのボックス形式でのドラッグ&ドロップ式のwebサイトビルダーでも、特定のページにパスワード設定をつけることができます。
またJimdo, Weeblyのどちらにも、スマートフォンからサイトを更新できるスマートフォンアプリがあります。
他にもWixがありますが、Wixは細かいデザイン設定ができる反面、ボックス形式でコンテンツを設置していくことができず、編集作業に時間がかかる印象です。社内ポータルとしては向かないでしょう。
ただし、パスワード機能を使うには上記Webサイトビルダーの有料契約をする必要があります。(それぞれ月額1,000円程度)
細かな公開範囲の設定や権限・ワークフローを設計したいならConcrete CMSがおすすめ
ブロックごとの細かい権限設定・公開設定をしたい場合にはconcrete5というCMSがおすすめ。
上記Webサイトビルダーでは手の届かない、細かなワークフロー設定等を行うことが可能です。
Googleサイトと他ウェブサイトビルダーやCMSを使う場合の差異ですが、既にGoogle Drive上にドキュメント周りを置いている場合には操作感の差が大きいでしょう。
Googleサイトで特筆すべきは、Google ドライブからファイルを直接ドラッグ&ドロップできるシームレスな操作性です。
(逆に言えば、現在まだGoogleドライブでのファイル共有・管理を行っていないのなら、他CMSでも十分に対応が可能です)
運用・操作はかんたんですが、導入のハードルはやや高いので、ご検討の方はぜひ一度ご相談ください。
社内ポータル・社内イントラとして利用するならNotionやMicrosoft Loopという手も(おすすめ)
※ 2021年11月3日 追記
近年では、社内ポータルや社内イントラ、社内ドキュメント・マニュアル共有ツールとして”Notion“が非常に人気です。
2021年に日本語化され、さらに使いやすいツールとなりました。
このNotionでは、標準機能でメールアドレスで招待したメンバーにだけページを共有できたり、外部の人にもワンクリックでURL共有でページを共有できる、ナレッジ保存・共有にぴったりなツール。
Notion単体ではパスワード機能はありませんが、Superという外部に公開するサードパーティツールを利用することで、ページごとにパスワードを設定して外部に公開することが可能です。
Notionについての記事は下記で公開しています。(下記ブログもNotion × Superで制作)
Notion | 魔法使いのWebスクリプト
また、まだ詳細は不明ですがMicrosoft Loopという、Microsoft版Notionツールと言えるものも出てきました。
Notionライクな”Microsoft Loop”が登場 | 魔法使いのWebスクリプト
Microsoft Loopにパスワード設定機能がつくかは未定ですが、期待する余地はありそうです。
Googleサイトでパスワード設定が不可と判断した根拠と参考サイト
参考:
Googleドライブのファイル・フォルダにパスワードを設定するには?
Googleサイトでパスワード認証ができないだろう論拠 :
Can I make a page on my new google site password protected? – Sites Help(2019年2月)
(おすすめアンサーに「パスワードは出来ないので、フォルダやファイルの権限設定をすべし」とありました)
G Suite公式「よくある質問」:
“外部からの訪問者は会社のサイトにアクセスできますか?
― はい。G Suite アカウントを持っていない社外ユーザーも、お客様のサイトにアクセスすることができます。また、共有設定を使用してアクセスを制限することもできます。”
よくある質問 | G Suite
Leave a Reply