共有コマンド

記録の共有と共有フォルダに関するコマンド

コマンド

Keeperコマンドリファレンス

対話型シェル、CLI、JSON設定ファイルのいずれを使用する場合でも、以下のコマンドがサポートされており、各コマンドでは追加のパラメータとオプションがご利用になれます。

特定のコマンドのヘルプを表示するには、次のコマンドを実行します。

help <command>

共有コマンド

コマンド説明

ユーザーに記録へのアクセス権を付与または取り消します

共有フォルダの権限を変更します

フォルダの記録権限を変更します

ワンタイム共有URLを作成します

外部ユーザーに共有を表示または取り消します

share-recordコマンド

コマンド: share-recordまたはsr

詳細: 記録のパスまたはUIDを指定して、記録へのユーザーアクセスを許可または取り消します

パラメータ:

記録のパスまたはUID

スイッチ:

-e、--email 権限を編集するアカウントのメール(必須)

-a、--action <{grant, revoke, owner, cancel}> 記録に設定する権限

-s、--share ユーザーに記録の共有を許可します

-w、--write ユーザーに記録の変更を許可します

例:

share-record memberships/Gym -e john.smith@gmail.com
sr g6rvo2-Uv-BC16ZM33CF3w -e john.smith@gmail.com --share
sr social/Twitter -e john.smith@gmail.com --action owner
  1. 「memberships」フォルダの「Gym」記録をユーザーJohn Smithと共有します

  2. 指定したUIDを持つ記録をユーザーJohn smithと共有し、John smithが他のユーザーとその記録を共有できるようにします

  3. 「social」フォルダの「Twitter」記録の所有権をユーザーJohn Smithに移管します

share-folderコマンド

コマンド: share-folderまたはsf

詳細: 指定した (1つまたは一連の) 共有フォルダに対するデフォルトの権限をユーザーに付与または取り消します

共有フォルダの作成に関する詳細については、mkdir コマンドをご参照ください。

パラメータ:

フォルダのパスまたはUID

スイッチ:

-a、--action <{grant, revoke, remove}> フォルダや記録に設定する権限

-e、--email <EMAIL, TEAM, *>

  • email - フォルダ権限を設定するユーザーのメール

  • team - フォルダ権限を設定するチームの名前

  • * - フォルダを共有する新しいユーザーのそれぞれに対して関連する権限を適用します

  • @currrent/@existing - フォルダへの既存のアクセス権を持つすべてのユーザーに適用します

-r、--record <{RECORD NAME, UID, *, @existing, @current}>

  • record name / UID - 権限を設定する特定の記録

  • * - 関連するフォルダに追加されたすべての新しい記録向けにデフォルトの権限を設定します

  • @existing/@current - 指定した共有フォルダに現在含まれているすべての記録に権限を適用します

-p、--manage-records 記録管理を許可します。ユーザーとチームのみ

-o、--manage-users ユーザー管理を許可します。ユーザーとチームのみ

-s、--can-share 記録共有を許可します。記録のみ

-d、--can-edit フォルダの記録の変更を許可します。記録のみ

-f、--force デフォルトのフォルダ権限を無視して、権限の変更を適用します

共有フォルダの権限は付加的となります。デフォルトのフォルダ権限で、ある権限が許可されている場合、-a revokeを使用して明示的に取り消されない限り、そのフォルダを共有するすべてのユーザーとチームにその権限が与えられます。

例:

share-folder memberships -e Jane.Smith@gmail.com -p 
sf memberships -r memberships/gym -a revoke --can-share
sf jdrkYEaf03bG0ShCGlnKww -e DB_ADMINS -p
sf "Team Passwords" -e "Marketing Team" -a grant -o
sf * -e DB_ADMINS -p
sf -a remove -e Jane.Smith@gmail.com memberships
  1. 「memberships」共有フォルダをユーザーJane.Smith@gmail.comと共有します。 ユーザーJane.Smith@gmail.comに記録管理、フォルダ共有、記録編集を許可します

  2. 「memberships」共有フォルダの「gym」記録へのユーザーJane.Smith@gmail.comのアクセス権を取り消します

  3. 指定したUIDを持つフォルダを「DB_ADMINS」チームと共有し、共有フォルダ内の記録管理を許可します

  4. 「Team Passwords」フォルダを「Marketing Team」チームと共有し、ユーザー管理権を付与します

  5. すべての共有フォルダを「DB_ADMINS」チームと共有し、共有フォルダ内の記録管理を許可します

  6. ユーザーJane.Smith@gmail.comの「memberships」共有フォルダへのすべてのアクセスを削除します

デフォルトのフォルダ設定の変更

デフォルトのフォルダ設定は、新たに追加されたユーザーと記録の権限を管理します。share-folderコマンドでデフォルトの権限を変更するには、[*]記号を使用します。

