# ワンタイム共有

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FRiCuSE5ftcEkBuQ3mJZ8%2Fone-time-share-docportal-header-update.jpg?alt=media&#x26;token=6e66120f-62b4-4b3c-81e8-16efc9b3ac66" alt=""><figcaption><p>ワンタイム共有</p></figcaption></figure>

## 概要

ワンタイム共有は、Keeperアカウントを持っていない人とも時間制限付きでレコードを安全に共有する機能です。ワンタイム共有を使用すると、外部の関係者などに機密情報を共有したい場合でもEメール、SMS、メッセージングアプリで情報をさらすことなく安全に機密情報を共有できます。

ワンタイム共有は、Keeperのゼロ知識暗号化を利用することで安全な仕様となっています。レコードのデータは、256ビットAESを使用して共有相手のデバイス上でローカルで復号化され、サーバーへのリクエストはすべて楕円曲線暗号 (ECDSA) で署名されます。

{% hint style="info" %}
Keeperの従来のレコードタイプ (「一般」レコードタイプ) は、ワンタイム共有には対応していません。また、レコードでプライバシー画面が有効になっている場合も、ワンタイム共有は利用できません。
{% endhint %}

{% embed url="<https://vimeo.com/711859464?share=copy>" %}

## ワンタイム共有の作成方法

ワンタイム共有を作成するには、レコードを開き、編集アイコンをクリックしてから **\[ワンタイム共有]** をクリックします。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FI4ya3V1pXrStTHmqgiyu%2Fimage.png?alt=media&#x26;token=82c66d89-fe36-441a-ad1e-3bd3823b0e9f" alt=""><figcaption><p>ワンタイム共有</p></figcaption></figure>

共有リンクの有効期間を選択します。レコードは指定した時刻に期限切れとなり、1台のデバイスでのみ閲覧可能です。仮にレコードの共有を手動で解除し忘れた場合でも、自動的に期限切れとなり、アクセスは無効化されます。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FoDJ9dm7a2WUxzwYGzgTM%2FJP_Onetimesharelimit.png?alt=media&#x26;token=e470bb68-ed5b-4a6f-bcf4-7cd3810dad87" alt=""><figcaption><p>レコードのアクセス期限設定</p></figcaption></figure>

共有リンクは、リンクが使用されない場合でも、選択した期間が経過すると失効します。リンクが使用され、デバイスに紐つけられた場合でも、レコードへのアクセスは選択した期間が経過すると失効します。

リンクだけをコピーしたり、他の人とレコードを共有するための招待メッセージを含めたり、QRコードを表示してスキャンしてもらうことができます。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FNsDREdmBxfG0KUZ1nCRL%2Fimage.png?alt=media&#x26;token=07b98831-0e68-4fd0-aa9e-fc7bee7c545a" alt=""><figcaption><p>リンクか招待メッセージをコピー</p></figcaption></figure>

共有相手がリンクを開くと、デバイスのブラウザにレコードが表示されます。

安全策として、ワンタイム共有は**デバイスに紐付けられる**ため、最初に共有リンクを受け取った相手しかレコードにアクセスできないことになります。後で第三者がリンクを開いた場合やメールアカウントが侵害された場合でも、元のデバイス以外からはリンクにアクセスできません。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2F1MYFafhZWa4y46Ntcbic%2FJP_OnetimeShared.png?alt=media&#x26;token=91250999-1b7a-46b3-937b-03f2ae910617" alt=""><figcaption><p>ワンタイム共有を受け取る</p></figcaption></figure>

## 活用事例

* アクセス認証情報を請負業者と共有する
* 暗号化されたファイルを同僚と共有する
* 安全に文書や手順を共有する

## ワンタイム共有の伝達手段

ワンタイム共有リンクは、以下のような手段で送信できます。

* QRコード
* Airdrop
* メール
* SMS
* 企業内で使用しているメッセージングアプリケーション
* その他

ワンタイム共有の用途は無限です。Keeperユーザー以外にデータを安全に届ける必要がある場合には、ワンタイム共有が最適です。

## ワンタイム共有を有効化

既存のエンタープライズユーザーの場合、ワンタイム共有はすべてのデフォルトのロールポリシーで**無効**となっています。

既存のデフォルトのロールポリシーでこの機能を使用できるようにするには、**\[ロール] > \[強制適用ポリシー] > \[作成と共有の権限設定]** にアクセスします。

