2.3. IdM API 명령 출력 구조
각 IdM API 명령에는 출력에 대한 네 개의 섹션이 있습니다. 이러한 섹션에는 명령 실행에 대한 다양한 정보가 포함되어 있습니다.
IdM API 출력 구조
결과- 이 섹션에서는 명령 결과를 제공합니다. 명령에 전달된 옵션 및 인수와 같은 명령 작업에 대한 다양한 세부 정보가 포함되어 있습니다.
값- 이 섹션에서는 명령의 인수를 나타냅니다.
메시지-
이 섹션에서는 명령을 실행한 후
ipa툴이 제공하는 다양한 정보를 보여줍니다. summary- 이 섹션에서는 작업에 대한 요약을 보여줍니다.
이 예제에서 스크립트는 add_user 명령을 실행합니다.
api.Command.user_add("test", givenname="a", sn="b")
해당 명령의 출력 구조는 다음과 같습니다.
{
"result": {
"displayname": ["a b"],
"objectclass": [
"top",
"person",
"organizationalperson",
"inetorgperson",
"inetuser",
"posixaccount",
"krbprincipalaux",
"krbticketpolicyaux",
"ipaobject",
"ipasshuser",
"ipaSshGroupOfPubKeys",
"mepOriginEntry",
"ipantuserattrs",
],
"cn": ["a b"],
"gidnumber": ["1445000004"],
"mail": ["test@ipa.test"],
"krbprincipalname": [ipapython.kerberos.Principal("test@IPA.TEST")],
"loginshell": ["/bin/sh"],
"initials": ["ab"],
"uid": ["test"],
"uidnumber": ["1445000004"],
"sn": ["b"],
"krbcanonicalname": [ipapython.kerberos.Principal("test@IPA.TEST")],
"homedirectory": ["/home/test"],
"givenname": ["a"],
"gecos": ["a b"],
"ipauniqueid": ["9f9c1df8-5073-11ed-9a56-fa163ea98bb3"],
"mepmanagedentry": [
ipapython.dn.DN("cn=test,cn=groups,cn=accounts,dc=ipa,dc=test")
],
"has_password": False,
"has_keytab": False,
"memberof_group": ["ipausers"],
"dn": ipapython.dn.DN("uid=test,cn=users,cn=accounts,dc=ipa,dc=test"),
},
"value": "test",
"messages": [
{
"type": "warning",
"name": "VersionMissing",
"message": "API Version number was not sent, forward compatibility not guaranteed. Assuming server's API version, 2.248",
"code": 13001,
"data": {"server_version": "2.248"},
}
],
"summary": 'Added user "test"',
}