たとえば、UIDに基づいて共有フォルダのユーザーのデフォルトを「共有先と記録の管理」に設定し、記録のデフォルトを「編集と共有設定が可能」に設定する手順は以下のとおりです。

sf --action=grant --email=* --manage-user --manage-records jdrkYEaf03bG0ShCGlnKww
sf --action=grant --record=* --can-share --can-edit jdrkYEaf03bG0ShCGlnKww

また、適切なオプション (記録に-r、ユーザーに-e) に対して、「@current」や「@existing」の値を指定するだけで、同じコマンドの呼び出し内で、上記の例のように、共有フォルダのデフォルト設定を指定するために使用した同じ権限をその共有フォルダに現在割り当てられている記録/ユーザーにも適用できます。上記と同様の例を使用すると、以下のような設定になります。

sf -e * --manage-user --manage-records -e @existing jdrkYEaf03bG0ShCGlnKww

sf -r * -r @existing --can-share --can-edit -e @existing jdrkYEaf03bG0ShCGlnKww

最初の例では、デフォルトのユーザー権限と、共有フォルダに現在割り当てられているユーザーに付与された権限の両方が、「共有先の管理」と「記録の追加と削除を許可」に設定されます。

2番目の例では、デフォルトの記録権限と、共有フォルダに現在格納されている既存の記録の権限の両方が、現在その共有フォルダにアクセスできるユーザーに対して「編集可」と「共有可」に設定されます

record-permissionコマンド

コマンド: record-permission

詳細: 共有フォルダのすべての記録の権限を変更します

パラメータ:

フォルダのパスまたはUID

スイッチ:

-a、--action <{grant, revoke}> 記録に設定するアクセス権限

-s、--can-share 記録共有を許可します

-d、--can-edit フォルダの記録の変更を許可します

-f、--force プロンプトを表示せずに権限の変更を適用します

-R、--recursive すべてのサブフォルダに権限の変更を適用します

--dry-run コマンドによって加えられた権限の変更を実際には権限を変更せずに表示します

--share-record 記録の共有権限を変更します

--share-folder フォルダの共有権限を変更します

例:

record-permission memberships --action grant --can-share
record-permission jdrkYEaf03bG0ShCGlnKww -a revoke -d -R
record-permission social -a grant -s --dry-run
  1. 「memberships」共有フォルダのすべての記録に共有権限を付与します

  2. 指定したUIDを持つフォルダとすべてのサブフォルダのすべての記録から編集権限を取り消します

  3. 「social」フォルダに共有権限を付与することによって加えられる変更は表示しますが、権限の変更は適用しません

shareコマンド

Commanderバージョン16.6.3以降が必要となります

コマンド: share

サブコマンド:

list - ワンタイム共有を表示します

create - ワンタイム共有URLを新規作成します

remove - ワンタイム共有を削除します

パラメータ:

記録の名前またはUID

ワンタイム共有名またはID(削除のみ)

スイッチ:

List

-a--all 失効した共有を含むすべてのワンタイム共有を表示します

--format <table, csv, json> ワンタイム共有の表示形式

-v--verbose 詳細出力

Create

--output <clipboard, stdout> URLをクリップボードにコピーするか、stdout (デフォルト) に出力するかを選択します

--name ワンタイム共有の名前を指定します

-e <TIME>--expire <TIME> ワンタイム共有の有効期間

format: [(m)inutes|(h)ours|(d)ays] たとえば、1時間は1h

例:

List

My Vault> one-time-share list dIGd46nq2uE_q1fXlAQGkw --all
Record UID              Name         Share Link ID            Generated            Opened    Expires              Status
----------------------  -----------  -----------------------  -------------------  --------  -------------------  ---------
dIGyf6nq2uE_q1fXlAQGkw  MyShare      vhSIl2fnjp5tTaE4w9DC... 2022-04-29 11:01:19            2022-04-29 12:01:19  Expired
dIGyf6nq2uE_q1fXlAQGkw  LwIdbnYa160  bOuAQzCoYL8XIcQpz2KU... 2022-04-29 15:38:27            2022-04-29 16:38:27  Generated

Create

My Vault> one-time-share create dIGyf6nq2uE_q1fXlAQGkw -e 1h
       URL : https://keepersecurity.com/vault/share#s4iSKc7TP[...]

Remove

My Vault> one-time-share remove dIGyf6nq2uE_q1fXlAQGkw MyShare
One-time share "MyShare" is removed from record "dIGyf6nq2uE_q1fXlAQGkw"

external-shares-reportコマンド

コマンド: external-shares-reportまたはesr

詳細: 社外のユーザーに付与された共有権限を表示して、(オプションで) 取り消します

スイッチ:

--format <{table, json, csv}> 出力の書式を設定します。デフォルトは「table」です

--output ファイル名に出力します。「table」形式では無視されます

--action、-a <{remove, none}> 外部共有に対して実行するアクション。省略した場合は「none」