ワンタイム共有機能の実装後に作成された新しいロールポリシーでは、この機能はデフォルトで有効になっています。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2Fr3pyg6apdovU5kFwB7KM%2FJP_ProhibitOnetimeshare.png?alt=media&#x26;token=ad27832a-623d-417d-b3d3-1ee73d6c98a0" alt=""><figcaption><p>ロールポリシーとしてのワンタイム共有</p></figcaption></figure>

## 双方向ワンタイム共有

Keeperの新しいワンタイム共有機能では、Keeperユーザーと非ユーザー間での双方向の情報共有が可能になり、機密情報やファイルを安全にやり取りできるようになります。

この機能により、クライアント、契約業者、法務チームなどにKeeperアカウントを作成してもらう必要なく、署名済みの書類やフィードバック、機密ファイルの受け取りができるため、スムーズな連携が実現します。

{% embed url="<https://vimeo.com/1106264709?fe=sh&fl=pl>" %}
双方向ワンタイム共有機能 (英語)
{% endembed %}

双方向ワンタイム共有機能を利用するには、通常通りワンタイム共有を作成します。対象のレコードを選択し、**\[共有] > \[ワンタイム共有] > \[ワンタイム共有を作成]** をクリックします。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FTubeccmtNpCjCihnw3dZ%2FShare%20a%20record.png?alt=media&#x26;token=aa48dc6e-9637-489d-b3de-078c378e8a75" alt=""><figcaption><p>レコードの共有</p></figcaption></figure>

{% hint style="info" %}
共有元のユーザーは、レコード内の「メモ」フィールドに共有相手向けの指示を自由に入力できます。
{% endhint %}

レコードに対して双方向共有機能を有効にするには、「共有相手によるレコードの編集とファイルのアップロードを許可する」 にチェックを入れます。共有の有効期限を設定するには、ドロップダウンメニューから希望の期限を選択し、**\[リンク作成]** をクリックします。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FXDqnFgpT8A5XlfK832p4%2Fimage.webp?alt=media&#x26;token=ef7e4f40-ff42-44dd-bb82-105f3d17bc19" alt=""><figcaption><p>双方向共有機能を有効にする</p></figcaption></figure>

共有相手が共有リンクを受け取ると、**\[開く]** をクリックすることで、共有されたレコードの内容を表示できます。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FOpAFNIGR9rAdQ0bstDNk%2Fimage%20(1).avif?alt=media&#x26;token=f5b19eb0-4a7f-4334-8e10-a42dfa9a3eaa" alt=""><figcaption><p>クリックしてレコードの詳細を表示</p></figcaption></figure>

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FWNcdX5QgA3ANGHbw9Nx6%2Fimage%20(1).webp?alt=media&#x26;token=920eb152-cd0f-483c-8ccc-a14e9ca1a490" alt=""><figcaption><p>共有相手側のレコードの詳細画面</p></figcaption></figure>

共有相手は、ファイルを添付したり、求められた情報やメモを入力したりすることができます。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2F2sOIKg4JmhcOr8IQslE7%2Fimage%20(2).webp?alt=media&#x26;token=2ebb3ffc-9bce-42ad-8f28-848a700db9ad" alt=""><figcaption><p>ファイル添付などの編集に対応</p></figcaption></figure>

共有相手が **\[保存]** をクリックすると、追加されたファイルや情報が共有元のボルト内の元のレコードに自動的に反映されます。 共有リンクの有効期限が切れるか、アクセスが取り消されるまで、共有元のユーザーと共有先のユーザーは引き続きレコードを編集できます。

<figure><img src="https://3468650114-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeJwa6ByNJ2qindnPknCW%2Fuploads%2FwIXHHoE5a3x49yxDq7Qd%2Fimage%20(3).webp?alt=media&#x26;token=25eef1f4-f550-4102-a74a-8e5736197b12" alt=""><figcaption><p>レコードのワンタイム共有の詳細</p></figcaption></figure>

### Keeperコマンダーを使用したワンタイム共有

