Exemplo n.º 1
0
 /// <summary>
 /// Gets a <see cref="TableSasBuilder"/> instance scoped to the current table.
 /// </summary>
 /// <param name="permissions"><see cref="TableSasPermissions"/> containing the allowed permissions.</param>
 /// <param name="expiresOn">The time at which the shared access signature becomes invalid.</param>
 /// <returns>An instance of <see cref="TableSasBuilder"/>.</returns>
 public virtual TableSasBuilder GetSasBuilder(TableSasPermissions permissions, DateTimeOffset expiresOn)
 {
     return(new TableSasBuilder(_table, permissions, expiresOn)
     {
         Version = _tableOperations.version
     });
 }
Exemplo n.º 2
0
        /// <summary>
        /// Initializes an instance of a <see cref="TableSasBuilder"/>.
        /// </summary>
        /// <param name="tableName">The name of the table being made accessible with the shared access signature.</param>
        /// <param name="permissions">The permissions associated with the shared access signature.</param>
        /// <param name="expiresOn">The time at which the shared access signature becomes invalid.</param>
        public TableSasBuilder(string tableName, TableSasPermissions permissions, DateTimeOffset expiresOn)
        {
            Argument.AssertNotNullOrEmpty(tableName, nameof(tableName));

            TableName = tableName;
            ExpiresOn = expiresOn;
            SetPermissions(permissions);
        }
        public void SetPermissions(string permissionsString, TableSasPermissions permissions)
        {
            var tableSasBuilder = new TableSasBuilder("table", permissionsString, DateTimeOffset.Now);

            Assert.That(tableSasBuilder.Permissions, Is.EqualTo(permissionsString));

            tableSasBuilder.SetPermissions(permissions);

            Assert.That(tableSasBuilder.Permissions, Is.EqualTo(permissionsString));
        }
Exemplo n.º 4
0
        public void SetPermissions(string tableName, string permissionsString, TableSasPermissions permissions)
        {
            var tableSasBuilder = new TableSasBuilder(tableName, permissionsString, DateTimeOffset.Now);

            Assert.AreEqual(permissionsString.ToLowerInvariant(), tableSasBuilder.Permissions);

            tableSasBuilder.SetPermissions(permissions);

            Assert.AreEqual(permissionsString.ToLowerInvariant(), tableSasBuilder.Permissions);
            Assert.AreEqual(tableName, tableSasBuilder.TableName);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Create a permissions string to provide
        /// <see cref="TableSasBuilder.Permissions"/>.
        /// </summary>
        /// <returns>A permissions string.</returns>
        internal static string ToPermissionsString(this TableSasPermissions permissions)
        {
            var sb = new StringBuilder();

            if ((permissions & TableSasPermissions.Read) == TableSasPermissions.Read)
            {
                sb.Append(TableConstants.Sas.Permissions.Read);
            }
            if ((permissions & TableSasPermissions.Add) == TableSasPermissions.Add)
            {
                sb.Append(TableConstants.Sas.Permissions.Add);
            }
            if ((permissions & TableSasPermissions.Update) == TableSasPermissions.Update)
            {
                sb.Append(TableConstants.Sas.Permissions.Update);
            }
            if ((permissions & TableSasPermissions.Delete) == TableSasPermissions.Delete)
            {
                sb.Append(TableConstants.Sas.Permissions.Delete);
            }
            return(sb.ToString());
        }
Exemplo n.º 6
0
 /// <summary>
 /// Sets the permissions for a table SAS.
 /// </summary>
 /// <param name="permissions">
 /// <see cref="TableSasPermissions"/> containing the allowed permissions.
 /// </param>
 public void SetPermissions(TableSasPermissions permissions)
 {
     Permissions = permissions.ToPermissionsString();
 }