--share-type, -t <{direct, shared-folder, all}> 共有タイプでレポートをフィルタリング。省略した場合は「all」

--force、-f 共有を削除するときに確認を省略します

--refresh-data、-r 実行する前にローカルユーザーと記録のデータを更新します

例:

external-shares-report
external-shares-report -r
esr --output external_shares.json --format json
external-shares-report -a remove
esr -a remove -f
external-shares-report --share-type shared-folder
  1. 社外のユーザーに共有されている記録と共有フォルダを表示します

  2. レポートを実行して表示する前に、ローカルにキャッシュされた企業の記録/フォルダ/ユーザーデータを更新します

  3. レポートを実行し、結果をexternal_shares.jsonという名前のJSON形式のファイルにエクスポートします

  4. レポートを実行して結果を表示し、その結果で特定された外部共有を取り消します

  5. 上記#4と同じですが、実行を完了するために追加のユーザー操作は必要ありません (レポートで特定された外部共有を取り消す前の確認プロンプトは省略されます)

  6. レポートを実行して表示し、結果を直接共有で共有された記録に限定します (レポートから共有フォルダを除外します)

デフォルトでは、上記のコマンド (esr -a remove) を使用して、以前に外部アカウントに付与された共有権限を取り消すには、確認プロンプトによるユーザー操作が必要です。

このタスクを非対話的な方法で実行する必要がある場合は (たとえば、Keeperスクリプト/バッチファイルから実行する場合や自動管理ツールの一部として実行する場合)、コマンド呼び出しに--forceフラグを付けます (例: external-shares-report --force --action remove)。

記録権限の一括変更

この例では、共有フォルダの記録権限を再帰的に変更します。

1. 共有フォルダのUIDを特定

Commanderでは、Bashシェルと同様に「ls-l」コマンドが使用できます。

ボルト内で、情報アイコンをクリックして共有フォルダのUIDを取得できます。

2. Commanderを使用して記録権限の変更を検証

Commanderで--dry-runオプションを指定して、record-permissionコマンドを実行し、このコマンドをシミュレートします。 この例では、共有フォルダのUIDは「-FHdesR_GSERHUwBg4vTXw」です。 コマンドは次のとおりです。 record-permission --dry-run --recursive --action grant --can-edit -- -FHdesR_GSERHUwBg4vTXw

この例では、共有フォルダのUIDが「-」で始まるため、識別子の前に「--」を追加する必要があります

このコマンドを実行すると、以下の出力が生成されます。

「SKIP」セクションには、Commanderの現在のユーザーは記録の所有者ではないため、要求された変更を行うことができませんと表示されています。 「GRANT」セクションの表示は、変更が許可されるとなっています。

3. Commanderを使用して権限変更コマンドを実行

コマンドを実行するには、「--dry-run」部分を削除します。

これで、該当する記録の権限がボルトのUIで「編集可」に変更されました。

記録の所有者が複数含まれる共有フォルダ

同じ共有フォルダ内に更新が必要な記録の所有者が多数存在する場合は、各ユーザーが上記のCommander操作を実行するだけで、それぞれの記録の権限を変更できます。

共有管理者権限を持つ企業ユーザーの場合は、上記の手順を1回実行するだけで、共有フォルダ内のすべての記録 (記録の所有者に関係なく) の権限を変更できます。

このような場合、他の記録所有者が同じ手順を繰り返す必要がないため、処理が大幅に簡素化されます。

記録所有権の一括移管

前の例 (共有フォルダ内のすべての記録のアクセス許可を変更する方法) とほぼ同じ手順を使用して、特定の共有フォルダ内のすべての記録の所有権を単一のアカウントに移行することもできます。

次の例 (前の例と同じボルトと共有フォルダを使用) では、その共有フォルダ内の記録の所有権をユーザーjoe.smith@gmail.comに移管すると仮定します。手順は以下のとおりです。

1. 共有フォルダUIDを確認

確認方法の詳細については、前の例をご参照ください。この例では、UID -FHdesR_GSERHUwBg4vTXwの共有フォルダを使用します。

2. Commanderで記録所有権移管コマンドを検証

前の例と同様に、Commanderで--dry-runオプションを指定してshare-recordコマンドを実行することで、実際の実行前に目的のアクションをシミュレートできます (前の例とは異なり、この例では記録の所有権の譲渡先アカウントのユーザー名 (john.smith@gmail.com) も指定する必要があります)。 コマンドは以下のとおりです。

share-record --action owner --email john.smith@gmail.com --dry-run --recursive -- -FHdesR_GSERHUwBg4vTXw

3. Commanderで記録所有権移管コマンドを実行

最後に、前の例と同様にコマンド呼び出しから--dry-runオプションを削除して、以下のように目的のアクションを実行します。

share-record --action owner --email john.smith@gmail.com --recursive -- -FHdesR_GSERHUwBg4vTXw

最終更新