[KeeperコマンダーCLI](https://docs.keeper.io/keeperpam/commander-cli)で以下のコマンドを使用して、プログラムでワンタイム共有リンクを作成できます。

* [`one-time-share`](https://app.gitbook.com/o/-LO5CAzoigGmCWBUbw9z/s/PL6k1aGsLiFiiJ3Y7zCl/~/changes/438/commander-cli/command-reference/share-command) ([`share`](https://app.gitbook.com/o/-LO5CAzoigGmCWBUbw9z/s/PL6k1aGsLiFiiJ3Y7zCl/~/changes/438/commander-cli/command-reference/share-command) のエイリアス)
* [`share-record`](https://app.gitbook.com/o/-LO5CAzoigGmCWBUbw9z/s/PL6k1aGsLiFiiJ3Y7zCl/~/changes/438/commander-cli/command-reference/share-record-command)

コマンダーでは、細かな有効期限の設定、追加の出力方法、以前に作成したワンタイム共有を削除する機能など、さらにきめ細かなコントロールが可能となります。

詳細については、[Keeperコマンダーのドキュメント](https://docs.keeper.io/keeperpam/commander-cli/overview)をご参照ください。

### 安全性と暗号化モデル

ワンタイム共有用に実装された暗号化モデルには、クラウドインフラストラクチャを保護するためのゼロ知識およびゼロトラストプラットフォームであるKeeper[シークレットマネージャー](https://app.gitbook.com/o/-LO5CAzoigGmCWBUbw9z/s/PL6k1aGsLiFiiJ3Y7zCl/)と同じ技術が使用されています。

以下は、セキュリティモデルと暗号化方法についての解説となります。

1. ボルトでは、共有者はレコード画面の **\[共有]** ボタンをクリックしてから **\[ワンタイム共有]** をクリックし、ワンタイムアクセストークンを生成します。共有するレコードの256ビットAESレコードキーはワンタイムアクセストークンで暗号化され、この暗号化された値はKeeperクラウドに保存されます。
2. 共有者は、任意のチャンネルからURLまたはQRコードを介して共有相手にワンタイムアクセストークンを送信します。アクセストークンが含まれたURL部分は、URLの「フラグメント識別子」セクション内に保持され、ネットワークを介して Keeperのサーバーに送信されることはありません。これによりゼロ知識が保持されるため、Keeper側から情報にアクセスしたり、情報を解読したりすることはできません。
3. 共有相手がデバイスのブラウザでURLを開くと、単一ページのボルトアプリケーションがデバイスにロードされます。ワンタイムアクセストークンがローカルのボルトアプリケーションに直接渡されます (サーバーには送信されません)。
4. URLがロードされる際、共有相手のデバイスはクライアント側の公開キーと秘密楕円曲線キーのペアを生成し、秘密キーはクライアントデバイスのブラウザのCryptoKeyストレージにローカルで保存されます。
5. 初めて使用する際には、SDKライブラリがワンタイムアクセストークンのハッシュを使用して認証し、認証が成功するとサーバーが暗号化されたレコード暗号文と暗号化されたレコードキーで応答します。
6. クライアントでワンタイムアクセストークンを使用してレコードキーが復号化され、レコードの内容はレコードキーを使用して復号化されます。その後レコードキーがクライアントデバイスのブラウザのCryptoKeyストレージまたはその他の指定されたストレージにローカルで保存されます。
7. サーバー上では、そのデバイスの暗号化されたレコードキーが削除されるため、ワンタイムアクセストークンを再び使用することはできなくなります。その後はクライアントのリクエストはクライアント秘密キーで署名される必要があります。
8. 同じデバイス上でのその後のサーバーへの呼び出しは、デバイスを固有に定義する識別子 (ワンタイムアクセストークンのハッシュ) と、クライアント秘密キーで署名されたリクエスト本文とともに送信されます。サーバーはデバイスのクライアント公開キーを使用して、指定されたデバイス識別子のリクエストのECDSA署名をチェックします。Keeperクラウドでレコードのリクエストが処理され、認証が成功するとサーバーは暗号化されたレコードの暗号文をクライアントに返します。
9. レコードレベルの暗号化に加えて、クライアントデバイスがランダムに生成されたAES-256ビット送信キーを作成します。この送信キーは、KeeperクラウドAPIの公開キーで暗号化されます。クライアントデバイスは、送信キーを使用してサーバーからの応答を復号化してからレコードキーを使用して暗号文応答ペイロードを復号化し、レコードの内容を復号化します。

Keeperの暗号化モデルに関する詳細については、[こちらのページ](https://docs.keeper.io/enterprise-guide/keeper-encryption-model)をご参照ください。

## 管理者による制御

共有フォルダの使用は、管理コンソールの [**\[ロール\]**](https://docs.keeper.io/jp/enterprise-guide/roles) セクションで制限できます。
