google-bigquery - 如果来自信息架构的 bigquery 属性如何获取策略标记

标签 google-bigquery metadata policy

我们在 bigquery 中使用策略标记来实现列级安全性。 (https://cloud.google.com/bigquery/docs/best-practices-policy-tags)。现在我们要检查具有策略标记的表和属性的列表。 bigquery 中有什么方法可以使用 INFORMATION_SCHEMA 获取它吗?或者任何其他实用的方法来获取带有某些策略标记的属性?

最佳答案

您可以尝试这个解决方案,它将为您提供使用 PolicyTag 的表和列的列表:

将表列表写入文件:

DATASET="dataset-name"
bq ls --max_results=10000 ${DATASET} | awk '{ print $1 }' | sed '1,2d' > table_list.txt

外壳脚本:

#!/bin/bash

DATASET="dataset-name"

echo "------------------------------"
echo "TableName      ColumnName"
echo "------------------------------"
while IFS= read -r TABLE; do
    TAG_COUNT="`bq show --schema ${DATASET}.${TABLE} | grep "policyTags" | wc -l`"

    if [ "${TAG_COUNT}" -ge 1 ]
    then
        COLUMN="`bq show --format=prettyjson ${DATASET}.${TABLE} | jq '.schema.fields[] | select(.policyTags | length>=1)' | jq '.name'`"
        echo "${TABLE}        ${COLUMN}"
    fi
done < table_list.txt

关于google-bigquery - 如果来自信息架构的 bigquery 属性如何获取策略标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63608146/

相关文章:

sql - BigQuery - 连接谓词中不支持带表的子查询

google-analytics - 将 Google Analytics clientId 连接到 BigQuery 字段

sql - BigQuery : Format ISO Date

Java RMI - 套接字权限问题

google-bigquery - 在 Google BigQuery 中选择除某些列之外的所有列?

python - PyExifTool 是否有一种将元数据写入图像的方法?

git - 你如何使用 git-cache-meta?

java - 如何从 Java 中的 JPEG 图像中删除元数据?

azure - 资源被政策禁止

Java System.setSecurityManager() 不能很好地处理策略文件