POSIX グループの取得と一覧表示
このドキュメントでは、POSIX グループを取得して一覧表示する方法について説明します。
POSIX グループのメンバーを取得する
Google グループ名、POSIX グループ名、POSIX グループ ID、またはメールを使用してグループ情報を取得できます。
グループ名による POSIX グループの取得
次のサンプルは、グループ名を使用して POSIX グループを取得する方法を示しています。
REST
名前で POSIX グループを取得するには、グループのリソース名を指定して groups.get()
メソッドを呼び出します。
GET "https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME"
以下を置き換えます。
GROUP_RESOURCE_NAME
: Google グループのリソース名。グループのリソース名を確認するには、gcloud identity groups describe
コマンドを実行します。
Python
次の例は、Python クライアント ライブラリを使用して POSIX グループを名前で取得する方法を示しています。
def get_posix_group_by_name(name):
service = build_service()
response = service.groups().get(name=name).execute()
return response
POSIX グループ名による POSIX グループの取得
次のサンプルは、POSIX グループ名のグループ情報を取得する方法を示しています。
REST
POSIX グループ名で POSIX グループを検索するには、次のクエリ文字列を使用して、groups.search()
メソッドを呼び出します。
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.name=='POSIX_NAME')
POSIX_NAME
を POSIX グループに割り当てる名前に置き換えます。
クエリを使用した GET
リクエストは次のとおりです。
GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels%26%26posix_groups.exists(pg,pg.name=='POSIX_GROUP_NAME')&view=VIEW"
以下を置き換えます。
CUSTOMER_ID
: 組織の顧客 ID。顧客 ID を確認するには、gcloud organizations list
コマンドを実行します。POSIX_NAME
: POSIX グループに割り当てる名前VIEW
:FULL
またはBASIC
Python
次の例は、Python クライアント ライブラリを使用して POSIX グループ名で POSIX グループを取得する方法を示しています。
def get_posix_group_by_posix_name((service, customer_id, posix_group_name, page_size, view):
# Set the label to search for a POSIX group
searchQuery = ("&query=parent=='customers/{customer_id}' "
"&& 'cloudidentity.googleapis.com/groups.posix' in labels "
"&& posix_groups.exists(pg, pg.name=='{posix_group_name}')"
"?pageSize={page_size}&view={view}".format(
customer_id=customer_id, posix_group_name=posix_group_name,
page_size=page_size, view=view))
try:
searchGroupsRequest = service.groups().search()
searchGroupsRequest.uri += searchQuery
response = searchGroupsRequest.execute()
print response
except Exception as e:
print e
POSIX グループ ID による POSIX グループの取得
次のサンプルは、グループ ID を使用してグループ情報を取得する方法を示しています。
REST
ID で POSIX グループを検索するには、次のクエリ文字列を使用して、groups.search()
メソッドを呼び出します。
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.gid==GIDu)
以下を置き換えます。
CUSTOMER_ID
: 組織の顧客 ID。顧客 ID を確認するには、gcloud organizations list
コマンドを実行します。GROUP_ID
: POSIX グループに割り当てるグループ ID(GID)
クエリを使用した GET
リクエストは次のとおりです。
GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels%26%26posix_groups.exists(pg,pg.gid==GROUP_IDu)&view=VIEW"
以下を置き換えます。
CUSTOMER_ID
: 組織の顧客 ID。顧客 ID を確認するには、gcloud organizations list
コマンドを実行します。GROUP_ID
: POSIX グループに割り当てるグループ ID(GID)VIEW
:FULL
またはBASIC
Python
次の例は、Python クライアント ライブラリを使用してグループ ID ごとに POSIX グループを取得する方法を示しています。
def get_posix_group_by_gid(service, customer_id, posix_group_id, page_size, view):
# Set the label to search for a POSIX group
searchQuery = ("&query=parent=='customers/{customer_id}' "
"&& 'cloudidentity.googleapis.com/groups.posix' in labels "
"&& posix_groups.exists(pg, pg.gid=={posix_group_id}u)"
"?pageSize={page_size}&view={view}".format(
customer_id=customer_id, posix_group_id=posix_group_id,
page_size=page_size, view=view))
try:
searchGroupsRequest = service.groups().search()
searchGroupsRequest.uri += searchQuery
response = searchGroupsRequest.execute()
print response
except Exception as e:
print e
メールで POSIX グループを取得する
次のサンプルは、グループのメールを使用してグループ情報を取得する方法を示しています。
gcloud
組織内のすべての POSIX グループを一覧表示するには、gcloud beta identity groups describe
コマンドを使用します。
gcloud beta identity groups describe EMAIL_ADDRESS
EMAIL_ADDRESS
を検索対象グループのメールアドレスで置き換えます。
REST
メールで POSIX グループを取得するには、次の手順に従います。
グループのメールアドレスを使用して
groups.lookup()
メソッドを呼び出します。GET "https://cloudidentity.googleapis.com/v1beta1/groups:lookup?groupKey.id=EMAIL_ADDRESS"
返されたグループのリソース名をメモします。
グループのリソース名を指定して
groups.get()
メソッドを呼び出します。GET "https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME"
Python
次の例は、Python クライアント ライブラリを使用して POSIX グループをメールで取得する方法を示しています。
def get_posix_group_by_email(email):
service = build_service()
# First we use the email to get the groups name calling lookup()
lookup_group_name_request = service.groups().lookup()
param = "&groupKey.id=" + email
lookup_group_name_request.uri += param
lookup_group_name_response = lookup_group_name_request.execute()
name = lookup_group_name_response.get("name")
# Then we can call get() by passing in the group's name
response = service.groups().get(name=name).execute()
return response
POSIX グループの一覧表示
次の例は、組織内のすべての POSIX グループを一覧表示する方法を示しています。
gcloud
組織内のすべての POSIX グループを一覧表示するには、gcloud identity groups search
コマンドを使用します。
gcloud identity groups search \ --labels=cloudidentity.googleapis.com/groups.posix \ --organization=ORGANIZATION
ORGANIZATION
を検索対象グループの組織 ID に置き換えます。
REST
すべての POSIX グループを検索するには、次のクエリ文字列で groups.search()
メソッドを呼び出します。
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels
CUSTOMER_ID
を組織の顧客 ID に置き換えます。顧客 ID を確認するには、gcloud organizations list
コマンドを実行します。
クエリを使用した GET
リクエストは次のとおりです。
GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels&view=VIEW"
以下を置き換えます。
CUSTOMER_ID
: 組織の顧客 ID。顧客 ID を確認するには、gcloud organizations list
コマンドを実行します。GROUP_ID
: POSIX グループに割り当てるグループ ID(GID)VIEW
:FULL
またはBASIC
Python
Python クライアント ライブラリを使用して POSIX グループを検索するヘルパー関数を、次の例に示します。
def search_posix_groups(service, customer_id, page_size, view):
# Set the label to search for all POSIX groups
searchQuery = ("&query=parent=='customers/{customer_id}' "
"&& 'cloudidentity.googleapis.com/groups.posix' in labels "
"?pageSize={page_size}&view={view}".format(
customer_id=customer_id, page_size=page_size, view=view))
try:
searchGroupsRequest = service.groups().search()
searchGroupsRequest.uri += searchQuery
response = searchGroupsRequest.execute()
print response
except Exception as e:
print e