Всем привет!
Когда-то я писал статью о подключении библиотек через сервер метаданных. Но бывают разные задачи, связанные с библиотеками.
Как всегда, требуется хранить логины и пароли на сервере метаданных. В данной статье я напишу, как подключиться к библиотеке с помощью DATA STEP API для работы с MetaData сервером.
В качестве примера, буду использовать подключение к Oracle с использованием AUTHDOMAIN. Красота такого подхода заключается в том, что каждый пользователь будет соединяться с СУБД под своей учётной записью, сохраненной на сервере Metadata. Да, AUTHDOMAIN работает и для других ресурсов тоже, таких как FTP-соединений.
AUTHDOMAIN позволяет подсоединиться к СУБД как через LIBNAME, так и через PROC SQL CONNECT.
Я подразумеваю, что библиотека уже зарегистрирована на сервере метаданных. В моём случае это DMORA:
Название у неё совпадает с LibRef:
Я использую клиент, который уже подключен к серверу метаданных. Если же требуется подключиться к серверу Metadata, то это можно сделать с помощью следующих настроек:
options metaserver= metaport= metauser= metapass= metaprotocol= metarepository=;
Более подробно можно посмотреть по ссылке тут.
Далее, с помощью DATA STEP получим необходимые нам параметры через API:
Подключим библиотеку с параметрами из макропеременных:
libname test ORACLE path=&PATH authdomain=&DOMAIN schema=&SCHEMA;
А также через PROC SQL CONNECT:
proc sql;
connect to oracle as myora (path=&PATH authdomain=&DOMAIN);
select * from connection to myora
(select * from dual);
disconnect from myora;
quit;
Metadata API позволяет получить практически все возможные параметры из системы, например email адреса пользователей. Подробное описание API можно почитать по ссылке тут.
Успехов в работе с SAS!