예제 #1
0
파일: user.py 프로젝트: bmike78/ucsm_apis
def user_role_add(handle, user_name, name, descr=None, **kwargs):
    """
    adds role to an user

    Args:
        handle (UcsHandle)
        user_name (string): username
        name (string): rolename
        descr (string): descr
        **kwargs: Any additional key-value pair of managed object(MO)'s
                  property and value, which are not part of regular args.
                  This should be used for future version compatibility.

    Returns:
        AaaUserRole: managed object

    Raises:
        UcsOperationError: if AaaUser is not present

    Example:
        user_role_add(handle, user_name="test", name="admin")
    """
    from ucsmsdk.mometa.aaa.AaaUserRole import AaaUserRole

    user = user_get(handle, user_name, "user_role_add")

    mo = AaaUserRole(parent_mo_or_dn=user, name=name, descr=descr)
    mo.set_prop_multiple(**kwargs)
    handle.add_mo(mo, modify_present=True)
    handle.commit()
    return mo
예제 #2
0
def _user_role_add(handle, user_mo, name, descr=None, **kwargs):
    """
    adds single role to an user
    """
    from ucsmsdk.mometa.aaa.AaaUserRole import AaaUserRole

    mo = AaaUserRole(parent_mo_or_dn=user_mo, name=name, descr=descr)
    mo.set_prop_multiple(**kwargs)
    handle.add_mo(mo, modify_present=True)
    return mo
예제 #3
0
def ldap_group_role_add(handle, ldap_group_name, name, descr=None, **kwargs):
    """
    add role to ldap group map

    Args:
        handle (UcsHandle)
        ldap_group_name (string): name of ldap group
        name (string):  role name
        descr (string): description
        **kwargs: Any additional key-value pair of managed object(MO)'s
                  property and value, which are not part of regular args.
                  This should be used for future version compatibility.
    Returns:
        AaaUserRole : managed object

    Raises:
        UcsOperationError: if AaaLdapGroup or AaaRole is not present

    Example:
        ldap_group_role_add(
          handle, ldap_group_name="test_ldap_grp_map", name="storage")
    """
    from ucsmsdk.mometa.aaa.AaaUserRole import AaaUserRole
    from ..admin.role import role_get

    role = role_get(handle, name=name)

    ldap_group = ldap_group_get(handle,
                                name=ldap_group_name,
                                caller="ldap_group_role_add")

    mo = AaaUserRole(parent_mo_or_dn=ldap_group, name=name, descr=descr)
    mo.set_prop_multiple(**kwargs)
    handle.add_mo(mo, modify_present=True)
    handle.commit()
    return mo