Class: SDM::ActiveDirectoryEngine
- Inherits:
-
Object
- Object
- SDM::ActiveDirectoryEngine
- Defined in:
- lib/models/porcelain.rb
Overview
ActiveDirectoryEngine is currently unstable, and its API may change, or it may be removed, without a major version bump.
Instance Attribute Summary collapse
-
#after_read_ttl ⇒ Object
The default time-to-live duration of the password after it's read.
-
#binddn ⇒ Object
Distinguished name of object to bind when performing user and group search.
-
#bindpass ⇒ Object
Password to use along with binddn when performing user search.
-
#certificate ⇒ Object
CA certificate to use when verifying LDAP server certificate, must be x509 PEM encoded.
-
#connection_timeout ⇒ Object
Timeout, in seconds, when attempting to connect to the LDAP server before trying the next URL in the configuration.
-
#do_not_validate_timestamps ⇒ Object
If set to true this will prevent password change timestamp validation in Active Directory when validating credentials.
-
#id ⇒ Object
Unique identifier of the Secret Engine.
-
#insecure_tls ⇒ Object
If true, skips LDAP server SSL certificate verification - insecure, use with caution!.
-
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days.
-
#max_backoff_duration ⇒ Object
The maximum retry duration in case of automatic failure.
-
#name ⇒ Object
Unique human-readable name of the Secret Engine.
-
#policy ⇒ Object
Policy for password creation.
-
#public_key ⇒ Object
Public key linked with a secret engine.
-
#request_timeout ⇒ Object
Timeout, in seconds, for the connection when making requests against the server before returning back an error.
-
#secret_store_id ⇒ Object
Backing secret store identifier.
-
#secret_store_root_path ⇒ Object
Backing Secret Store root path where managed secrets are going to be stored.
-
#start_tls ⇒ Object
If true, issues a StartTLS command after establishing an unencrypted connection.
-
#tags ⇒ Object
Tags is a map of key, value pairs.
-
#ttl ⇒ Object
The default password time-to-live duration.
-
#upndomain ⇒ Object
The domain (userPrincipalDomain) used to construct a UPN string for authentication.
-
#url ⇒ Object
The LDAP server to connect to.
-
#userdn ⇒ Object
Base DN under which to perform user search.
Instance Method Summary collapse
-
#initialize(after_read_ttl: nil, binddn: nil, bindpass: nil, certificate: nil, connection_timeout: nil, do_not_validate_timestamps: nil, id: nil, insecure_tls: nil, key_rotation_interval_days: nil, max_backoff_duration: nil, name: nil, policy: nil, public_key: nil, request_timeout: nil, secret_store_id: nil, secret_store_root_path: nil, start_tls: nil, tags: nil, ttl: nil, upndomain: nil, url: nil, userdn: nil) ⇒ ActiveDirectoryEngine
constructor
A new instance of ActiveDirectoryEngine.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(after_read_ttl: nil, binddn: nil, bindpass: nil, certificate: nil, connection_timeout: nil, do_not_validate_timestamps: nil, id: nil, insecure_tls: nil, key_rotation_interval_days: nil, max_backoff_duration: nil, name: nil, policy: nil, public_key: nil, request_timeout: nil, secret_store_id: nil, secret_store_root_path: nil, start_tls: nil, tags: nil, ttl: nil, upndomain: nil, url: nil, userdn: nil) ⇒ ActiveDirectoryEngine
Returns a new instance of ActiveDirectoryEngine.
1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 |
# File 'lib/models/porcelain.rb', line 1790 def initialize( after_read_ttl: nil, binddn: nil, bindpass: nil, certificate: nil, connection_timeout: nil, do_not_validate_timestamps: nil, id: nil, insecure_tls: nil, key_rotation_interval_days: nil, max_backoff_duration: nil, name: nil, policy: nil, public_key: nil, request_timeout: nil, secret_store_id: nil, secret_store_root_path: nil, start_tls: nil, tags: nil, ttl: nil, upndomain: nil, url: nil, userdn: nil ) @after_read_ttl = after_read_ttl == nil ? nil : after_read_ttl @binddn = binddn == nil ? "" : binddn @bindpass = bindpass == nil ? "" : bindpass @certificate = certificate == nil ? "" : certificate @connection_timeout = connection_timeout == nil ? 0 : connection_timeout @do_not_validate_timestamps = == nil ? false : @id = id == nil ? "" : id @insecure_tls = insecure_tls == nil ? false : insecure_tls @key_rotation_interval_days = key_rotation_interval_days == nil ? 0 : key_rotation_interval_days @max_backoff_duration = max_backoff_duration == nil ? nil : max_backoff_duration @name = name == nil ? "" : name @policy = policy == nil ? nil : policy @public_key = public_key == nil ? "" : public_key @request_timeout = request_timeout == nil ? 0 : request_timeout @secret_store_id = secret_store_id == nil ? "" : secret_store_id @secret_store_root_path = secret_store_root_path == nil ? "" : secret_store_root_path @start_tls = start_tls == nil ? false : start_tls @tags = == nil ? SDM::() : @ttl = ttl == nil ? nil : ttl @upndomain = upndomain == nil ? "" : upndomain @url = url == nil ? "" : url @userdn = userdn == nil ? "" : userdn end |
Instance Attribute Details
#after_read_ttl ⇒ Object
The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
1745 1746 1747 |
# File 'lib/models/porcelain.rb', line 1745 def after_read_ttl @after_read_ttl end |
#binddn ⇒ Object
Distinguished name of object to bind when performing user and group search. Example: cn=vault,ou=Users,dc=example,dc=com
1747 1748 1749 |
# File 'lib/models/porcelain.rb', line 1747 def binddn @binddn end |
#bindpass ⇒ Object
Password to use along with binddn when performing user search.
1749 1750 1751 |
# File 'lib/models/porcelain.rb', line 1749 def bindpass @bindpass end |
#certificate ⇒ Object
CA certificate to use when verifying LDAP server certificate, must be x509 PEM encoded.
1751 1752 1753 |
# File 'lib/models/porcelain.rb', line 1751 def certificate @certificate end |
#connection_timeout ⇒ Object
Timeout, in seconds, when attempting to connect to the LDAP server before trying the next URL in the configuration.
1753 1754 1755 |
# File 'lib/models/porcelain.rb', line 1753 def connection_timeout @connection_timeout end |
#do_not_validate_timestamps ⇒ Object
If set to true this will prevent password change timestamp validation in Active Directory when validating credentials
1755 1756 1757 |
# File 'lib/models/porcelain.rb', line 1755 def @do_not_validate_timestamps end |
#id ⇒ Object
Unique identifier of the Secret Engine.
1757 1758 1759 |
# File 'lib/models/porcelain.rb', line 1757 def id @id end |
#insecure_tls ⇒ Object
If true, skips LDAP server SSL certificate verification - insecure, use with caution!
1759 1760 1761 |
# File 'lib/models/porcelain.rb', line 1759 def insecure_tls @insecure_tls end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
1761 1762 1763 |
# File 'lib/models/porcelain.rb', line 1761 def key_rotation_interval_days @key_rotation_interval_days end |
#max_backoff_duration ⇒ Object
The maximum retry duration in case of automatic failure. On failed ttl rotation attempt it will be retried in an increasing intervals until it reaches max_backoff_duration
1764 1765 1766 |
# File 'lib/models/porcelain.rb', line 1764 def max_backoff_duration @max_backoff_duration end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
1766 1767 1768 |
# File 'lib/models/porcelain.rb', line 1766 def name @name end |
#policy ⇒ Object
Policy for password creation
1768 1769 1770 |
# File 'lib/models/porcelain.rb', line 1768 def policy @policy end |
#public_key ⇒ Object
Public key linked with a secret engine
1770 1771 1772 |
# File 'lib/models/porcelain.rb', line 1770 def public_key @public_key end |
#request_timeout ⇒ Object
Timeout, in seconds, for the connection when making requests against the server before returning back an error.
1772 1773 1774 |
# File 'lib/models/porcelain.rb', line 1772 def request_timeout @request_timeout end |
#secret_store_id ⇒ Object
Backing secret store identifier
1774 1775 1776 |
# File 'lib/models/porcelain.rb', line 1774 def secret_store_id @secret_store_id end |
#secret_store_root_path ⇒ Object
Backing Secret Store root path where managed secrets are going to be stored
1776 1777 1778 |
# File 'lib/models/porcelain.rb', line 1776 def secret_store_root_path @secret_store_root_path end |
#start_tls ⇒ Object
If true, issues a StartTLS command after establishing an unencrypted connection.
1778 1779 1780 |
# File 'lib/models/porcelain.rb', line 1778 def start_tls @start_tls end |
#tags ⇒ Object
Tags is a map of key, value pairs.
1780 1781 1782 |
# File 'lib/models/porcelain.rb', line 1780 def @tags end |
#ttl ⇒ Object
The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
1782 1783 1784 |
# File 'lib/models/porcelain.rb', line 1782 def ttl @ttl end |
#upndomain ⇒ Object
The domain (userPrincipalDomain) used to construct a UPN string for authentication.
1784 1785 1786 |
# File 'lib/models/porcelain.rb', line 1784 def upndomain @upndomain end |
#url ⇒ Object
The LDAP server to connect to.
1786 1787 1788 |
# File 'lib/models/porcelain.rb', line 1786 def url @url end |
#userdn ⇒ Object
Base DN under which to perform user search. Example: ou=Users,dc=example,dc=com
1788 1789 1790 |
# File 'lib/models/porcelain.rb', line 1788 def userdn @userdn end |
Instance Method Details
#to_json(options = {}) ⇒ Object
1838 1839 1840 1841 1842 1843 1844 |
# File 'lib/models/porcelain.rb', line 1838 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |