YaST REST Service Documentation

Copyright © 2009-10 Novell, Inc.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled "GNU Free Documentation License".

Active Directory Client

Only authenticated users are allowed to access the API. Authentication is done by sending a Basic HTTP Authorisation header.

All names aren't allowed to contain spaces, slashes or colons.

Table of Contents

Table of Contents

Formats

The system REST service supports only XML and JSON input/output formats.

Overview

This module provides access to system's configuration as Active Directory client.

It is possible to set Active Directory domain, boolean value if home directory should be created on login ('create_dirs'), and boolean value if authentication should be set up ('enabled').

If join or leave of the domain is required, additional data could be added to the request: administrator name, password and machine accoount OU.

PolicyKit Access Rights

The following PolicyKit permission is needed to perform write actions:

org.opensuse.yast.modules.yapi.activedirectory.write

For read access, it is needed

org.opensuse.yast.modules.yapi.activedirectory.read

Actions

GET /activedirectory

Get Active Directory client configuration data.

CURL Example: curl -u <user> http://localhost:4984/activedirectory.xml

Result: Example

PUT /activedirectory

Update the Active Directory client configuration. When there are no credentials, check if machine is already joined to given domain. Returns special error value ifit is not member and does not save anything. Otherwise the new values are saved.

CURL example: curl -u -X PUT -H 'Content-type: text/xml' -d @save_request.xml http://localhost:4984/activedirectory.xml

Body: Example

Result: Example

If credentials are present in the request, tries to join the domain. If this succeedes, saves new configuration, otherwise returns error message.

CURL example: curl -u -X PUT -H 'Content-type: text/xml' -d @save_join_request.xml http://localhost:4984/activedirectory.xml

Body: Example

Result: Example